/**
 * PadelPro Cards — фронтенд-стили.
 * Премиум спорт: чёрный #111111 + ярко-зелёный #39FF14.
 */

/* ===== Переменные =====
   v1.10.3: --padel-green и --padel-green-dark НЕ определяются здесь по умолчанию.
   Они наследуются от <style>, который генерируется в шаблоне товара (single-product-card.php)
   или в настройках (если задан global_accent_color). Если ни там, ни там не задан —
   используется дефолт через fallback в var(): var(--padel-green, #39FF14).
   Но т.к. изоляционный слой уже использует var(--padel-green), нужно установить дефолт.
   Решение: определить дефолт ЧЕРЕЗ --padel-accent, а --padel-green = var(--padel-accent). */
:root {
        --padel-black: #111111;
        --padel-black-2: #1a1a1a;
        --padel-black-3: #222222;
        --padel-accent: #39FF14;
        --padel-accent-rgb: 57, 255, 20;
        /* --padel-green ссылается на --padel-accent — это позволяет переопределять
           цвет в одном месте (--padel-accent), а все правила продолжат работать. */
        --padel-green: var(--padel-accent);
        --padel-green-dark: #2ACC0F;
        --padel-white: #ffffff;
        --padel-gray: #999999;
        --padel-gray-dark: #555555;
        --padel-radius: 14px;
        --padel-radius-sm: 8px;
        --padel-radius-pill: 50px;
        --padel-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
        --padel-shadow-green: 0 0 40px rgba(var(--padel-accent-rgb), 0.35);
        --padel-font: 'Inter', 'Helvetica Neue', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
        /* v1.12.50: Oswald добавлен в стек дисплейного шрифта — Bebas Neue
           не содержит кириллицы, русские заголовки откатывались на Inter/тему.
           Теперь: латиница/цифры — Bebas Neue, кириллица — Oswald (аналогичный
           сжатый дисплейный шрифт с полной поддержкой кириллицы). */
        --padel-font-display: 'Bebas Neue', 'Oswald', 'Inter', 'Helvetica Neue', sans-serif;
        --padel-font-mono: 'JetBrains Mono', 'Menlo', 'Consolas', monospace;
        --padel-transition: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ===== Глобальные сбросы внутри компонентов ===== */
.padel-single,
.padel-archive {
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        line-height: 1.55;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
}

.padel-single *,
.padel-archive *,
.padel-grid * {
        box-sizing: border-box;
}

.padel-container {
        max-width: 1400px;
        margin: 0 auto;
        padding: 0 24px;
}

.padel-container--narrow {
        max-width: 800px;
}

.padel-error {
        color: var(--padel-green);
        font-family: var(--padel-font);
        padding: 24px;
        background: var(--padel-black-2);
        border-left: 3px solid var(--padel-green);
        border-radius: var(--padel-radius-sm);
}

/* ===== Кнопки ===== */
.padel-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 16px 32px;
        font-family: var(--padel-font-display);
        font-size: 15px;
        font-weight: 800;
        letter-spacing: 1.5px;
        text-transform: uppercase;
        text-decoration: none;
        border: 2px solid transparent;
        border-radius: var(--padel-radius-sm);
        cursor: pointer;
        transition: var(--padel-transition);
        position: relative;
        overflow: hidden;
        white-space: nowrap;
}

.padel-btn--primary {
        background: var(--padel-green);
        color: var(--padel-black);
        border-color: var(--padel-green);
}

.padel-btn--primary:hover {
        background: var(--padel-green-dark);
        border-color: var(--padel-green-dark);
        transform: translateY(-2px);
        box-shadow: 0 12px 30px rgba(var(--padel-accent-rgb), 0.4);
}

.padel-btn--ghost {
        background: transparent;
        color: var(--padel-white);
        border-color: rgba(255, 255, 255, 0.2);
}

.padel-btn--ghost:hover {
        border-color: var(--padel-green);
        color: var(--padel-green);
        background: rgba(var(--padel-accent-rgb), 0.08);
        transform: translateY(-2px);
}

.padel-btn--sm {
        padding: 10px 20px;
        font-size: 12px;
}

.padel-btn--xl {
        padding: 22px 48px;
        font-size: 17px;
}

/* Glow-эффект */
[data-glow] {
        position: relative;
}

[data-glow]::before {
        content: '';
        position: absolute;
        inset: -2px;
        border-radius: inherit;
        z-index: -1;
        opacity: 0;
        filter: blur(20px);
        transition: opacity 0.3s ease;
}

[data-glow]:hover::before {
        opacity: 0.7;
}

/* ===== Бейджи ===== */
.padel-badge {
        display: inline-block;
        padding: 8px 16px;
        font-family: var(--padel-font-display);
        font-size: 13px;
        font-weight: 900;
        letter-spacing: 2px;
        text-transform: uppercase;
        border-radius: 50px;
        background: var(--padel-green);
        color: var(--padel-black);
        box-shadow: 0 0 24px rgba(var(--padel-accent-rgb), 0.5);
        animation: padel-pulse 2.5s ease-in-out infinite;
}

.padel-badge--new {
        background: var(--padel-white);
        color: var(--padel-black);
        box-shadow: 0 0 24px rgba(255, 255, 255, 0.4);
}

.padel-badge--hit {
        background: #ff4757;
        color: var(--padel-white);
        box-shadow: 0 0 24px rgba(255, 71, 87, 0.5);
}

.padel-badge--custom {
        background: var(--padel-green);
}

@keyframes padel-pulse {
        0%, 100% { transform: scale(1); }
        50% { transform: scale(1.08); }
}

/* ===== Звёзды рейтинга ===== */
.padel-stars {
        display: inline-flex;
        gap: 2px;
}

.padel-stars__star {
        color: var(--padel-gray-dark);
        font-size: 18px;
        line-height: 1;
}

.padel-stars__star.is-active {
        color: var(--padel-green);
        text-shadow: 0 0 8px rgba(var(--padel-accent-rgb), 0.6);
}

.padel-stars--sm .padel-stars__star {
        font-size: 13px;
}

/* =====================================================
   HERO — лендинг-страница товара
   ===================================================== */
.padel-hero {
        position: relative;
        min-height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        background: var(--padel-black);
        padding: 80px 24px 60px;
}

.padel-hero__video {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        z-index: 1;
        opacity: 1;
}

.padel-hero__overlay {
        position: absolute;
        inset: 0;
        z-index: 2;
        background: none;
}

/* Сетка-линии на фоне */
.padel-hero__grid-lines {
        position: absolute;
        inset: 0;
        z-index: 2;
        background-image:
                linear-gradient(rgba(var(--padel-accent-rgb), 0.04) 1px, transparent 1px),
                linear-gradient(90deg, rgba(var(--padel-accent-rgb), 0.04) 1px, transparent 1px);
        background-size: 60px 60px;
        pointer-events: none;
}

.padel-hero__content {
        position: relative;
        z-index: 3;
        max-width: 900px;
        text-align: center;
}

.padel-hero__slogan {
        font-family: var(--padel-font-display);
        font-size: clamp(2.5rem, 7vw, 6rem);
        font-weight: 900;
        line-height: 0.95;
        letter-spacing: -2px;
        text-transform: uppercase;
        margin: 24px 0 12px;
        color: var(--padel-white);
        text-shadow: 0 0 40px rgba(var(--padel-accent-rgb), 0.3);
}

.padel-hero__subtitle {
        font-size: clamp(1rem, 2vw, 1.4rem);
        color: var(--padel-gray);
        letter-spacing: 4px;
        text-transform: uppercase;
        font-weight: 600;
        margin-bottom: 36px;
}

.padel-hero__image-wrap {
        position: relative;
        display: inline-block;
        max-width: 520px;
        margin: 0 auto;
}

.padel-hero__image {
        max-width: 100%;
        height: auto;
        filter: drop-shadow(0 30px 60px rgba(var(--padel-accent-rgb), 0.25));
        transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.padel-hero__image-wrap:hover .padel-hero__image {
        transform: scale(1.05) rotate(-2deg);
}

.padel-hero__rating {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 14px;
        margin-top: 36px;
        flex-wrap: wrap;
}

.padel-hero__rating-text {
        color: var(--padel-green);
        font-weight: 700;
        font-size: 1.1rem;
}

.padel-hero__reviews {
        color: var(--padel-gray);
        font-size: 0.95rem;
}

.padel-hero__scroll {
        position: absolute;
        bottom: 30px;
        left: 50%;
        transform: translateX(-50%);
        z-index: 3;
        width: 28px;
        height: 50px;
        border: 2px solid rgba(255, 255, 255, 0.3);
        border-radius: 14px;
        display: flex;
        justify-content: center;
        padding-top: 8px;
}

.padel-hero__scroll span {
        display: block;
        width: 4px;
        height: 8px;
        background: var(--padel-green);
        border-radius: 2px;
        animation: padel-scroll 1.8s ease-in-out infinite;
}

@keyframes padel-scroll {
        0% { transform: translateY(0); opacity: 1; }
        100% { transform: translateY(18px); opacity: 0; }
}

/* =====================================================
   БЛОК ПОКУПКИ — цена + CTA + характеристики
   ===================================================== */
.padel-buy {
        background: var(--padel-black);
        padding: 100px 0;
        position: relative;
}

.padel-buy__inner {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 60px;
        align-items: center;
}

.padel-buy__stock {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        color: var(--padel-green);
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 2px;
        text-transform: uppercase;
        margin-bottom: 16px;
}

.padel-buy__stock-dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--padel-green);
        box-shadow: 0 0 12px var(--padel-green);
        animation: padel-blink 1.5s ease-in-out infinite;
}

@keyframes padel-blink {
        0%, 100% { opacity: 1; }
        50% { opacity: 0.3; }
}

.padel-buy__title {
        font-family: var(--padel-font-display);
        font-size: clamp(2rem, 4vw, 3.5rem);
        font-weight: 800;
        letter-spacing: 0;
        line-height: 1.05;
        margin: 0 0 24px;
}

.padel-buy__price-block {
        display: flex;
        align-items: baseline;
        gap: 18px;
        flex-wrap: wrap;
        margin-bottom: 36px;
}

.padel-buy__old-price {
        font-size: 1.4rem;
        color: var(--padel-gray-dark);
        text-decoration: line-through;
        font-weight: 600;
}

.padel-buy__price {
        font-family: var(--padel-font-mono);
        font-size: clamp(2.5rem, 5vw, 4rem);
        font-weight: 800;
        color: var(--padel-green);
        line-height: 1;
        text-shadow: 0 0 30px rgba(var(--padel-accent-rgb), 0.3);
        font-variant-numeric: tabular-nums;
        letter-spacing: -1px;
}

.padel-buy__discount {
        background: #ff4757;
        color: var(--padel-white);
        padding: 6px 14px;
        border-radius: 50px;
        font-size: 14px;
        font-weight: 800;
        letter-spacing: 1px;
}

.padel-buy__actions {
        display: flex;
        gap: 14px;
        flex-wrap: wrap;
        margin-bottom: 40px;
}

.padel-buy__specs {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
        padding-top: 28px;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.padel-spec {
        display: flex;
        flex-direction: column;
        gap: 4px;
}

.padel-spec__label {
        font-size: 11px;
        color: var(--padel-gray);
        letter-spacing: 2px;
        text-transform: uppercase;
}

.padel-spec__value {
        font-size: 1.3rem;
        font-weight: 800;
        color: var(--padel-white);
}

.padel-buy__image {
        position: relative;
}

.padel-buy__image img {
        width: 100%;
        height: auto;
        filter: drop-shadow(0 30px 60px rgba(var(--padel-accent-rgb), 0.2));
        transition: transform 0.6s ease;
}

.padel-buy__image:hover img {
        transform: scale(1.03);
}

/* =====================================================
   ПРЕИМУЩЕСТВА
   ===================================================== */
.padel-features {
        background: var(--padel-black-2);
        padding: 100px 0;
        position: relative;
        overflow: hidden;
}

.padel-features::before {
        content: '';
        position: absolute;
        top: -100px;
        right: -100px;
        width: 400px;
        height: 400px;
        background: radial-gradient(circle, rgba(var(--padel-accent-rgb), 0.08), transparent 70%);
        pointer-events: none;
}

.padel-section-title {
        font-family: var(--padel-font-display);
        font-size: clamp(2rem, 4vw, 3.2rem);
        font-weight: 800;
        text-align: center;
        letter-spacing: 0;
        margin: 0 0 60px;
        text-transform: uppercase;
        position: relative;
}

.padel-section-title::after {
        content: '';
        display: block;
        width: 60px;
        height: 4px;
        background: var(--padel-green);
        margin: 18px auto 0;
        border-radius: 2px;
        box-shadow: 0 0 12px var(--padel-green);
}

.padel-features__grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
        gap: 28px;
}

.padel-feature {
        background: var(--padel-black-3);
        border: 1px solid rgba(255, 255, 255, 0.05);
        border-radius: var(--padel-radius);
        padding: 32px 24px;
        transition: var(--padel-transition);
        position: relative;
        overflow: hidden;
}

.padel-feature::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 3px;
        background: var(--padel-green);
        transform: scaleX(0);
        transform-origin: left;
        transition: transform 0.4s ease;
}

.padel-feature:hover {
        transform: translateY(-6px);
        border-color: rgba(var(--padel-accent-rgb), 0.3);
        box-shadow: var(--padel-shadow);
}

.padel-feature:hover::before {
        transform: scaleX(1);
}

.padel-feature__icon {
        width: 56px;
        height: 56px;
        border-radius: 50%;
        background: rgba(var(--padel-accent-rgb), 0.1);
        color: var(--padel-green);
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 20px;
        box-shadow: 0 0 20px rgba(var(--padel-accent-rgb), 0.15);
}

.padel-feature__title {
        font-size: 1.15rem;
        font-weight: 800;
        margin: 0 0 10px;
        color: var(--padel-white);
}

.padel-feature__desc {
        font-size: 0.95rem;
        color: var(--padel-gray);
        margin: 0;
        line-height: 1.5;
}

/* =====================================================
   ГАЛЕРЕЯ
   ===================================================== */
.padel-gallery {
        background: var(--padel-black);
        padding: 100px 0;
}

.padel-gallery__grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 16px;
}

.padel-gallery__item {
        aspect-ratio: 1;
        overflow: hidden;
        border-radius: var(--padel-radius-sm);
        background: var(--padel-black-2);
        position: relative;
        cursor: pointer;
}

.padel-gallery__item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.6s ease;
}

.padel-gallery__item:hover img {
        transform: scale(1.12);
}

.padel-gallery__item::after {
        content: '';
        position: absolute;
        inset: 0;
        border: 2px solid transparent;
        border-radius: var(--padel-radius-sm);
        transition: border-color 0.3s ease;
        pointer-events: none;
}

.padel-gallery__item:hover::after {
        border-color: var(--padel-green);
        box-shadow: inset 0 0 30px rgba(var(--padel-accent-rgb), 0.2);
}

/* =====================================================
   ОПИСАНИЕ
   ===================================================== */
.padel-description {
        background: var(--padel-black-2);
        padding: 100px 0;
}

.padel-description__content {
        font-size: 1.05rem;
        color: var(--padel-gray);
        line-height: 1.8;
}

.padel-description__content h2,
.padel-description__content h3 {
        color: var(--padel-white);
        font-family: var(--padel-font-display);
        margin: 1.5em 0 0.5em;
}

.padel-description__content h2:first-child,
.padel-description__content h3:first-child {
        margin-top: 0;
}

.padel-description__content p {
        margin: 0 0 1em;
}

.padel-description__content ul,
.padel-description__content ol {
        padding-left: 24px;
        margin: 0 0 1em;
}

.padel-description__content li {
        margin-bottom: 0.5em;
}

.padel-description__content strong {
        color: var(--padel-green);
}

.padel-description__content a {
        color: var(--padel-green);
        text-decoration: none;
        border-bottom: 1px solid rgba(var(--padel-accent-rgb), 0.3);
        transition: border-color 0.3s ease;
}

.padel-description__content a:hover {
        border-color: var(--padel-green);
}

/* =====================================================
   ФИНАЛЬНЫЙ CTA
   ===================================================== */
.padel-final-cta {
        position: relative;
        padding: 140px 0;
        background: var(--padel-black);
        overflow: hidden;
}

.padel-final-cta__overlay {
        position: absolute;
        inset: 0;
        background:
                radial-gradient(ellipse at center, rgba(var(--padel-accent-rgb), 0.15), transparent 60%),
                linear-gradient(180deg, var(--padel-black-2) 0%, var(--padel-black) 100%);
}

.padel-final-cta__inner {
        position: relative;
        z-index: 2;
        text-align: center;
}

.padel-final-cta__title {
        font-family: var(--padel-font-display);
        font-size: clamp(2.5rem, 6vw, 5rem);
        font-weight: 900;
        text-transform: uppercase;
        letter-spacing: -2px;
        margin: 0 0 24px;
        color: var(--padel-white);
        text-shadow: 0 0 50px rgba(var(--padel-accent-rgb), 0.4);
}

.padel-final-cta__price {
        display: flex;
        align-items: baseline;
        gap: 16px;
        justify-content: center;
        flex-wrap: wrap;
        margin-bottom: 40px;
}

/* =====================================================
   АРХИВ — каталог
   ===================================================== */
.padel-archive__header {
        background: var(--padel-black);
        padding: 100px 0 60px;
        text-align: center;
        position: relative;
        overflow: hidden;
}

.padel-archive__header::before {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 600px;
        height: 600px;
        background: radial-gradient(circle, rgba(var(--padel-accent-rgb), 0.06), transparent 70%);
        pointer-events: none;
}

.padel-archive__title {
        font-family: var(--padel-font-display);
        font-size: clamp(2.5rem, 5vw, 4.5rem);
        font-weight: 900;
        letter-spacing: -2px;
        text-transform: uppercase;
        margin: 0 0 16px;
        position: relative;
}

.padel-archive__subtitle {
        color: var(--padel-gray);
        font-size: 1.1rem;
        letter-spacing: 3px;
        text-transform: uppercase;
        position: relative;
}

.padel-archive__grid-wrap {
        background: var(--padel-black);
        padding: 60px 0 100px;
}

/* ===== Сетка карточек ===== */
.padel-grid {
        display: grid;
        gap: 28px;
}

.padel-grid--cols-1 { grid-template-columns: 1fr; }
.padel-grid--cols-2 { grid-template-columns: repeat(2, 1fr); }
.padel-grid--cols-3 { grid-template-columns: repeat(3, 1fr); }
.padel-grid--cols-4 { grid-template-columns: repeat(4, 1fr); }

/* =====================================================
   КАРТОЧКА ТОВАРА
   ===================================================== */
.padel-card {
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius);
        overflow: hidden;
        position: relative;
        transition: var(--padel-transition);
        display: flex;
        flex-direction: column;
        height: 100%;
}

.padel-card:hover {
        transform: translateY(-8px);
        border-color: rgba(var(--padel-accent-rgb), 0.3);
        box-shadow: var(--padel-shadow);
}

.padel-card__media {
        position: relative;
        aspect-ratio: 4 / 5;
        background: linear-gradient(135deg, var(--padel-black-3), var(--padel-black));
        overflow: hidden;
}

.padel-card__video {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: 0.5;
}

.padel-card__badge {
        position: absolute;
        top: 16px;
        left: 16px;
        z-index: 3;
        font-size: 11px;
        padding: 6px 12px;
}

.padel-card__image-link {
        display: block;
        width: 100%;
        height: 100%;
        position: relative;
        z-index: 2;
}

.padel-card__image {
        width: 100%;
        height: 100%;
        object-fit: contain;
        padding: 30px;
        transition: transform 0.5s ease, filter 0.5s ease;
        filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.4));
}

.padel-card:hover .padel-card__image {
        transform: scale(1.08);
        filter: drop-shadow(0 20px 40px rgba(var(--padel-accent-rgb), 0.3));
}

.padel-card__overlay {
        position: absolute;
        inset: 0;
        z-index: 3;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(17, 17, 17, 0.85);
        opacity: 0;
        transition: opacity 0.35s ease;
}

.padel-card:hover .padel-card__overlay {
        opacity: 1;
}

.padel-card__body {
        padding: 24px;
        display: flex;
        flex-direction: column;
        flex-grow: 1;
}

.padel-card__cats {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        margin-bottom: 12px;
}

.padel-card__cat {
        font-size: 10px;
        letter-spacing: 1.5px;
        text-transform: uppercase;
        color: var(--padel-green);
        text-decoration: none;
        font-weight: 700;
        padding: 4px 8px;
        border: 1px solid rgba(var(--padel-accent-rgb), 0.3);
        border-radius: 4px;
        transition: var(--padel-transition);
}

.padel-card__cat:hover {
        background: rgba(var(--padel-accent-rgb), 0.1);
}

.padel-card__title {
        font-family: var(--padel-font-display);
        font-size: 1.2rem;
        font-weight: 800;
        margin: 0 0 10px;
        line-height: 1.25;
}

.padel-card__title a {
        color: var(--padel-white);
        text-decoration: none;
        transition: color 0.3s ease;
}

.padel-card__title a:hover {
        color: var(--padel-green);
}

.padel-card__rating {
        display: flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 14px;
}

.padel-card__reviews {
        font-size: 0.85rem;
        color: var(--padel-gray);
}

.padel-card__excerpt {
        font-size: 0.92rem;
        color: var(--padel-gray);
        margin: 0 0 14px;
        line-height: 1.55;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
}

.padel-card__features {
        list-style: none;
        padding: 0;
        margin: 0 0 18px;
        display: flex;
        flex-direction: column;
        gap: 6px;
}

.padel-card__features li {
        display: flex;
        align-items: center;
        gap: 8px;
        font-size: 0.85rem;
        color: var(--padel-gray);
}

.padel-card__features svg {
        color: var(--padel-green);
        flex-shrink: 0;
}

.padel-card__footer {
        margin-top: auto;
        padding-top: 18px;
        border-top: 1px solid rgba(255, 255, 255, 0.06);
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 14px;
        flex-wrap: wrap;
}

.padel-card__price-block {
        display: flex;
        flex-direction: column;
        gap: 2px;
}

.padel-card__old-price {
        font-size: 0.85rem;
        color: var(--padel-gray-dark);
        text-decoration: line-through;
}

.padel-card__price {
        font-family: var(--padel-font-display);
        font-size: 1.5rem;
        font-weight: 900;
        color: var(--padel-green);
        line-height: 1;
}

/* ===== Пагинация ===== */
.padel-pagination {
        margin-top: 50px;
        display: flex;
        justify-content: center;
        gap: 8px;
}

.padel-pagination .page-numbers {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 44px;
        height: 44px;
        padding: 0 14px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: var(--padel-radius-sm);
        color: var(--padel-white);
        text-decoration: none;
        font-weight: 700;
        transition: var(--padel-transition);
}

.padel-pagination .page-numbers:hover,
.padel-pagination .page-numbers.current {
        background: var(--padel-green);
        color: var(--padel-black);
        border-color: var(--padel-green);
}

/* =====================================================
   Scroll reveal — изначальное состояние
   ===================================================== */
.padel-reveal {
        opacity: 0;
        transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
        transition-delay: var(--padel-delay, 0ms);
        will-change: opacity, transform;
}

.padel-reveal.is-visible {
        opacity: 1;
        transform: none;
}

.padel-reveal[data-reveal="fade-up"] { transform: translateY(40px); }
.padel-reveal[data-reveal="fade-down"] { transform: translateY(-40px); }
.padel-reveal[data-reveal="slide-right"] { transform: translateX(-50px); }
.padel-reveal[data-reveal="slide-left"] { transform: translateX(50px); }
.padel-reveal[data-reveal="zoom-in"] { transform: scale(0.85); }

/* =====================================================
   АДАПТИВНОСТЬ
   ===================================================== */
@media (max-width: 980px) {
        .padel-buy__inner {
                grid-template-columns: 1fr;
                gap: 40px;
        }

        .padel-buy__image {
                order: -1;
                max-width: 480px;
                margin: 0 auto;
        }

        .padel-grid--cols-3,
        .padel-grid--cols-4 {
                grid-template-columns: repeat(2, 1fr);
        }
}

@media (max-width: 640px) {
        .padel-container {
                padding: 0 16px;
        }

        .padel-hero {
                padding: 60px 16px 40px;
                min-height: 90vh;
        }

        .padel-buy,
        .padel-features,
        .padel-gallery,
        .padel-description,
        .padel-final-cta,
        .padel-archive__grid-wrap {
                padding: 60px 0;
        }

        .padel-final-cta {
                padding: 80px 0;
        }

        .padel-buy__specs {
                grid-template-columns: 1fr 1fr;
        }

        .padel-buy__actions {
                flex-direction: column;
        }

        .padel-buy__actions .padel-btn {
                width: 100%;
        }

        .padel-grid--cols-2,
        .padel-grid--cols-3,
        .padel-grid--cols-4 {
                grid-template-columns: 1fr;
        }

        .padel-card__footer {
                flex-direction: column;
                align-items: stretch;
        }

        .padel-card__footer .padel-btn {
                width: 100%;
        }
}

@media (max-width: 400px) {
        .padel-buy__specs {
                grid-template-columns: 1fr;
        }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
        .padel-reveal {
                opacity: 1 !important;
                transform: none !important;
                transition: none !important;
        }

        .padel-badge,
        .padel-buy__stock-dot,
        .padel-hero__scroll span {
                animation: none !important;
        }

        [data-glow]::before {
                display: none;
        }
}

/* =====================================================
   ФРОНТЕНД-ФОРМА ДОБАВЛЕНИЯ/РЕДАКТИРОВАНИЯ ТОВАРА
   ===================================================== */
.padel-frontend-form-wrap {
        max-width: 980px;
        margin: 0 auto;
        padding: 40px 24px;
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        min-height: 60vh;
}

.padel-ff-header {
        margin-bottom: 32px;
        padding-bottom: 24px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        flex-wrap: wrap;
        gap: 12px;
}

.padel-ff-title {
        font-family: var(--padel-font-display);
        font-size: clamp(1.8rem, 4vw, 2.6rem);
        font-weight: 900;
        letter-spacing: -1px;
        text-transform: uppercase;
        margin: 0;
        color: var(--padel-white);
}

.padel-ff-subtitle {
        color: var(--padel-gray);
        font-size: 0.95rem;
        margin: 6px 0 0;
        letter-spacing: 1px;
}

.padel-ff-view {
        color: var(--padel-green);
        text-decoration: none;
        font-size: 0.85rem;
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
        transition: color 0.25s;
}

.padel-ff-view:hover {
        color: var(--padel-white);
}

/* Section / fieldset */
.padel-ff-section {
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: var(--padel-radius);
        padding: 24px;
        margin-bottom: 24px;
        background: var(--padel-black-2);
}

.padel-ff-section legend {
        font-family: var(--padel-font-display);
        font-size: 0.85rem;
        font-weight: 800;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: var(--padel-green);
        padding: 0 12px;
}

.padel-ff-hint-inline {
        color: var(--padel-gray);
        font-weight: 400;
        letter-spacing: 0;
        text-transform: none;
        margin-left: 6px;
}

/* Grid */
.padel-ff-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 18px;
        margin-top: 8px;
}

.padel-ff-grid--4 {
        grid-template-columns: repeat(4, 1fr);
}

.padel-ff-field {
        display: flex;
        flex-direction: column;
        gap: 6px;
}

.padel-ff-field--full {
        grid-column: 1 / -1;
}

.padel-ff-field label {
        font-size: 0.78rem;
        color: var(--padel-gray);
        letter-spacing: 1px;
        text-transform: uppercase;
        font-weight: 700;
}

.padel-ff-req {
        color: var(--padel-green);
}

.padel-ff-field input[type="text"],
.padel-ff-field input[type="number"],
.padel-ff-field input[type="url"],
.padel-ff-field select,
.padel-ff-field textarea {
        width: 100%;
        padding: 12px 14px;
        background: var(--padel-black-3);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: var(--padel-radius-sm);
        color: var(--padel-white);
        font-family: var(--padel-font);
        font-size: 0.95rem;
        transition: border-color 0.25s, background 0.25s;
}

.padel-ff-field input:focus,
.padel-ff-field select:focus,
.padel-ff-field textarea:focus {
        outline: none;
        border-color: var(--padel-green);
        background: var(--padel-black);
        box-shadow: 0 0 0 3px rgba(var(--padel-accent-rgb), 0.1);
}

.padel-ff-field textarea {
        resize: vertical;
        min-height: 80px;
        font-family: var(--padel-font);
}

.padel-ff-field input::placeholder,
.padel-ff-field textarea::placeholder {
        color: var(--padel-gray-dark);
}

.padel-ff-hint {
        font-size: 0.75rem;
        color: var(--padel-gray-dark);
        margin-top: 2px;
}

/* Media uploader */
.padel-ff-media {
        display: flex;
        flex-direction: column;
        gap: 10px;
}

.padel-ff-media-preview {
        width: 100%;
        min-height: 120px;
        background: var(--padel-black-3);
        border: 2px dashed rgba(255, 255, 255, 0.1);
        border-radius: var(--padel-radius-sm);
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        aspect-ratio: 4 / 3;
}

.padel-ff-media-preview img {
        max-width: 100%;
        max-height: 100%;
        object-fit: contain;
}

.padel-ff-media-preview:empty::before {
        content: '📷';
        font-size: 28px;
        opacity: 0.3;
}

.padel-ff-media-btn,
.padel-ff-media-clear {
        padding: 9px 16px;
        font-size: 0.78rem;
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
        border-radius: var(--padel-radius-sm);
        cursor: pointer;
        border: 1px solid rgba(var(--padel-accent-rgb), 0.3);
        background: transparent;
        color: var(--padel-green);
        transition: all 0.25s;
}

.padel-ff-media-btn:hover,
.padel-ff-media-clear:hover {
        background: rgba(var(--padel-accent-rgb), 0.1);
        border-color: var(--padel-green);
}

.padel-ff-media-clear {
        border-color: rgba(255, 71, 87, 0.3);
        color: #ff4757;
}

.padel-ff-media-clear:hover {
        background: rgba(255, 71, 87, 0.1);
        border-color: #ff4757;
}

/* Color picker */
.padel-ff-color {
        height: 48px;
        padding: 4px !important;
        cursor: pointer;
}

/* Features repeater */
.padel-ff-features {
        display: flex;
        flex-direction: column;
        gap: 10px;
        margin-top: 8px;
}

.padel-ff-feature-row {
        display: grid;
        grid-template-columns: 1fr 1.4fr 40px;
        gap: 10px;
        align-items: stretch;
}

.padel-ff-feature-row input {
        padding: 11px 14px;
        background: var(--padel-black-3);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: var(--padel-radius-sm);
        color: var(--padel-white);
        font-family: var(--padel-font);
        font-size: 0.92rem;
}

.padel-ff-feature-row input:focus {
        outline: none;
        border-color: var(--padel-green);
}

.padel-ff-feature-del {
        background: transparent;
        border: 1px solid rgba(255, 71, 87, 0.3);
        color: #ff4757;
        border-radius: var(--padel-radius-sm);
        cursor: pointer;
        font-size: 20px;
        font-weight: 700;
        transition: all 0.25s;
}

.padel-ff-feature-del:hover {
        background: rgba(255, 71, 87, 0.15);
        border-color: #ff4757;
}

.padel-ff-feature-add {
        margin-top: 12px;
        padding: 10px 18px;
        background: transparent;
        border: 1px dashed rgba(var(--padel-accent-rgb), 0.4);
        color: var(--padel-green);
        border-radius: var(--padel-radius-sm);
        cursor: pointer;
        font-weight: 700;
        font-size: 0.85rem;
        letter-spacing: 1px;
        transition: all 0.25s;
}

.padel-ff-feature-add:hover {
        background: rgba(var(--padel-accent-rgb), 0.08);
        border-style: solid;
}

/* Actions */
.padel-ff-actions {
        display: flex;
        gap: 12px;
        flex-wrap: wrap;
        margin-top: 32px;
        padding-top: 24px;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.padel-ff-message {
        margin-top: 20px;
        padding: 14px 18px;
        border-radius: var(--padel-radius-sm);
        font-weight: 600;
        font-size: 0.95rem;
        display: none;
}

.padel-ff-message.is-success {
        background: rgba(var(--padel-accent-rgb), 0.1);
        border: 1px solid rgba(var(--padel-accent-rgb), 0.4);
        color: var(--padel-green);
}

.padel-ff-message.is-error {
        background: rgba(255, 71, 87, 0.1);
        border: 1px solid rgba(255, 71, 87, 0.4);
        color: #ff4757;
}

.padel-ff-message.is-loading {
        background: rgba(255, 255, 255, 0.05);
        border: 1px solid rgba(255, 255, 255, 0.1);
        color: var(--padel-white);
}

/* Submit loading state */
.padel-ff-actions .padel-btn--primary.is-loading {
        opacity: 0.7;
        pointer-events: none;
}

/* Login notice */
.padel-ff-login-notice {
        max-width: 480px;
        margin: 80px auto;
        text-align: center;
        padding: 40px 24px;
        background: var(--padel-black-2);
        border: 1px solid rgba(var(--padel-accent-rgb), 0.2);
        border-radius: var(--padel-radius);
}

.padel-ff-login-notice svg {
        color: var(--padel-green);
        margin-bottom: 20px;
        opacity: 0.8;
}

.padel-ff-login-notice h3 {
        font-size: 1.5rem;
        font-weight: 800;
        margin: 0 0 12px;
        color: var(--padel-white);
}

.padel-ff-login-notice p {
        color: var(--padel-gray);
        margin: 0 0 28px;
        line-height: 1.6;
}

.padel-ff-login-notice .padel-btn {
        margin: 0 6px;
}

/* =====================================================
   ЛИЧНЫЙ КАБИНЕТ — список товаров
   ===================================================== */
.padel-dashboard {
        max-width: 980px;
        margin: 0 auto;
        padding: 40px 24px;
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        min-height: 60vh;
}

.padel-dash-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 28px;
        padding-bottom: 20px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        flex-wrap: wrap;
        gap: 12px;
}

.padel-dash-title {
        font-family: var(--padel-font-display);
        font-size: clamp(1.6rem, 3vw, 2.2rem);
        font-weight: 900;
        letter-spacing: -1px;
        text-transform: uppercase;
        margin: 0;
}

.padel-dash-list {
        display: flex;
        flex-direction: column;
        gap: 12px;
}

.padel-dash-item {
        display: grid;
        grid-template-columns: 100px 1fr auto;
        gap: 18px;
        align-items: center;
        padding: 14px;
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius-sm);
        transition: border-color 0.25s, transform 0.25s;
}

.padel-dash-item:hover {
        border-color: rgba(var(--padel-accent-rgb), 0.3);
        transform: translateX(4px);
}

.padel-dash-item__thumb {
        width: 100px;
        height: 80px;
        background: var(--padel-black-3);
        border-radius: 6px;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
}

.padel-dash-item__thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
}

.padel-dash-item__placeholder {
        font-size: 26px;
        opacity: 0.3;
}

.padel-dash-item__info {
        min-width: 0;
}

.padel-dash-item__title {
        font-size: 1.05rem;
        font-weight: 700;
        margin: 0 0 6px;
}

.padel-dash-item__title a {
        color: var(--padel-white);
        text-decoration: none;
        transition: color 0.25s;
}

.padel-dash-item__title a:hover {
        color: var(--padel-green);
}

.padel-dash-item__meta {
        display: flex;
        gap: 12px;
        align-items: center;
        flex-wrap: wrap;
}

.padel-dash-item__price {
        color: var(--padel-green);
        font-weight: 800;
        font-size: 0.95rem;
}

.padel-dash-item__status {
        font-size: 0.7rem;
        padding: 3px 8px;
        border-radius: 4px;
        background: rgba(255, 255, 255, 0.08);
        color: var(--padel-gray);
        letter-spacing: 1px;
        text-transform: uppercase;
        font-weight: 700;
}

.padel-dash-item__status--publish {
        background: rgba(var(--padel-accent-rgb), 0.15);
        color: var(--padel-green);
}

.padel-dash-item__status--draft {
        background: rgba(255, 165, 0, 0.15);
        color: #ffa500;
}

.padel-dash-item__status--pending {
        background: rgba(255, 71, 87, 0.15);
        color: #ff4757;
}

.padel-dash-item__actions {
        display: flex;
        gap: 8px;
        flex-direction: column;
}

.padel-dash-empty {
        text-align: center;
        padding: 80px 24px;
        background: var(--padel-black-2);
        border: 1px dashed rgba(255, 255, 255, 0.1);
        border-radius: var(--padel-radius);
}

.padel-dash-empty p {
        color: var(--padel-gray);
        margin: 0 0 24px;
        font-size: 1.05rem;
}

/* Адаптив */
@media (max-width: 768px) {
        .padel-ff-grid,
        .padel-ff-grid--4 {
                grid-template-columns: 1fr;
        }

        .padel-ff-feature-row {
                grid-template-columns: 1fr auto;
        }

        .padel-ff-feature-row input:nth-child(2) {
                grid-column: 1 / -1;
        }

        .padel-dash-item {
                grid-template-columns: 70px 1fr;
                grid-template-rows: auto auto;
        }

        .padel-dash-item__thumb {
                grid-row: span 2;
                width: 70px;
                height: 70px;
        }

        .padel-dash-item__actions {
                grid-column: 1 / -1;
                flex-direction: row;
        }

        .padel-dash-item__actions .padel-btn {
                flex: 1;
        }
}

@media (max-width: 480px) {
        .padel-frontend-form-wrap,
        .padel-dashboard {
                padding: 24px 14px;
        }

        .padel-ff-section {
                padding: 18px 14px;
        }

        .padel-ff-actions {
                flex-direction: column;
        }

        .padel-ff-actions .padel-btn {
                width: 100%;
        }
}

/* =====================================================
   КОРЗИНА
   ===================================================== */
.padel-cart {
        max-width: 1400px;
        margin: 0 auto;
        padding: 40px 24px;
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        min-height: 60vh;
        display: grid;
        grid-template-columns: 1fr 360px;
        gap: 40px;
        align-items: start;
}

.padel-cart__header {
        grid-column: 1 / -1;
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        padding-bottom: 20px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        margin-bottom: 8px;
}

.padel-cart__title {
        font-family: var(--padel-font-display);
        font-size: clamp(2rem, 4vw, 3rem);
        font-weight: 900;
        letter-spacing: -1px;
        text-transform: uppercase;
        margin: 0;
}

.padel-cart__count {
        color: var(--padel-green);
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
        font-size: 0.85rem;
}

.padel-cart__empty {
        grid-column: 1 / -1;
        text-align: center;
        padding: 80px 24px;
        background: var(--padel-black-2);
        border: 1px dashed rgba(255, 255, 255, 0.1);
        border-radius: var(--padel-radius);
}

.padel-cart__empty svg {
        color: var(--padel-green);
        opacity: 0.4;
        margin-bottom: 20px;
}

.padel-cart__empty h2 {
        font-size: 1.6rem;
        font-weight: 800;
        margin: 0 0 8px;
}

.padel-cart__empty p {
        color: var(--padel-gray);
        margin: 0 0 24px;
}

.padel-cart__items {
        display: flex;
        flex-direction: column;
        gap: 12px;
}

.padel-cart-item {
        display: grid;
        grid-template-columns: 100px 1fr auto auto auto;
        gap: 18px;
        align-items: center;
        padding: 16px;
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius-sm);
        transition: border-color 0.25s;
}

.padel-cart-item:hover {
        border-color: rgba(var(--padel-accent-rgb), 0.25);
}

.padel-cart-item__thumb {
        width: 100px;
        height: 100px;
        background: var(--padel-black-3);
        border-radius: 8px;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
}

.padel-cart-item__thumb img {
        max-width: 100%;
        max-height: 100%;
        object-fit: contain;
        padding: 6px;
}

.padel-cart-item__placeholder {
        font-size: 36px;
        opacity: 0.3;
}

.padel-cart-item__info {
        min-width: 0;
}

.padel-cart-item__title {
        font-size: 1.05rem;
        font-weight: 700;
        margin: 0 0 4px;
        line-height: 1.3;
}

.padel-cart-item__title a {
        color: var(--padel-white);
        text-decoration: none;
        transition: color 0.25s;
}

.padel-cart-item__title a:hover {
        color: var(--padel-green);
}

.padel-cart-item__stock {
        display: inline-block;
        font-size: 0.72rem;
        color: var(--padel-green);
        letter-spacing: 1px;
        text-transform: uppercase;
        font-weight: 700;
        margin-bottom: 4px;
}

.padel-cart-item__price-each {
        font-size: 0.85rem;
        color: var(--padel-gray);
}

.padel-cart-item__qty {
        display: flex;
        align-items: center;
        background: var(--padel-black-3);
        border-radius: var(--padel-radius-sm);
        overflow: hidden;
}

.padel-qty-btn {
        width: 36px;
        height: 36px;
        background: transparent;
        border: 0;
        color: var(--padel-white);
        font-size: 18px;
        cursor: pointer;
        transition: background 0.2s, color 0.2s;
}

.padel-qty-btn:hover {
        background: rgba(var(--padel-accent-rgb), 0.15);
        color: var(--padel-green);
}

.padel-qty-input {
        width: 50px;
        height: 36px;
        background: transparent;
        border: 0;
        border-left: 1px solid rgba(255, 255, 255, 0.08);
        border-right: 1px solid rgba(255, 255, 255, 0.08);
        color: var(--padel-white);
        text-align: center;
        font-family: var(--padel-font);
        font-weight: 700;
        -moz-appearance: textfield;
}

.padel-qty-input::-webkit-outer-spin-button,
.padel-qty-input::-webkit-inner-spin-button {
        -webkit-appearance: none;
        margin: 0;
}

.padel-cart-item__subtotal {
        font-family: var(--padel-font-display);
        font-size: 1.15rem;
        font-weight: 800;
        color: var(--padel-green);
        white-space: nowrap;
        min-width: 100px;
        text-align: right;
}

.padel-cart-item__remove {
        width: 36px;
        height: 36px;
        background: transparent;
        border: 1px solid rgba(255, 71, 87, 0.3);
        border-radius: 50%;
        color: #ff4757;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.25s;
}

.padel-cart-item__remove:hover {
        background: rgba(255, 71, 87, 0.15);
        border-color: #ff4757;
        transform: rotate(90deg);
}

.padel-cart__summary {
        background: var(--padel-black-2);
        border: 1px solid rgba(var(--padel-accent-rgb), 0.2);
        border-radius: var(--padel-radius);
        padding: 28px;
        position: sticky;
        top: 24px;
}

.padel-cart__summary-title {
        font-family: var(--padel-font-display);
        font-size: 1rem;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: var(--padel-green);
        margin: 0 0 18px;
        font-weight: 800;
}

.padel-cart__summary-row {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        padding: 10px 0;
        font-size: 0.95rem;
        color: var(--padel-gray);
}

.padel-cart__summary-row--total {
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        margin-top: 10px;
        padding-top: 18px;
        font-size: 1.1rem;
        color: var(--padel-white);
        font-weight: 700;
}

.padel-cart__total {
        font-family: var(--padel-font-display);
        font-size: 1.8rem;
        font-weight: 900;
        color: var(--padel-green);
}

.padel-cart__summary .padel-btn {
        width: 100%;
        margin-top: 12px;
}

/* =====================================================
   ОФОРМЛЕНИЕ ЗАКАЗА
   ===================================================== */
.padel-checkout {
        max-width: 920px;
        margin: 0 auto;
        padding: 40px 24px;
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        min-height: 60vh;
}

.padel-checkout__header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-bottom: 20px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        margin-bottom: 32px;
        flex-wrap: wrap;
        gap: 12px;
}

.padel-checkout__title {
        font-family: var(--padel-font-display);
        font-size: clamp(1.8rem, 4vw, 2.6rem);
        font-weight: 900;
        letter-spacing: -1px;
        text-transform: uppercase;
        margin: 0;
}

.padel-checkout__back {
        color: var(--padel-gray);
        text-decoration: none;
        font-size: 0.85rem;
        letter-spacing: 1px;
        text-transform: uppercase;
        font-weight: 700;
        transition: color 0.25s;
}

.padel-checkout__back:hover {
        color: var(--padel-green);
}

.padel-checkout__section {
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius);
        padding: 24px;
        margin-bottom: 20px;
}

.padel-checkout__section-title {
        font-family: var(--padel-font-display);
        font-size: 0.85rem;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: var(--padel-green);
        margin: 0 0 18px;
        font-weight: 800;
}

.padel-checkout__section--summary {
        background: linear-gradient(135deg, var(--padel-black-3), var(--padel-black-2));
        border-color: rgba(var(--padel-accent-rgb), 0.2);
}

.padel-ff-grid--2 {
        grid-template-columns: repeat(2, 1fr);
}

.padel-radio-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
        gap: 12px;
}

.padel-radio-card {
        cursor: pointer;
        display: block;
}

.padel-radio-card input[type="radio"] {
        position: absolute;
        opacity: 0;
        pointer-events: none;
}

.padel-radio-card__inner {
        display: flex;
        flex-direction: column;
        gap: 4px;
        padding: 16px;
        background: var(--padel-black-3);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: var(--padel-radius-sm);
        transition: all 0.25s;
        height: 100%;
}

.padel-radio-card input:checked + .padel-radio-card__inner {
        background: rgba(var(--padel-accent-rgb), 0.08);
        border-color: var(--padel-green);
        box-shadow: 0 0 0 1px var(--padel-green);
}

.padel-radio-card:hover .padel-radio-card__inner {
        border-color: rgba(var(--padel-accent-rgb), 0.4);
}

.padel-radio-card__icon {
        font-size: 22px;
        line-height: 1;
        margin-bottom: 4px;
}

.padel-radio-card__label {
        font-size: 0.92rem;
        font-weight: 700;
        color: var(--padel-white);
}

.padel-radio-card__desc {
        font-size: 0.78rem;
        color: var(--padel-gray);
}

.padel-checkout__order-list {
        display: flex;
        flex-direction: column;
        gap: 8px;
}

.padel-checkout-order-item {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        padding: 10px 0;
        border-bottom: 1px dashed rgba(255, 255, 255, 0.06);
        font-size: 0.95rem;
}

.padel-checkout-order-item__title {
        color: var(--padel-gray);
}

.padel-checkout-order-item__sum {
        color: var(--padel-white);
        font-weight: 700;
}

.padel-checkout__order-total {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        padding: 18px 0 0;
        margin-top: 8px;
        border-top: 2px solid var(--padel-green);
        font-family: var(--padel-font-display);
        font-size: 1.3rem;
        font-weight: 900;
        color: var(--padel-green);
}

.padel-checkout__actions {
        margin-top: 32px;
        text-align: center;
}

.padel-checkout__actions .padel-btn {
        width: 100%;
        max-width: 380px;
}

.padel-checkout__privacy {
        color: var(--padel-gray-dark);
        font-size: 0.78rem;
        margin: 14px 0 0;
        line-height: 1.5;
}

/* =====================================================
   ПЛАВАЮЩАЯ КНОПКА КОРЗИНЫ
   ===================================================== */
.padel-float-cart {
        position: fixed;
        right: 24px;
        bottom: 24px;
        width: 60px;
        height: 60px;
        border-radius: 50%;
        background: var(--padel-green);
        color: var(--padel-black);
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 8px 24px rgba(var(--padel-accent-rgb), 0.4), 0 0 0 0 rgba(var(--padel-accent-rgb), 0.5);
        z-index: 9999;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        text-decoration: none;
        opacity: 0;
        transform: scale(0.8);
        pointer-events: none;
}

.padel-float-cart.is-active {
        opacity: 1;
        transform: scale(1);
        pointer-events: auto;
}

.padel-float-cart:hover {
        transform: scale(1.1) rotate(-5deg);
        box-shadow: 0 12px 32px rgba(var(--padel-accent-rgb), 0.55);
}

.padel-float-cart__badge {
        position: absolute;
        top: -4px;
        right: -4px;
        min-width: 22px;
        height: 22px;
        padding: 0 6px;
        background: #ff4757;
        color: #fff;
        border-radius: 11px;
        font-size: 11px;
        font-weight: 800;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 2px solid var(--padel-black);
}

.padel-float-cart__badge:empty {
        display: none;
}

.padel-float-cart.is-pulse {
        animation: padel-cart-pulse 0.6s ease-out;
}

@keyframes padel-cart-pulse {
        0% { box-shadow: 0 8px 24px rgba(var(--padel-accent-rgb), 0.4), 0 0 0 0 rgba(var(--padel-accent-rgb), 0.6); }
        100% { box-shadow: 0 8px 24px rgba(var(--padel-accent-rgb), 0.4), 0 0 0 24px rgba(var(--padel-accent-rgb), 0); }
}

/* =====================================================
   УВЕДОМЛЕНИЕ "ДОБАВЛЕНО В КОРЗИНУ"
   ===================================================== */
.padel-toast {
        position: fixed;
        bottom: 100px;
        right: 24px;
        background: var(--padel-black-2);
        border: 1px solid var(--padel-green);
        color: var(--padel-white);
        padding: 16px 20px;
        border-radius: var(--padel-radius-sm);
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4), 0 0 24px rgba(var(--padel-accent-rgb), 0.25);
        z-index: 10000;
        max-width: 320px;
        display: flex;
        align-items: flex-start;
        gap: 14px;
        transform: translateX(120%);
        transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.padel-toast.is-visible {
        transform: translateX(0);
}

.padel-toast__icon {
        width: 36px;
        height: 36px;
        flex-shrink: 0;
        background: rgba(var(--padel-accent-rgb), 0.15);
        border-radius: 50%;
        color: var(--padel-green);
        display: flex;
        align-items: center;
        justify-content: center;
}

.padel-toast__text {
        font-size: 0.9rem;
        line-height: 1.4;
}

.padel-toast__text strong {
        color: var(--padel-green);
        display: block;
        margin-bottom: 4px;
}

.padel-toast__actions {
        margin-top: 8px;
        display: flex;
        gap: 14px;
        flex-wrap: wrap;
}

.padel-toast__actions a {
        color: var(--padel-green);
        text-decoration: none;
        font-size: 0.78rem;
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
        border-bottom: 1px solid transparent;
        transition: border-color 0.25s;
}

.padel-toast__actions a:hover {
        border-color: var(--padel-green);
}

.padel-add-to-cart.is-loading {
        opacity: 0.6;
        pointer-events: none;
}

.padel-add-to-cart.is-added {
        background: var(--padel-green-dark) !important;
}

.padel-add-to-cart.is-added::after {
        content: ' ✓';
}

/* Адаптив корзины */
@media (max-width: 900px) {
        .padel-cart {
                grid-template-columns: 1fr;
        }

        .padel-cart__summary {
                position: static;
                order: -1;
        }

        .padel-cart-item {
                grid-template-columns: 80px 1fr;
                grid-template-rows: auto auto auto;
                gap: 12px;
        }

        .padel-cart-item__thumb {
                grid-row: span 3;
                width: 80px;
                height: 80px;
        }

        .padel-cart-item__qty,
        .padel-cart-item__subtotal,
        .padel-cart-item__remove {
                grid-column: 2;
        }

        .padel-cart-item__subtotal {
                text-align: left;
                min-width: 0;
        }

        .padel-cart-item__remove {
                justify-self: start;
        }
}

@media (max-width: 600px) {
        .padel-cart,
        .padel-checkout {
                padding: 24px 14px;
        }

        .padel-ff-grid--2 {
                grid-template-columns: 1fr;
        }

        .padel-checkout__actions .padel-btn {
                width: 100%;
        }

        .padel-float-cart {
                right: 16px;
                bottom: 16px;
                width: 52px;
                height: 52px;
        }

        .padel-toast {
                right: 14px;
                left: 14px;
                max-width: none;
                bottom: 80px;
        }
}

/* =====================================================
   СТРАНИЦА «СПАСИБО ЗА ЗАКАЗ»
   ===================================================== */
.padel-thankyou {
        max-width: 1080px;
        margin: 0 auto;
        padding: 50px 24px;
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        min-height: 60vh;
}

.padel-thankyou__hero {
        text-align: center;
        margin-bottom: 40px;
}

.padel-thankyou__check {
        display: block;
        margin: 0 auto 24px;
        animation: padel-check-in 0.6s ease-out;
}

@keyframes padel-check-in {
        0% { transform: scale(0); opacity: 0; }
        60% { transform: scale(1.15); opacity: 1; }
        100% { transform: scale(1); }
}

.padel-thankyou__title {
        font-family: var(--padel-font-display);
        font-size: clamp(2rem, 5vw, 3.2rem);
        font-weight: 900;
        letter-spacing: -1px;
        text-transform: uppercase;
        margin: 0 0 12px;
        color: var(--padel-white);
}

.padel-thankyou__subtitle {
        color: var(--padel-gray);
        font-size: 1.05rem;
        margin: 0 0 24px;
}

.padel-thankyou__order-num {
        text-align: center;
        background: var(--padel-black-2);
        border: 1px solid rgba(var(--padel-accent-rgb), 0.3);
        border-radius: var(--padel-radius);
        padding: 16px 24px;
        margin-bottom: 32px;
        font-size: 1.1rem;
        letter-spacing: 1px;
}

.padel-thankyou__order-num strong {
        color: var(--padel-green);
        font-family: var(--padel-font-display);
        font-size: 1.4rem;
        margin-left: 8px;
}

.padel-thankyou__grid {
        display: grid;
        grid-template-columns: 1fr 360px;
        gap: 32px;
        margin-bottom: 32px;
        align-items: start;
}

.padel-thankyou__section {
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius);
        padding: 28px;
}

.padel-thankyou__section-title {
        font-family: var(--padel-font-display);
        font-size: 0.85rem;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: var(--padel-green);
        margin: 0 0 20px;
        font-weight: 800;
}

.padel-thankyou-item {
        display: grid;
        grid-template-columns: 60px 1fr auto;
        gap: 14px;
        align-items: center;
        padding: 12px 0;
        border-bottom: 1px dashed rgba(255, 255, 255, 0.06);
}

.padel-thankyou-item__thumb {
        width: 60px;
        height: 60px;
        background: var(--padel-black-3);
        border-radius: 6px;
        overflow: hidden;
}

.padel-thankyou-item__thumb img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        padding: 4px;
}

.padel-thankyou-item__info h3 {
        font-size: 0.95rem;
        font-weight: 700;
        margin: 0 0 4px;
}

.padel-thankyou-item__qty {
        font-size: 0.85rem;
        color: var(--padel-gray);
}

.padel-thankyou-item__sum {
        font-family: var(--padel-font-display);
        font-weight: 800;
        color: var(--padel-green);
}

.padel-thankyou__total {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        padding-top: 16px;
        margin-top: 8px;
        border-top: 2px solid var(--padel-green);
        font-family: var(--padel-font-display);
        font-size: 1.3rem;
        font-weight: 900;
}

.padel-thankyou__total-sum {
        color: var(--padel-green);
}

.padel-thankyou__row {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        padding: 10px 0;
        border-bottom: 1px dashed rgba(255, 255, 255, 0.06);
        font-size: 0.92rem;
}

.padel-thankyou__row:last-child {
        border-bottom: 0;
}

.padel-thankyou__row-label {
        color: var(--padel-gray);
}

.padel-thankyou__status {
        display: inline-block;
        padding: 4px 10px;
        border-radius: 4px;
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
        background: rgba(var(--padel-accent-rgb), 0.15);
        color: var(--padel-green);
}

.padel-thankyou__status--new { background: rgba(var(--padel-accent-rgb), 0.15); color: var(--padel-green); }
.padel-thankyou__status--processing { background: rgba(255, 165, 0, 0.15); color: #ffa500; }
.padel-thankyou__status--completed { background: rgba(var(--padel-accent-rgb), 0.25); color: var(--padel-green); }
.padel-thankyou__status--cancelled { background: rgba(255, 71, 87, 0.15); color: #ff4757; }

.padel-thankyou__paid {
        color: var(--padel-green);
        font-weight: 700;
}

.padel-thankyou__actions {
        display: flex;
        gap: 12px;
        justify-content: center;
        flex-wrap: wrap;
}

.padel-thankyou--empty {
        text-align: center;
        padding-top: 100px;
}

/* =====================================================
   ЛИЧНЫЙ КАБИНЕТ ПОКУПАТЕЛЯ
   ===================================================== */
.padel-account {
        max-width: 1080px;
        margin: 0 auto;
        padding: 50px 24px;
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        min-height: 60vh;
}

.padel-account__header {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        padding-bottom: 24px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        margin-bottom: 28px;
        flex-wrap: wrap;
        gap: 12px;
}

.padel-account__title {
        font-family: var(--padel-font-display);
        font-size: clamp(1.8rem, 4vw, 2.6rem);
        font-weight: 900;
        letter-spacing: -1px;
        text-transform: uppercase;
        margin: 0 0 6px;
}

.padel-account__hello {
        color: var(--padel-gray);
        margin: 0;
        font-size: 0.95rem;
}

.padel-account__stats {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
        margin-bottom: 40px;
}

.padel-account__stat {
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius);
        padding: 22px;
        text-align: center;
}

.padel-account__stat--accent {
        background: linear-gradient(135deg, rgba(var(--padel-accent-rgb), 0.1), rgba(var(--padel-accent-rgb), 0.02));
        border-color: rgba(var(--padel-accent-rgb), 0.3);
}

.padel-account__stat-value {
        display: block;
        font-family: var(--padel-font-display);
        font-size: 1.8rem;
        font-weight: 900;
        color: var(--padel-white);
        line-height: 1;
        margin-bottom: 6px;
}

.padel-account__stat--accent .padel-account__stat-value {
        color: var(--padel-green);
}

.padel-account__stat-label {
        font-size: 0.78rem;
        color: var(--padel-gray);
        letter-spacing: 1px;
        text-transform: uppercase;
}

.padel-account__section-title {
        font-family: var(--padel-font-display);
        font-size: 1.2rem;
        font-weight: 800;
        letter-spacing: 1px;
        text-transform: uppercase;
        margin: 0 0 20px;
}

.padel-account__empty {
        text-align: center;
        padding: 60px 24px;
        background: var(--padel-black-2);
        border: 1px dashed rgba(255, 255, 255, 0.1);
        border-radius: var(--padel-radius);
}

.padel-account__empty p {
        color: var(--padel-gray);
        margin: 0 0 24px;
        font-size: 1.05rem;
}

.padel-account__orders {
        display: flex;
        flex-direction: column;
        gap: 12px;
}

.padel-account-order {
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius-sm);
        overflow: hidden;
        transition: border-color 0.25s;
}

.padel-account-order:hover {
        border-color: rgba(var(--padel-accent-rgb), 0.25);
}

.padel-account-order__head {
        display: grid;
        grid-template-columns: 1fr 1fr auto;
        gap: 20px;
        align-items: center;
        padding: 18px 22px;
        cursor: pointer;
        list-style: none;
}

.padel-account-order__head::-webkit-details-marker {
        display: none;
}

.padel-account-order__num {
        display: flex;
        flex-direction: column;
        gap: 2px;
}

.padel-account-order__id {
        font-family: var(--padel-font-display);
        font-weight: 900;
        color: var(--padel-green);
        font-size: 1.1rem;
}

.padel-account-order__date {
        color: var(--padel-gray);
        font-size: 0.82rem;
}

.padel-account-order__info {
        display: flex;
        gap: 16px;
        align-items: baseline;
        font-size: 0.92rem;
}

.padel-account-order__count {
        color: var(--padel-gray);
}

.padel-account-order__sum {
        font-family: var(--padel-font-display);
        font-weight: 800;
        color: var(--padel-white);
        font-size: 1.05rem;
}

.padel-account-order__badges {
        display: flex;
        gap: 8px;
        align-items: center;
}

.padel-account-order__paid {
        font-size: 0.7rem;
        padding: 3px 8px;
        border-radius: 4px;
        background: rgba(var(--padel-accent-rgb), 0.15);
        color: var(--padel-green);
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
}

.padel-account-order__status {
        font-size: 0.7rem;
        padding: 3px 8px;
        border-radius: 4px;
        background: rgba(255, 255, 255, 0.08);
        color: var(--padel-gray);
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
}

.padel-account-order__status--new { background: rgba(var(--padel-accent-rgb), 0.15); color: var(--padel-green); }
.padel-account-order__status--processing { background: rgba(255, 165, 0, 0.15); color: #ffa500; }
.padel-account-order__status--completed { background: rgba(var(--padel-accent-rgb), 0.25); color: var(--padel-green); }
.padel-account-order__status--cancelled { background: rgba(255, 71, 87, 0.15); color: #ff4757; }

.padel-account-order__body {
        padding: 20px 22px 24px;
        border-top: 1px solid rgba(255, 255, 255, 0.06);
        background: var(--padel-black-3);
}

.padel-account-order__table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 16px;
}

.padel-account-order__table td {
        padding: 10px 0;
        border-bottom: 1px dashed rgba(255, 255, 255, 0.06);
        font-size: 0.92rem;
        vertical-align: middle;
}

.padel-account-order__table-thumb {
        width: 50px;
}

.padel-account-order__table-thumb img {
        width: 50px;
        height: 50px;
        object-fit: contain;
        border-radius: 4px;
        background: var(--padel-black-2);
}

.padel-account-order__table-title a {
        color: var(--padel-white);
        text-decoration: none;
        font-weight: 600;
        transition: color 0.25s;
}

.padel-account-order__table-title a:hover {
        color: var(--padel-green);
}

.padel-account-order__table-qty {
        color: var(--padel-gray);
        text-align: right;
}

.padel-account-order__table-sum {
        font-family: var(--padel-font-display);
        font-weight: 700;
        color: var(--padel-green);
        text-align: right;
}

.padel-account-order__actions {
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
}

/* =====================================================
   ПОЛЕ ПРОМОКОДА В КОРЗИНЕ
   ===================================================== */
.padel-cart__summary-row--discount {
        color: var(--padel-green);
        font-weight: 700;
}

.padel-cart__promo-field {
        display: flex;
        gap: 8px;
        margin: 14px 0;
        padding-top: 14px;
        border-top: 1px dashed rgba(255, 255, 255, 0.06);
}

.padel-cart__promo-field input {
        flex: 1;
        min-width: 0;
        padding: 10px 12px;
        background: var(--padel-black-3);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: var(--padel-radius-sm);
        color: var(--padel-white);
        font-family: var(--padel-font);
        font-size: 0.85rem;
        text-transform: uppercase;
        letter-spacing: 1px;
}

.padel-cart__promo-field input:focus {
        outline: none;
        border-color: var(--padel-green);
}

.padel-cart__promo-msg {
        font-size: 0.8rem;
        margin-top: 6px;
        min-height: 16px;
}

.padel-cart__promo-msg.is-success {
        color: var(--padel-green);
}

.padel-cart__promo-msg.is-error {
        color: #ff4757;
}

.padel-checkout-order-item--discount {
        color: var(--padel-green);
}

.padel-checkout-order-item--discount .padel-checkout-order-item__sum {
        color: var(--padel-green);
}

/* =====================================================
   АДАПТИВ
   ===================================================== */
@media (max-width: 900px) {
        .padel-thankyou__grid,
        .padel-account__stats {
                grid-template-columns: 1fr;
        }

        .padel-account-order__head {
                grid-template-columns: 1fr;
                gap: 8px;
        }

        .padel-account-order__info {
                justify-content: space-between;
        }
}

@media (max-width: 600px) {
        .padel-thankyou,
        .padel-account {
                padding: 24px 14px;
        }

        .padel-thankyou__actions,
        .padel-account-order__actions {
                flex-direction: column;
        }

        .padel-thankyou__actions .padel-btn,
        .padel-account-order__actions .padel-btn {
                width: 100%;
        }

        .padel-account-order__table-thumb {
                display: none;
        }
}

/* =====================================================
   КНОПКИ «СРАВНИТЬ» И «ИЗБРАННОЕ» НА КАРТОЧКЕ
   ===================================================== */
.padel-card__quick-actions {
        position: absolute;
        top: 14px;
        right: 14px;
        z-index: 5;
        display: flex;
        flex-direction: column;
        gap: 8px;
        opacity: 0;
        transform: translateX(10px);
        transition: opacity 0.25s, transform 0.25s;
}

.padel-card:hover .padel-card__quick-actions {
        opacity: 1;
        transform: translateX(0);
}

.padel-card__quick-btn {
        width: 36px;
        height: 36px;
        border-radius: 50%;
        background: rgba(17, 17, 17, 0.85);
        border: 1px solid rgba(255, 255, 255, 0.15);
        color: var(--padel-white);
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.25s;
        backdrop-filter: blur(6px);
}

.padel-card__quick-btn:hover {
        background: var(--padel-green);
        border-color: var(--padel-green);
        color: var(--padel-black);
        transform: scale(1.1);
}

.padel-card__quick-btn.is-active {
        background: var(--padel-green);
        border-color: var(--padel-green);
        color: var(--padel-black);
}

.padel-card__quick-btn.is-active svg {
        fill: var(--padel-black);
}

/* =====================================================
   ПЛАВАЮЩИЕ КНОПКИ СРАВНЕНИЯ И ИЗБРАННОГО
   ===================================================== */
.padel-float-compare,
.padel-float-wishlist {
        position: fixed;
        right: 24px;
        bottom: 92px;
        width: 52px;
        height: 52px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 9998;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        text-decoration: none;
        opacity: 0;
        transform: scale(0.8);
        pointer-events: none;
}

.padel-float-wishlist {
        bottom: 156px;
}

.padel-float-compare.is-active,
.padel-float-wishlist.is-active {
        opacity: 1;
        transform: scale(1);
        pointer-events: auto;
}

.padel-float-compare {
        background: var(--padel-black-2);
        border: 1px solid var(--padel-green);
        color: var(--padel-green);
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
}

.padel-float-compare:hover {
        background: var(--padel-green);
        color: var(--padel-black);
        transform: scale(1.1);
}

.padel-float-wishlist {
        background: var(--padel-black-2);
        border: 1px solid #ff4757;
        color: #ff4757;
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
}

.padel-float-wishlist:hover {
        background: #ff4757;
        color: #fff;
        transform: scale(1.1);
}

.padel-float-compare__badge,
.padel-float-wishlist__badge {
        position: absolute;
        top: -4px;
        right: -4px;
        min-width: 20px;
        height: 20px;
        padding: 0 5px;
        border-radius: 10px;
        font-size: 10px;
        font-weight: 800;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 2px solid var(--padel-black);
}

.padel-float-compare__badge { background: var(--padel-green); color: var(--padel-black); }
.padel-float-wishlist__badge { background: #ff4757; color: #fff; }

.padel-float-compare__badge:empty,
.padel-float-wishlist__badge:empty { display: none; }

/* =====================================================
   ТАБЛИЦА СРАВНЕНИЯ
   ===================================================== */
.padel-compare {
        max-width: 1400px;
        margin: 0 auto;
        padding: 50px 24px;
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        min-height: 60vh;
}

.padel-compare__header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        margin-bottom: 28px;
        padding-bottom: 20px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.padel-compare__title {
        font-family: var(--padel-font-display);
        font-size: clamp(1.8rem, 4vw, 2.6rem);
        font-weight: 900;
        letter-spacing: -1px;
        text-transform: uppercase;
        margin: 0;
}

.padel-compare__table-wrap {
        overflow-x: auto;
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius);
}

.padel-compare__table {
        width: 100%;
        border-collapse: collapse;
        min-width: 600px;
}

.padel-compare__table th,
.padel-compare__table td {
        padding: 16px;
        text-align: center;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
        vertical-align: middle;
        font-size: 0.92rem;
}

.padel-compare__first-col {
        text-align: left !important;
        color: var(--padel-gray);
        font-weight: 600;
        background: var(--padel-black-3);
        position: sticky;
        left: 0;
        z-index: 2;
        min-width: 160px;
}

.padel-compare__col {
        position: relative;
        min-width: 180px;
        max-width: 220px;
}

.padel-compare__remove {
        position: absolute;
        top: 8px;
        right: 8px;
        width: 24px;
        height: 24px;
        border-radius: 50%;
        background: rgba(255, 71, 87, 0.2);
        border: 1px solid rgba(255, 71, 87, 0.3);
        color: #ff4757;
        cursor: pointer;
        font-size: 16px;
        line-height: 1;
        transition: all 0.25s;
}

.padel-compare__remove:hover {
        background: #ff4757;
        color: #fff;
}

.padel-compare__thumb {
        display: block;
        margin: 0 auto 12px;
        width: 100px;
        height: 100px;
        background: var(--padel-black-3);
        border-radius: 8px;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
}

.padel-compare__thumb img {
        max-width: 90%;
        max-height: 90%;
        object-fit: contain;
}

.padel-compare__name {
        font-size: 0.92rem;
        font-weight: 700;
        margin: 0;
        line-height: 1.3;
}

.padel-compare__name a {
        color: var(--padel-white);
        text-decoration: none;
        transition: color 0.25s;
}

.padel-compare__name a:hover { color: var(--padel-green); }

.padel-compare__row--highlight {
        background: rgba(var(--padel-accent-rgb), 0.04);
}

.padel-compare__price {
        color: var(--padel-green);
        font-size: 1.05rem;
}

.padel-compare__old {
        color: var(--padel-gray-dark);
        text-decoration: line-through;
        font-size: 0.85rem;
        margin-right: 6px;
}

.padel-compare__stock {
        color: var(--padel-green);
        font-size: 0.85rem;
        font-weight: 600;
}

.padel-compare__excerpt {
        font-size: 0.82rem;
        color: var(--padel-gray);
        line-height: 1.4;
        display: block;
        max-width: 200px;
}

.padel-compare__actions {
        margin-top: 28px;
        text-align: center;
}

/* =====================================================
   ИЗБРАННОЕ — СТРАНИЦА
   ===================================================== */
.padel-wishlist-page {
        max-width: 1400px;
        margin: 0 auto;
        padding: 50px 24px;
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        min-height: 60vh;
}

.padel-wishlist__header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        margin-bottom: 28px;
        padding-bottom: 20px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.padel-wishlist__title {
        font-family: var(--padel-font-display);
        font-size: clamp(1.8rem, 4vw, 2.6rem);
        font-weight: 900;
        letter-spacing: -1px;
        text-transform: uppercase;
        margin: 0;
}

.padel-wishlist__count {
        color: #ff4757;
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
        font-size: 0.85rem;
}

/* =====================================================
   КАТАЛОГ С ФИЛЬТРАМИ
   ===================================================== */
.padel-catalog {
        max-width: 1400px;
        margin: 0 auto;
        padding: 30px 24px;
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        min-height: 60vh;
}

.padel-catalog__layout {
        display: grid;
        grid-template-columns: 260px 1fr;
        gap: 32px;
        align-items: start;
}

.padel-catalog__filters {
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius);
        padding: 22px;
        position: sticky;
        top: 20px;
}

.padel-catalog__filters-title {
        font-family: var(--padel-font-display);
        font-size: 0.9rem;
        font-weight: 800;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: var(--padel-green);
        margin: 0 0 18px;
}

.padel-catalog__mobile-toggle {
        display: none;
        width: 100%;
        padding: 12px;
        background: var(--padel-black-3);
        border: 1px solid rgba(var(--padel-accent-rgb), 0.3);
        border-radius: var(--padel-radius-sm);
        color: var(--padel-green);
        font-weight: 700;
        cursor: pointer;
        margin-bottom: 12px;
}

.padel-filter-block {
        margin-bottom: 20px;
        padding-bottom: 16px;
        border-bottom: 1px dashed rgba(255, 255, 255, 0.06);
}

.padel-filter-block:last-of-type {
        border-bottom: 0;
}

.padel-filter-block__title {
        font-size: 0.78rem;
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
        color: var(--padel-white);
        margin: 0 0 12px;
}

.padel-filter-checkbox {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 5px 0;
        cursor: pointer;
        font-size: 0.88rem;
        color: var(--padel-gray);
        transition: color 0.2s;
}

.padel-filter-checkbox:hover { color: var(--padel-white); }

.padel-filter-checkbox input[type="checkbox"] {
        margin: 0;
        accent-color: var(--padel-green);
        width: 16px;
        height: 16px;
        cursor: pointer;
}

.padel-filter-checkbox__count {
        margin-left: auto;
        color: var(--padel-gray-dark);
        font-size: 0.78rem;
}

.padel-filter-price {
        display: flex;
        align-items: center;
        gap: 8px;
}

.padel-filter-price input {
        width: 100%;
        padding: 8px 10px;
        background: var(--padel-black-3);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: var(--padel-radius-sm);
        color: var(--padel-white);
        font-family: var(--padel-font);
        font-size: 0.85rem;
}

.padel-filter-price input:focus {
        outline: none;
        border-color: var(--padel-green);
}

.padel-filter-price__sep {
        color: var(--padel-gray);
}

.padel-filter-price-range {
        margin-top: 10px;
}

.padel-filter-price-range input[type="range"] {
        width: 100%;
        accent-color: var(--padel-green);
}

.padel-filter-block select {
        width: 100%;
        padding: 8px 10px;
        background: var(--padel-black-3);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: var(--padel-radius-sm);
        color: var(--padel-white);
        font-family: var(--padel-font);
        cursor: pointer;
}

.padel-filter-actions {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin-top: 16px;
}

.padel-catalog__topbar {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 18px;
}

.padel-catalog__count {
        font-size: 0.92rem;
        color: var(--padel-gray);
}

.padel-catalog__count strong {
        color: var(--padel-green);
}

.padel-catalog__view {
        display: flex;
        gap: 4px;
        background: var(--padel-black-2);
        border-radius: var(--padel-radius-sm);
        padding: 3px;
}

.padel-catalog__view-btn {
        width: 32px;
        height: 32px;
        background: transparent;
        border: 0;
        color: var(--padel-gray);
        cursor: pointer;
        border-radius: 4px;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.2s;
}

.padel-catalog__view-btn.is-active {
        background: var(--padel-green);
        color: var(--padel-black);
}

.padel-catalog__loader {
        text-align: center;
        padding: 40px;
        color: var(--padel-gray);
}

.padel-catalog__loader span {
        display: inline-block;
        width: 24px;
        height: 24px;
        border: 2px solid rgba(var(--padel-accent-rgb), 0.2);
        border-top-color: var(--padel-green);
        border-radius: 50%;
        animation: padel-spin 0.8s linear infinite;
        margin-right: 10px;
        vertical-align: middle;
}

@keyframes padel-spin {
        to { transform: rotate(360deg); }
}

.padel-catalog__empty {
        text-align: center;
        padding: 60px 24px;
        background: var(--padel-black-2);
        border: 1px dashed rgba(255, 255, 255, 0.1);
        border-radius: var(--padel-radius);
        color: var(--padel-gray);
}

.padel-catalog__empty svg {
        color: var(--padel-green);
        opacity: 0.4;
        margin-bottom: 14px;
}

.padel-catalog__empty h3 {
        color: var(--padel-white);
        margin: 0 0 6px;
}

.padel-catalog__more {
        text-align: center;
        margin-top: 28px;
}

/* Список-режим каталога */
.padel-catalog__main[data-view="list"] .padel-grid {
        grid-template-columns: 1fr !important;
}

/* Адаптив */
@media (max-width: 900px) {
        .padel-catalog__layout {
                grid-template-columns: 1fr;
        }

        .padel-catalog__filters {
                position: static;
        }

        .padel-catalog__mobile-toggle {
                display: block;
        }

        .padel-catalog__filters-body {
                display: none;
        }

        .padel-catalog__filters-body.is-open {
                display: block;
        }
}

/* =====================================================
   ОТЗЫВЫ
   ===================================================== */
.padel-reviews-section {
        background: var(--padel-black);
        padding: 80px 0;
}

.padel-reviews {
        max-width: 880px;
        margin: 0 auto;
        font-family: var(--padel-font);
        color: var(--padel-white);
}

.padel-reviews__summary {
        display: grid;
        grid-template-columns: 200px 1fr;
        gap: 30px;
        align-items: center;
        padding: 28px;
        background: var(--padel-black-2);
        border: 1px solid rgba(var(--padel-accent-rgb), 0.2);
        border-radius: var(--padel-radius);
        margin-bottom: 36px;
}

.padel-reviews__avg-block {
        text-align: center;
}

.padel-reviews__avg {
        display: block;
        font-family: var(--padel-font-display);
        font-size: 3.5rem;
        font-weight: 900;
        color: var(--padel-green);
        line-height: 1;
        margin-bottom: 6px;
}

.padel-reviews__stars {
        display: block;
        font-size: 1.4rem;
        margin-bottom: 4px;
}

.padel-reviews__count {
        color: var(--padel-gray);
        font-size: 0.88rem;
}

.padel-reviews__dist-row {
        display: grid;
        grid-template-columns: 30px 1fr 30px;
        gap: 10px;
        align-items: center;
        padding: 4px 0;
        font-size: 0.85rem;
}

.padel-reviews__dist-label {
        color: var(--padel-gray);
}

.padel-reviews__dist-bar {
        height: 6px;
        background: var(--padel-black-3);
        border-radius: 3px;
        overflow: hidden;
}

.padel-reviews__dist-fill {
        height: 100%;
        background: var(--padel-green);
        transition: width 0.5s ease;
}

.padel-reviews__dist-count {
        color: var(--padel-gray);
        text-align: right;
}

.padel-reviews__list {
        margin-bottom: 36px;
}

.padel-reviews__empty {
        color: var(--padel-gray);
        text-align: center;
        padding: 24px;
        font-size: 0.95rem;
}

.padel-review {
        display: grid;
        grid-template-columns: 56px 1fr;
        gap: 16px;
        padding: 20px 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.padel-review__avatar {
        width: 56px;
        height: 56px;
        border-radius: 50%;
        background: linear-gradient(135deg, var(--padel-green), var(--padel-green-dark));
        color: var(--padel-black);
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: var(--padel-font-display);
        font-weight: 900;
        font-size: 1.1rem;
        letter-spacing: 1px;
}

.padel-review__header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        margin-bottom: 4px;
}

.padel-review__author {
        font-size: 1rem;
        font-weight: 700;
        margin: 0;
        color: var(--padel-white);
}

.padel-review__date {
        color: var(--padel-gray);
        font-size: 0.8rem;
}

.padel-review__title {
        font-size: 0.95rem;
        font-weight: 600;
        margin: 4px 0;
        color: var(--padel-white);
}

.padel-review__stars {
        color: var(--padel-green);
        font-size: 1rem;
        margin-bottom: 8px;
}

.padel-review__text {
        color: var(--padel-gray);
        line-height: 1.6;
        font-size: 0.92rem;
}

.padel-review__text p {
        margin: 0 0 8px;
}

.padel-review__text p:last-child {
        margin-bottom: 0;
}

/* Форма отзыва */
.padel-reviews__form-wrap {
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius);
        padding: 28px;
}

.padel-reviews__form-title {
        font-family: var(--padel-font-display);
        font-size: 1.2rem;
        font-weight: 800;
        margin: 0 0 18px;
}

.padel-reviews__rating-field {
        margin-bottom: 16px;
}

.padel-stars-input {
        display: flex;
        flex-direction: row-reverse;
        justify-content: flex-end;
        gap: 4px;
}

.padel-stars-input input {
        position: absolute;
        opacity: 0;
        pointer-events: none;
}

.padel-stars-input label {
        font-size: 1.8rem;
        color: var(--padel-gray-dark);
        cursor: pointer;
        transition: color 0.15s;
}

.padel-stars-input label:hover,
.padel-stars-input label:hover ~ label,
.padel-stars-input input:checked ~ label {
        color: var(--padel-green);
}

.padel-reviews__actions {
        margin-top: 16px;
}

.padel-reviews__form .padel-ff-field input,
.padel-reviews__form .padel-ff-field textarea {
        background: var(--padel-black-3);
}

/* =====================================================
   СОПУТСТВУЮЩИЕ ТОВАРЫ
   ===================================================== */
.padel-related {
        background: var(--padel-black-2);
        padding: 80px 0;
}

.padel-related .padel-grid {
        max-width: 1400px;
        margin: 0 auto;
        padding: 0 24px;
}

/* Адаптив */
@media (max-width: 700px) {
        .padel-compare,
        .padel-wishlist-page,
        .padel-catalog,
        .padel-reviews {
                padding: 30px 14px;
        }

        .padel-reviews__summary {
                grid-template-columns: 1fr;
                text-align: center;
        }

        .padel-review {
                grid-template-columns: 40px 1fr;
                gap: 12px;
        }

        .padel-review__avatar {
                width: 40px;
                height: 40px;
                font-size: 0.85rem;
        }

        .padel-compare__table th,
        .padel-compare__table td {
                padding: 10px 8px;
                font-size: 0.85rem;
        }

        .padel-float-compare,
        .padel-float-wishlist {
                right: 16px;
                width: 46px;
                height: 46px;
        }

        .padel-float-compare { bottom: 80px; }
        .padel-float-wishlist { bottom: 134px; }
}

/* =====================================================
   WEB-УВЕДОМЛЕНИЯ — ПЛАВАЮЩАЯ КНОПКА
   ===================================================== */
.padel-float-notify {
        position: fixed;
        right: 24px;
        bottom: 220px;
        width: 52px;
        height: 52px;
        border-radius: 50%;
        background: var(--padel-black-2);
        border: 1px solid var(--padel-green);
        color: var(--padel-green);
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        z-index: 9997;
        transition: all 0.3s;
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
}

.padel-float-notify:hover {
        background: var(--padel-green);
        color: var(--padel-black);
        transform: scale(1.1);
}

.padel-float-notify.is-subscribed {
        background: var(--padel-green);
        color: var(--padel-black);
}

.padel-notify-toggle svg {
        flex-shrink: 0;
}

/* =====================================================
   ПРОГРАММА ЛОЯЛЬНОСТИ
   ===================================================== */
.padel-loyalty {
        max-width: 980px;
        margin: 0 auto;
        padding: 50px 24px;
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        min-height: 60vh;
}

.padel-loyalty__header {
        margin-bottom: 32px;
        padding-bottom: 24px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.padel-loyalty__title {
        font-family: var(--padel-font-display);
        font-size: clamp(1.8rem, 4vw, 2.6rem);
        font-weight: 900;
        letter-spacing: -1px;
        text-transform: uppercase;
        margin: 0 0 6px;
}

.padel-loyalty__subtitle {
        color: var(--padel-gray);
        margin: 0;
        font-size: 0.95rem;
}

.padel-loyalty__cards {
        display: grid;
        grid-template-columns: 1fr 1.5fr;
        gap: 20px;
        margin-bottom: 40px;
}

.padel-loyalty__balance-card,
.padel-loyalty__level-card {
        background: var(--padel-black-2);
        border: 1px solid rgba(var(--padel-accent-rgb), 0.3);
        border-radius: var(--padel-radius);
        padding: 24px;
}

.padel-loyalty__balance-label {
        display: block;
        font-size: 0.78rem;
        color: var(--padel-gray);
        letter-spacing: 1px;
        text-transform: uppercase;
        margin-bottom: 10px;
}

.padel-loyalty__balance-value {
        display: block;
        font-family: var(--padel-font-display);
        font-size: 3rem;
        font-weight: 900;
        color: var(--padel-green);
        line-height: 1;
}

.padel-loyalty__balance-unit {
        display: block;
        font-size: 0.85rem;
        color: var(--padel-gray);
        margin-top: 8px;
}

.padel-loyalty__level-card {
        display: flex;
        align-items: center;
        gap: 20px;
}

.padel-loyalty__level-badge {
        width: 64px;
        height: 64px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: var(--padel-font-display);
        font-weight: 900;
        font-size: 0.85rem;
        color: var(--padel-black);
        flex-shrink: 0;
}

.padel-loyalty__level-info {
        display: flex;
        flex-direction: column;
        gap: 4px;
}

.padel-loyalty__level-name {
        font-size: 1.2rem;
        font-weight: 800;
}

.padel-loyalty__level-mult {
        font-size: 0.88rem;
        color: var(--padel-gray);
}

.padel-loyalty__level-next {
        font-size: 0.78rem;
        color: var(--padel-gray);
}

.padel-loyalty__progress-bar {
        height: 6px;
        background: var(--padel-black-3);
        border-radius: 3px;
        overflow: hidden;
        margin-top: 8px;
}

.padel-loyalty__progress-fill {
        height: 100%;
        transition: width 0.5s ease;
}

.padel-loyalty__section-title {
        font-family: var(--padel-font-display);
        font-size: 1.2rem;
        font-weight: 800;
        letter-spacing: 1px;
        text-transform: uppercase;
        margin: 0 0 18px;
}

.padel-loyalty__history {
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius-sm);
        overflow: hidden;
}

.padel-loyalty-history-row {
        display: grid;
        grid-template-columns: 130px 1fr 100px;
        gap: 16px;
        padding: 14px 18px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
        font-size: 0.92rem;
}

.padel-loyalty-history-row:last-child {
        border-bottom: 0;
}

.padel-loyalty-history__date {
        color: var(--padel-gray);
}

.padel-loyalty-history__reason {
        color: var(--padel-white);
}

.padel-loyalty-history__points {
        text-align: right;
        font-weight: 800;
        font-family: var(--padel-font-display);
}

.padel-loyalty-history__points.is-positive {
        color: var(--padel-green);
}

.padel-loyalty-history__points.is-negative {
        color: #ff4757;
}

/* Виджет баланса */
.padel-points-widget {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 8px 14px;
        background: var(--padel-black-2);
        border: 1px solid rgba(var(--padel-accent-rgb), 0.3);
        border-radius: 50px;
        font-family: var(--padel-font);
}

.padel-points-widget__icon {
        font-size: 14px;
}

.padel-points-widget__value {
        font-weight: 900;
        color: var(--padel-green);
}

.padel-points-widget__label {
        font-size: 0.78rem;
        color: var(--padel-gray);
}

.padel-points-widget__level {
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
}

/* Блок списания в корзине */
.padel-cart__points-block {
        margin: 14px 0;
        padding-top: 14px;
        border-top: 1px dashed rgba(255, 255, 255, 0.06);
}

.padel-cart__points-label {
        display: flex;
        align-items: center;
        gap: 10px;
        cursor: pointer;
        font-size: 0.92rem;
        color: var(--padel-white);
}

.padel-cart__points-label input[type="checkbox"] {
        accent-color: var(--padel-green);
        width: 18px;
        height: 18px;
        cursor: pointer;
}

/* =====================================================
   ВОЗВРАТЫ
   ===================================================== */
.padel-returns {
        max-width: 980px;
        margin: 0 auto;
        padding: 50px 24px;
        font-family: var(--padel-font);
        background: var(--padel-black);
        color: var(--padel-white);
        min-height: 60vh;
}

.padel-returns__header {
        margin-bottom: 32px;
        padding-bottom: 24px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.padel-returns__title {
        font-family: var(--padel-font-display);
        font-size: clamp(1.8rem, 4vw, 2.6rem);
        font-weight: 900;
        letter-spacing: -1px;
        text-transform: uppercase;
        margin: 0 0 6px;
}

.padel-returns__subtitle {
        color: var(--padel-gray);
        margin: 0;
        font-size: 0.95rem;
}

.padel-returns__form-section,
.padel-returns__list-section {
        margin-bottom: 36px;
}

.padel-returns__section-title {
        font-family: var(--padel-font-display);
        font-size: 1.2rem;
        font-weight: 800;
        letter-spacing: 1px;
        text-transform: uppercase;
        margin: 0 0 18px;
}

.padel-returns__form {
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius);
        padding: 24px;
}

.padel-returns__empty {
        color: var(--padel-gray);
        padding: 24px;
        text-align: center;
        background: var(--padel-black-2);
        border: 1px dashed rgba(255, 255, 255, 0.1);
        border-radius: var(--padel-radius);
}

.padel-returns__list {
        display: flex;
        flex-direction: column;
        gap: 10px;
}

.padel-returns-item {
        display: grid;
        grid-template-columns: auto 1fr auto;
        gap: 16px;
        align-items: center;
        padding: 14px 18px;
        background: var(--padel-black-2);
        border: 1px solid rgba(255, 255, 255, 0.06);
        border-radius: var(--padel-radius-sm);
}

.padel-returns-item__num {
        font-family: var(--padel-font-display);
        font-weight: 900;
        color: var(--padel-green);
        font-size: 1.1rem;
}

.padel-returns-item__info {
        display: flex;
        gap: 14px;
        flex-wrap: wrap;
        font-size: 0.88rem;
        color: var(--padel-gray);
}

.padel-returns-item__amount {
        color: var(--padel-white);
        font-weight: 700;
}

.padel-returns-item__status {
        font-size: 0.72rem;
        padding: 4px 10px;
        border-radius: 4px;
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
        background: rgba(255, 255, 255, 0.08);
        color: var(--padel-gray);
}

.padel-returns-item__status--new { background: rgba(var(--padel-accent-rgb), 0.15); color: var(--padel-green); }
.padel-returns-item__status--reviewing { background: rgba(255, 165, 0, 0.15); color: #ffa500; }
.padel-returns-item__status--approved { background: rgba(var(--padel-accent-rgb), 0.25); color: var(--padel-green); }
.padel-returns-item__status--rejected { background: rgba(255, 71, 87, 0.15); color: #ff4757; }
.padel-returns-item__status--refunded { background: rgba(var(--padel-accent-rgb), 0.3); color: var(--padel-green); }

/* =====================================================
   АДАПТИВ
   ===================================================== */
@media (max-width: 800px) {
        .padel-loyalty__cards,
        .padel-returns-item {
                grid-template-columns: 1fr;
        }

        .padel-loyalty-history-row {
                grid-template-columns: 1fr;
                gap: 4px;
        }

        .padel-loyalty-history__points {
                text-align: left;
        }

        .padel-float-notify {
                bottom: 180px;
                right: 16px;
                width: 46px;
                height: 46px;
        }
}

/* =====================================================
   v1.8.0 — STICKY BUY BAR
   ===================================================== */
.padel-sticky-buy {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 100;
        background: rgba(17, 17, 17, 0.92);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        border-top: 1px solid rgba(var(--padel-accent-rgb), 0.25);
        box-shadow: 0 -10px 40px rgba(0, 0, 0, 0.5);
        transform: translateY(110%);
        transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}

.padel-sticky-buy.is-visible {
        transform: translateY(0);
}

.padel-sticky-buy__inner {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        padding: 14px 0;
}

.padel-sticky-buy__info {
        display: flex;
        align-items: center;
        gap: 14px;
        min-width: 0;
}

.padel-sticky-buy__thumb {
        width: 56px;
        height: 56px;
        object-fit: contain;
        border-radius: var(--padel-radius-sm);
        background: var(--padel-black-2);
        flex-shrink: 0;
}

.padel-sticky-buy__title {
        font-size: 0.95rem;
        font-weight: 700;
        margin: 0 0 4px;
        color: var(--padel-white);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 380px;
}

.padel-sticky-buy__price-block {
        display: flex;
        align-items: baseline;
        gap: 10px;
}

.padel-sticky-buy__old {
        font-size: 0.85rem;
        color: var(--padel-gray-dark);
        text-decoration: line-through;
}

.padel-sticky-buy__price {
        font-family: var(--padel-font-mono);
        font-weight: 700;
        font-size: 1.1rem;
        color: var(--padel-green);
        font-variant-numeric: tabular-nums;
}

.padel-sticky-buy__actions {
        display: flex;
        align-items: center;
        gap: 12px;
        flex-shrink: 0;
}

@media (max-width: 640px) {
        .padel-sticky-buy__title {
                max-width: 160px;
                font-size: 0.85rem;
        }
        .padel-sticky-buy__thumb {
                width: 44px;
                height: 44px;
        }
        .padel-sticky-buy__actions .padel-qty {
                display: none;
        }
        .padel-sticky-buy__actions .padel-btn {
                padding: 12px 18px;
                font-size: 12px;
        }
}

/* =====================================================
   v1.8.0 — QUANTITY STEPPER
   ===================================================== */
.padel-qty {
        display: inline-flex;
        align-items: center;
        background: var(--padel-black-3);
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: var(--padel-radius-sm);
        overflow: hidden;
}

.padel-qty__btn {
        width: 40px;
        height: 48px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: transparent;
        border: 0;
        color: var(--padel-white);
        font-size: 18px;
        font-weight: 700;
        cursor: pointer;
        transition: var(--padel-transition);
}

.padel-qty__btn:hover {
        background: rgba(var(--padel-accent-rgb), 0.12);
        color: var(--padel-green);
}

.padel-qty__btn:active {
        transform: scale(0.92);
}

.padel-qty__input {
        width: 50px;
        height: 48px;
        border: 0;
        background: transparent;
        color: var(--padel-white);
        font-family: var(--padel-font-mono);
        font-weight: 700;
        font-size: 15px;
        text-align: center;
        -moz-appearance: textfield;
        -webkit-appearance: none;
        appearance: none;
}

.padel-qty__input::-webkit-outer-spin-button,
.padel-qty__input::-webkit-inner-spin-button {
        -webkit-appearance: none;
        margin: 0;
}

.padel-qty--sm .padel-qty__btn {
        width: 32px;
        height: 40px;
        font-size: 15px;
}

.padel-qty--sm .padel-qty__input {
        width: 40px;
        height: 40px;
        font-size: 13px;
}

/* =====================================================
   v1.8.0 — IMAGE ZOOM + THUMBNAILS
   ===================================================== */
.padel-buy__image-wrap {
        position: relative;
}

.padel-buy__zoom {
        position: relative;
        overflow: hidden;
        border-radius: var(--padel-radius);
        background: var(--padel-black-2);
        cursor: zoom-in;
}

.padel-buy__zoom .padel-buy__image {
        width: 100%;
        height: auto;
        display: block;
        transition: transform 0.25s ease-out;
        will-change: transform;
}

.padel-buy__zoom.is-zooming .padel-buy__image {
        transform: scale(2);
        transition: transform 0.1s ease-out;
}

.padel-buy__thumbs {
        display: flex;
        gap: 10px;
        margin-top: 14px;
        flex-wrap: wrap;
}

.padel-buy__thumb {
        width: 72px;
        height: 72px;
        border-radius: var(--padel-radius-sm);
        overflow: hidden;
        border: 2px solid rgba(255, 255, 255, 0.08);
        background: var(--padel-black-2);
        padding: 0;
        cursor: pointer;
        transition: var(--padel-transition);
        flex-shrink: 0;
}

.padel-buy__thumb img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        display: block;
}

.padel-buy__thumb:hover {
        border-color: rgba(var(--padel-accent-rgb), 0.5);
        transform: translateY(-2px);
}

.padel-buy__thumb.is-active {
        border-color: var(--padel-green);
        box-shadow: 0 0 18px rgba(var(--padel-accent-rgb), 0.4);
}

@media (max-width: 768px) {
        .padel-buy__thumb {
                width: 56px;
                height: 56px;
        }
}

/* =====================================================
   v1.8.0 — TRUST BADGES + DELIVERY ESTIMATOR + LIVE PURCHASE
   ===================================================== */
.padel-trust {
        display: flex;
        gap: 22px;
        flex-wrap: wrap;
        margin-bottom: 24px;
        padding: 18px 0;
        border-top: 1px solid rgba(255, 255, 255, 0.06);
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.padel-trust__item {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        font-size: 0.85rem;
        color: var(--padel-gray);
        font-weight: 500;
}

.padel-trust__item svg {
        color: var(--padel-green);
        flex-shrink: 0;
}

.padel-delivery {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        padding: 12px 18px;
        background: rgba(var(--padel-accent-rgb), 0.07);
        border: 1px solid rgba(var(--padel-accent-rgb), 0.2);
        border-radius: var(--padel-radius-pill);
        margin-bottom: 18px;
        font-size: 0.95rem;
        color: var(--padel-white);
}

.padel-delivery svg {
        color: var(--padel-green);
        flex-shrink: 0;
}

.padel-delivery strong {
        color: var(--padel-green);
        font-weight: 800;
}

.padel-live-purchase {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        padding: 8px 16px;
        background: rgba(255, 71, 87, 0.08);
        border: 1px solid rgba(255, 71, 87, 0.25);
        border-radius: var(--padel-radius-pill);
        margin-top: 16px;
        margin-bottom: 18px;
        font-size: 0.85rem;
        font-weight: 600;
        color: #ff8a95;
}

.padel-live-purchase__dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #ff4757;
        box-shadow: 0 0 12px #ff4757;
        animation: padel-blink 1.5s ease-in-out infinite;
}

@media (max-width: 640px) {
        .padel-trust {
                gap: 14px;
        }
        .padel-trust__item {
                font-size: 0.78rem;
        }
}

/* =====================================================
   v1.8.0 — CART DRAWER (slide-out)
   ===================================================== */
.padel-drawer-overlay {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.7);
        z-index: 200;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.35s ease, visibility 0s linear 0.35s;
        backdrop-filter: blur(4px);
        -webkit-backdrop-filter: blur(4px);
}

.padel-drawer-overlay.is-open {
        opacity: 1;
        visibility: visible;
        transition: opacity 0.35s ease, visibility 0s linear 0s;
}

.padel-cart-drawer {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        width: min(440px, 100%);
        background: var(--padel-black);
        z-index: 201;
        transform: translateX(110%);
        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        display: flex;
        flex-direction: column;
        box-shadow: -20px 0 60px rgba(0, 0, 0, 0.6);
        border-left: 1px solid rgba(var(--padel-accent-rgb), 0.15);
}

.padel-cart-drawer.is-open {
        transform: translateX(0);
}

.padel-cart-drawer__header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 22px 24px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
        flex-shrink: 0;
}

.padel-cart-drawer__title {
        font-family: var(--padel-font-display);
        font-size: 1.8rem;
        font-weight: 800;
        margin: 0;
        color: var(--padel-white);
        text-transform: uppercase;
        letter-spacing: 0;
}

.padel-cart-drawer__close {
        width: 38px;
        height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: var(--padel-black-3);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 50%;
        color: var(--padel-white);
        cursor: pointer;
        transition: var(--padel-transition);
}

.padel-cart-drawer__close:hover {
        background: rgba(255, 71, 87, 0.2);
        border-color: rgba(255, 71, 87, 0.5);
        color: #ff4757;
        transform: rotate(90deg);
}

.padel-cart-drawer__body {
        flex: 1;
        overflow-y: auto;
        padding: 18px 24px;
        -webkit-overflow-scrolling: touch;
}

.padel-cart-drawer__loading,
.padel-cart-drawer__empty {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 16px;
        padding: 60px 20px;
        text-align: center;
        color: var(--padel-gray);
}

.padel-cart-drawer__empty svg {
        color: var(--padel-green);
        opacity: 0.5;
}

.padel-cart-drawer__empty h3 {
        color: var(--padel-white);
        font-size: 1.3rem;
        margin: 0;
}

.padel-cart-drawer__empty p {
        margin: 0 0 12px;
        font-size: 0.95rem;
}

.padel-cart-drawer-item {
        display: grid;
        grid-template-columns: 64px 1fr auto;
        gap: 14px;
        padding: 16px 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.05);
        align-items: center;
}

.padel-cart-drawer-item__thumb {
        display: block;
        width: 64px;
        height: 64px;
        border-radius: var(--padel-radius-sm);
        overflow: hidden;
        background: var(--padel-black-2);
        flex-shrink: 0;
}

.padel-cart-drawer-item__thumb img {
        width: 100%;
        height: 100%;
        object-fit: contain;
}

.padel-cart-drawer-item__placeholder {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        font-size: 24px;
}

.padel-cart-drawer-item__info {
        min-width: 0;
}

.padel-cart-drawer-item__title {
        display: block;
        font-size: 0.95rem;
        font-weight: 600;
        color: var(--padel-white);
        text-decoration: none;
        margin-bottom: 4px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
}

.padel-cart-drawer-item__title:hover {
        color: var(--padel-green);
}

.padel-cart-drawer-item__price-each {
        font-size: 0.78rem;
        color: var(--padel-gray);
        margin-bottom: 8px;
}

.padel-cart-drawer-item__qty {
        display: inline-flex;
        align-items: center;
        background: var(--padel-black-3);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: var(--padel-radius-sm);
        overflow: hidden;
}

.padel-cart-drawer-item__qty .padel-qty-btn {
        width: 28px;
        height: 30px;
        font-size: 14px;
}

.padel-cart-drawer-item__qty .padel-qty-input {
        width: 34px;
        height: 30px;
        font-size: 12px;
}

.padel-cart-drawer-item__subtotal {
        font-family: var(--padel-font-mono);
        font-weight: 700;
        font-size: 0.95rem;
        color: var(--padel-green);
        font-variant-numeric: tabular-nums;
        text-align: right;
}

.padel-cart-drawer-item__remove {
        width: 28px;
        height: 28px;
        background: transparent;
        border: 0;
        color: var(--padel-gray-dark);
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: var(--padel-transition);
        margin-top: 6px;
}

.padel-cart-drawer-item__remove:hover {
        color: #ff4757;
}

.padel-cart-drawer__footer {
        padding: 18px 24px 24px;
        border-top: 1px solid rgba(255, 255, 255, 0.06);
        background: var(--padel-black-2);
        flex-shrink: 0;
}

.padel-cart-drawer__row {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        margin-bottom: 8px;
        font-size: 0.9rem;
        color: var(--padel-gray);
}

.padel-cart-drawer__row--discount strong {
        color: #ff4757;
}

.padel-cart-drawer__row--total {
        font-size: 1.05rem;
        color: var(--padel-white);
        font-weight: 700;
        margin-bottom: 16px;
        padding-top: 10px;
        border-top: 1px dashed rgba(255, 255, 255, 0.1);
}

.padel-cart-drawer__row--total strong {
        font-family: var(--padel-font-mono);
        font-size: 1.4rem;
        color: var(--padel-green);
        font-variant-numeric: tabular-nums;
}

.padel-cart-drawer__continue {
        display: block;
        width: 100%;
        margin-top: 10px;
        padding: 10px;
        background: transparent;
        border: 0;
        color: var(--padel-gray);
        font-size: 0.85rem;
        cursor: pointer;
        transition: var(--padel-transition);
}

.padel-cart-drawer__continue:hover {
        color: var(--padel-white);
}

@media (max-width: 480px) {
        .padel-cart-drawer {
                width: 100%;
        }
        .padel-cart-drawer-item {
                grid-template-columns: 56px 1fr;
                grid-template-rows: auto auto;
        }
        .padel-cart-drawer-item__subtotal {
                grid-column: 2;
                text-align: left;
                margin-top: 6px;
        }
        .padel-cart-drawer-item__remove {
                grid-column: 2;
                grid-row: 1;
                justify-self: end;
                margin-top: 0;
        }
}

/* Body lock when drawer is open */
body.padel-drawer-open {
        overflow: hidden;
}

/* =====================================================
   v1.8.0 — PRICE STYLING REFINEMENTS (mono font everywhere)
   ===================================================== */
.padel-card__price,
.padel-card__old-price,
.padel-cart-item__subtotal,
.padel-cart-item__price-each,
.padel-summary__total,
.padel-buy__old-price,
.padel-buy__discount {
        font-variant-numeric: tabular-nums;
}

.padel-card__price {
        font-family: var(--padel-font-mono);
        font-weight: 800;
        letter-spacing: -0.5px;
}


/* =====================================================
   v1.9.0 — LIGHT THEME + DESIGN TOKENS EXPANSION
   ===================================================== */
:root {
        --padel-bg: #111111;
        --padel-surface: #1a1a1a;
        --padel-surface-2: #222222;
        --padel-border: rgba(255, 255, 255, 0.08);
        --padel-border-strong: rgba(255, 255, 255, 0.16);
        --padel-hover: rgba(var(--padel-accent-rgb), 0.08);
        --padel-text: #ffffff;
        --padel-text-muted: #999999;
        --padel-text-dim: #555555;
        --padel-overlay: rgba(0, 0, 0, 0.7);
}

.padel-single,
.padel-archive,
.padel-grid {
        background: var(--padel-bg);
        color: var(--padel-text);
}

.padel-feature,
.padel-cart-drawer__footer,
.padel-cart-drawer-item {
        background: var(--padel-surface);
}

.padel-card,
.padel-catalog__filters,
.padel-catalog__main,
.padel-sticky-buy {
        background: var(--padel-bg);
}

.padel-card__body,
.padel-cart-drawer,
.padel-buy__zoom {
        background: var(--padel-surface);
}

/* Light theme overrides */
body.padel-pro-light {
        --padel-bg: #f7f7f8;
        --padel-surface: #ffffff;
        --padel-surface-2: #f0f0f2;
        --padel-border: rgba(0, 0, 0, 0.08);
        --padel-border-strong: rgba(0, 0, 0, 0.16);
        --padel-hover: rgba(0, 180, 0, 0.08);
        --padel-text: #111111;
        --padel-text-muted: #555555;
        --padel-text-dim: #999999;
        --padel-overlay: rgba(255, 255, 255, 0.85);
        --padel-black: #f7f7f8;
        --padel-black-2: #ffffff;
        --padel-black-3: #f0f0f2;
        --padel-white: #111111;
        --padel-gray: #555555;
        --padel-gray-dark: #999999;
        --padel-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
}

body.padel-pro-light .padel-hero {
        background: linear-gradient(180deg, #ffffff 0%, #f0f0f2 100%);
}
body.padel-pro-light .padel-hero__overlay {
        background: linear-gradient(180deg, rgba(247, 247, 248, 0.5) 0%, rgba(247, 247, 248, 0.85) 100%);
}
body.padel-pro-light .padel-hero__grid-lines {
        background-image:
                linear-gradient(rgba(0, 0, 0, 0.04) 1px, transparent 1px),
                linear-gradient(90deg, rgba(0, 0, 0, 0.04) 1px, transparent 1px);
}
body.padel-pro-light .padel-btn--ghost {
        color: #111111;
        border-color: rgba(0, 0, 0, 0.15);
}

@media (prefers-color-scheme: light) {
        body.padel-pro-auto:not(.padel-pro-dark) {
                --padel-bg: #f7f7f8;
                --padel-surface: #ffffff;
                --padel-surface-2: #f0f0f2;
                --padel-border: rgba(0, 0, 0, 0.08);
                --padel-border-strong: rgba(0, 0, 0, 0.16);
                --padel-hover: rgba(0, 180, 0, 0.08);
                --padel-text: #111111;
                --padel-text-muted: #555555;
                --padel-text-dim: #999999;
                --padel-overlay: rgba(255, 255, 255, 0.85);
                --padel-black: #f7f7f8;
                --padel-black-2: #ffffff;
                --padel-black-3: #f0f0f2;
                --padel-white: #111111;
                --padel-gray: #555555;
                --padel-gray-dark: #999999;
                --padel-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
        }
        body.padel-pro-auto:not(.padel-pro-dark) .padel-hero {
                background: linear-gradient(180deg, #ffffff 0%, #f0f0f2 100%);
        }
        body.padel-pro-auto:not(.padel-pro-dark) .padel-hero__overlay {
                background: linear-gradient(180deg, rgba(247, 247, 248, 0.5) 0%, rgba(247, 247, 248, 0.85) 100%);
        }
        body.padel-pro-auto:not(.padel-pro-dark) .padel-hero__grid-lines {
                background-image:
                        linear-gradient(rgba(0, 0, 0, 0.04) 1px, transparent 1px),
                        linear-gradient(90deg, rgba(0, 0, 0, 0.04) 1px, transparent 1px);
        }
        body.padel-pro-auto:not(.padel-pro-dark) .padel-btn--ghost {
                color: #111111;
                border-color: rgba(0, 0, 0, 0.15);
        }
}

/* =====================================================
   v1.9.0 — GRADIENT TEXT + NOISE OVERLAY
   ===================================================== */
.padel-hero__slogan.is-gradient,
.padel-gradient-text {
        background: linear-gradient(135deg, var(--padel-green) 0%, #00ffaa 50%, var(--padel-green) 100%);
        background-size: 200% auto;
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        color: transparent;
        animation: padel-gradient-shift 6s linear infinite;
}

@keyframes padel-gradient-shift {
        0% { background-position: 0% center; }
        100% { background-position: 200% center; }
}

.padel-hero__noise {
        position: absolute;
        inset: 0;
        z-index: 2;
        pointer-events: none;
        opacity: 0.03;
        background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
        mix-blend-mode: overlay;
}

/* =====================================================
   v1.9.0 — BREADCRUMBS
   ===================================================== */
.padel-breadcrumbs {
        background: var(--padel-surface);
        border-bottom: 1px solid var(--padel-border);
        padding: 14px 0;
        font-size: 13px;
}

.padel-breadcrumbs__list {
        display: flex;
        flex-wrap: wrap;
        gap: 6px 10px;
        align-items: center;
        margin: 0;
        padding: 0;
        list-style: none;
}

.padel-breadcrumbs__item {
        display: inline-flex;
        align-items: center;
        gap: 10px;
}

.padel-breadcrumbs__item::after {
        content: '/';
        color: var(--padel-text-dim);
        font-weight: 400;
}

.padel-breadcrumbs__item:last-child::after {
        display: none;
}

.padel-breadcrumbs__link {
        color: var(--padel-text-muted);
        text-decoration: none;
        transition: var(--padel-transition);
}

.padel-breadcrumbs__link:hover {
        color: var(--padel-green);
}

.padel-breadcrumbs__current {
        color: var(--padel-text);
        font-weight: 600;
}

/* =====================================================
   v1.9.0 — FOCUS VISIBLE + SKIP LINK
   ===================================================== */
.padel-btn:focus-visible,
.padel-card__quick-btn:focus-visible,
.padel-qty__btn:focus-visible,
.padel-qty__input:focus-visible,
.padel-cart-drawer__close:focus-visible,
.padel-buy__thumb:focus-visible,
.padel-breadcrumbs__link:focus-visible,
.padel-catalog__view-btn:focus-visible,
.padel-catalog__mobile-toggle:focus-visible,
.padel-card a:focus-visible,
.padel-catalog__filters input:focus-visible,
.padel-catalog__filters select:focus-visible,
.padel-sticky-buy a:focus-visible,
.padel-float-cart:focus-visible {
        outline: 2px solid var(--padel-green);
        outline-offset: 3px;
        border-radius: 4px;
}

.padel-skip-link {
        position: absolute;
        top: -100px;
        left: 16px;
        z-index: 9999;
        background: var(--padel-green);
        color: #000;
        padding: 10px 18px;
        font-weight: 700;
        text-decoration: none;
        border-radius: 6px;
        transition: top 0.2s ease;
}

.padel-skip-link:focus {
        top: 16px;
}

/* =====================================================
   v1.9.0 — RIPPLE EFFECT
   ===================================================== */
.padel-btn {
        position: relative;
        overflow: hidden;
}

.padel-ripple {
        position: absolute;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.4);
        transform: scale(0);
        animation: padel-ripple-anim 0.6s ease-out;
        pointer-events: none;
}

.padel-btn--primary .padel-ripple {
        background: rgba(0, 0, 0, 0.3);
}

@keyframes padel-ripple-anim {
        to {
                transform: scale(4);
                opacity: 0;
        }
}

/* =====================================================
   v1.9.0 — CART BUMP + SUCCESS ANIMATION
   ===================================================== */
.padel-float-cart.is-bump {
        animation: padel-bump 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

@keyframes padel-bump {
        0% { transform: scale(1); }
        30% { transform: scale(1.3); }
        60% { transform: scale(0.95); }
        100% { transform: scale(1); }
}

.padel-float-cart__badge.is-pulse-bump {
        animation: padel-badge-pulse 0.6s ease-out;
}

@keyframes padel-badge-pulse {
        0% { transform: scale(1); background: var(--padel-green); }
        50% { transform: scale(1.5); background: #fff; box-shadow: 0 0 24px var(--padel-green); }
        100% { transform: scale(1); background: var(--padel-green); }
}

.padel-fly-to-cart {
        position: fixed;
        z-index: 999;
        width: 60px;
        height: 60px;
        border-radius: 50%;
        object-fit: cover;
        pointer-events: none;
        box-shadow: 0 8px 24px rgba(var(--padel-accent-rgb), 0.5);
        border: 2px solid var(--padel-green);
        transition: all 0.7s cubic-bezier(0.5, -0.5, 0.7, 1);
}

/* =====================================================
   v1.9.0 — MAGNETIC BUTTONS
   ===================================================== */
.padel-btn--xl[data-magnetic],
.padel-hero .padel-btn[data-magnetic] {
        transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
        will-change: transform;
}

/* =====================================================
   v1.9.0 — FILTER CHIPS
   ===================================================== */
.padel-filter-chips {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-bottom: 18px;
}

.padel-filter-chip {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 6px 12px 6px 14px;
        background: var(--padel-surface-2);
        border: 1px solid var(--padel-border-strong);
        border-radius: var(--padel-radius-pill);
        color: var(--padel-text);
        font-size: 13px;
        font-weight: 600;
        cursor: pointer;
        transition: var(--padel-transition);
}

.padel-filter-chip:hover {
        background: var(--padel-hover);
        border-color: var(--padel-green);
        color: var(--padel-green);
}

.padel-filter-chip__x {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 16px;
        height: 16px;
        background: rgba(255, 255, 255, 0.1);
        border-radius: 50%;
        font-size: 14px;
        line-height: 1;
}

.padel-filter-chip:hover .padel-filter-chip__x {
        background: var(--padel-green);
        color: #000;
}

/* =====================================================
   v1.9.0 — DOUBLE RANGE SLIDER
   ===================================================== */
.padel-double-range {
        position: relative;
        height: 36px;
        margin: 8px 0 4px;
}

.padel-double-range__track {
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        height: 4px;
        background: var(--padel-surface-2);
        border-radius: 2px;
        transform: translateY(-50%);
}

.padel-double-range__fill {
        position: absolute;
        top: 50%;
        height: 4px;
        background: var(--padel-green);
        border-radius: 2px;
        transform: translateY(-50%);
        box-shadow: 0 0 8px rgba(var(--padel-accent-rgb), 0.5);
}

.padel-double-range input[type="range"] {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 36px;
        margin: 0;
        background: transparent;
        -webkit-appearance: none;
        appearance: none;
        pointer-events: none;
}

.padel-double-range input[type="range"]::-webkit-slider-thumb {
        -webkit-appearance: none;
        appearance: none;
        width: 18px;
        height: 18px;
        border-radius: 50%;
        background: var(--padel-green);
        border: 2px solid #000;
        cursor: pointer;
        pointer-events: auto;
        box-shadow: 0 2px 8px rgba(var(--padel-accent-rgb), 0.5);
        transition: transform 0.15s ease;
}

.padel-double-range input[type="range"]::-webkit-slider-thumb:hover {
        transform: scale(1.2);
}

.padel-double-range input[type="range"]::-moz-range-thumb {
        width: 18px;
        height: 18px;
        border-radius: 50%;
        background: var(--padel-green);
        border: 2px solid #000;
        cursor: pointer;
        pointer-events: auto;
        box-shadow: 0 2px 8px rgba(var(--padel-accent-rgb), 0.5);
}

/* =====================================================
   v1.9.0 — STICKY FILTER SIDEBAR
   ===================================================== */
@media (min-width: 992px) {
        .padel-catalog__layout {
                display: grid;
                grid-template-columns: 280px 1fr;
                gap: 32px;
                align-items: start;
        }

        .padel-catalog__filters {
                position: sticky;
                top: 20px;
                max-height: calc(100vh - 40px);
                overflow-y: auto;
                padding-right: 8px;
        }
}

/* =====================================================
   v1.9.0 — SKELETON LOADERS
   ===================================================== */
.padel-skeleton {
        background: linear-gradient(90deg, var(--padel-surface-2) 25%, var(--padel-surface) 50%, var(--padel-surface-2) 75%);
        background-size: 200% 100%;
        animation: padel-skeleton-shimmer 1.4s ease-in-out infinite;
        border-radius: var(--padel-radius-sm);
}

@keyframes padel-skeleton-shimmer {
        0% { background-position: 200% 0; }
        100% { background-position: -200% 0; }
}

.padel-skeleton-card {
        background: var(--padel-surface);
        border: 1px solid var(--padel-border);
        border-radius: var(--padel-radius);
        overflow: hidden;
}

.padel-skeleton-card__media {
        aspect-ratio: 1;
}

.padel-skeleton-card__body {
        padding: 18px;
}

.padel-skeleton-card__line {
        height: 12px;
        margin-bottom: 8px;
}

.padel-skeleton-card__line--w70 { width: 70%; }
.padel-skeleton-card__line--w50 { width: 50%; }
.padel-skeleton-card__line--w30 { width: 30%; }

.padel-skeleton-card__price {
        height: 22px;
        width: 90px;
        margin-top: 12px;
}

/* =====================================================
   v1.9.0 — QUICK VIEW MODAL
   ===================================================== */
.padel-quickview-overlay {
        position: fixed;
        inset: 0;
        background: var(--padel-overlay);
        z-index: 300;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0s linear 0.3s;
        backdrop-filter: blur(6px);
        -webkit-backdrop-filter: blur(6px);
}

.padel-quickview-overlay.is-open {
        opacity: 1;
        visibility: visible;
        transition: opacity 0.3s ease, visibility 0s linear 0s;
}

.padel-quickview {
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%) scale(0.9);
        width: min(900px, 92vw);
        max-height: 88vh;
        background: var(--padel-bg);
        border: 1px solid var(--padel-border-strong);
        border-radius: var(--padel-radius);
        z-index: 301;
        opacity: 0;
        visibility: hidden;
        transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
        overflow: hidden;
        display: flex;
        flex-direction: column;
        box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6);
}

.padel-quickview.is-open {
        opacity: 1;
        visibility: visible;
        transform: translate(-50%, -50%) scale(1);
}

.padel-quickview__close {
        position: absolute;
        top: 14px;
        right: 14px;
        z-index: 2;
        width: 36px;
        height: 36px;
        background: rgba(0, 0, 0, 0.6);
        border: 1px solid var(--padel-border);
        border-radius: 50%;
        color: #fff;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: var(--padel-transition);
}

.padel-quickview__close:hover {
        background: #ff4757;
        border-color: #ff4757;
        transform: rotate(90deg);
}

.padel-quickview__inner {
        display: grid;
        grid-template-columns: 1fr 1fr;
        overflow: hidden;
        flex: 1;
}

.padel-quickview__media {
        background: var(--padel-surface);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 24px;
        min-height: 320px;
}

.padel-quickview__media img {
        max-width: 100%;
        max-height: 360px;
        object-fit: contain;
}

.padel-quickview__body {
        padding: 32px;
        overflow-y: auto;
}

.padel-quickview__title {
        font-family: var(--padel-font-display);
        font-size: 1.8rem;
        font-weight: 800;
        margin: 0 0 10px;
        color: var(--padel-text);
}

.padel-quickview__rating {
        margin-bottom: 16px;
}

.padel-quickview__price {
        font-family: var(--padel-font-mono);
        font-size: 2rem;
        font-weight: 800;
        color: var(--padel-green);
        margin-bottom: 16px;
        font-variant-numeric: tabular-nums;
}

.padel-quickview__excerpt {
        color: var(--padel-text-muted);
        font-size: 0.95rem;
        line-height: 1.55;
        margin-bottom: 20px;
}

.padel-quickview__actions {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        margin-bottom: 18px;
}

.padel-quickview__link {
        display: inline-block;
        font-size: 13px;
        color: var(--padel-text-muted);
        text-decoration: none;
        border-top: 1px solid var(--padel-border);
        padding-top: 14px;
        width: 100%;
}

.padel-quickview__link:hover {
        color: var(--padel-green);
}

@media (max-width: 720px) {
        .padel-quickview {
                width: 96vw;
                max-height: 92vh;
        }
        .padel-quickview__inner {
                grid-template-columns: 1fr;
        }
        .padel-quickview__media {
                min-height: 220px;
                padding: 16px;
        }
        .padel-quickview__media img {
                max-height: 220px;
        }
        .padel-quickview__body {
                padding: 20px;
        }
}

/* =====================================================
   v1.9.0 — LIGHTBOX (PhotoSwipe-style)
   ===================================================== */
.padel-lightbox {
        position: fixed;
        inset: 0;
        z-index: 400;
        background: rgba(0, 0, 0, 0.95);
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0s linear 0.3s;
        display: flex;
        align-items: center;
        justify-content: center;
}

.padel-lightbox.is-open {
        opacity: 1;
        visibility: visible;
        transition: opacity 0.3s ease, visibility 0s linear 0s;
}

.padel-lightbox__img {
        max-width: 90vw;
        max-height: 85vh;
        object-fit: contain;
        border-radius: 6px;
        box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6);
        transition: transform 0.3s ease;
}

.padel-lightbox__close,
.padel-lightbox__prev,
.padel-lightbox__next {
        position: absolute;
        background: rgba(255, 255, 255, 0.1);
        border: 1px solid rgba(255, 255, 255, 0.2);
        color: #fff;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        transition: var(--padel-transition);
}

.padel-lightbox__close {
        top: 24px;
        right: 24px;
        width: 44px;
        height: 44px;
}

.padel-lightbox__prev,
.padel-lightbox__next {
        top: 50%;
        transform: translateY(-50%);
        width: 52px;
        height: 52px;
}

.padel-lightbox__prev { left: 24px; }
.padel-lightbox__next { right: 24px; }

.padel-lightbox__close:hover,
.padel-lightbox__prev:hover,
.padel-lightbox__next:hover {
        background: var(--padel-green);
        color: #000;
        border-color: var(--padel-green);
}

.padel-lightbox__counter {
        position: absolute;
        bottom: 24px;
        left: 50%;
        transform: translateX(-50%);
        color: rgba(255, 255, 255, 0.7);
        font-family: var(--padel-font-mono);
        font-size: 14px;
        padding: 6px 14px;
        background: rgba(0, 0, 0, 0.5);
        border-radius: 20px;
}

/* =====================================================
   v1.9.0 — SPEC RADAR CHART
   ===================================================== */
.padel-radar {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 30px 0;
}

.padel-radar svg {
        max-width: 360px;
        width: 100%;
        height: auto;
}

.padel-radar__grid {
        fill: none;
        stroke: var(--padel-border-strong);
        stroke-width: 1;
}

.padel-radar__axis {
        stroke: var(--padel-border);
        stroke-width: 1;
}

.padel-radar__area {
        fill: rgba(var(--padel-accent-rgb), 0.2);
        stroke: var(--padel-green);
        stroke-width: 2;
        stroke-linejoin: round;
        filter: drop-shadow(0 0 8px rgba(var(--padel-accent-rgb), 0.4));
}

.padel-radar__label {
        font-size: 11px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 1px;
        fill: var(--padel-text);
}

/* =====================================================
   v1.9.0 — RACKET SCHEMA (annotated SVG)
   ===================================================== */
.padel-racket-schema {
        position: relative;
        max-width: 700px;
        margin: 30px auto;
}

.padel-racket-schema__svg {
        width: 100%;
        height: auto;
}

.padel-racket-schema__hotspot {
        cursor: pointer;
        transition: var(--padel-transition);
}

.padel-racket-schema__hotspot circle {
        fill: var(--padel-green);
        opacity: 0.7;
        transition: var(--padel-transition);
}

.padel-racket-schema__hotspot:hover circle,
.padel-racket-schema__hotspot.is-active circle {
        opacity: 1;
        r: 12;
        filter: drop-shadow(0 0 8px var(--padel-green));
}

.padel-racket-schema__annotation {
        margin-top: 20px;
        padding: 16px;
        background: var(--padel-surface);
        border: 1px solid var(--padel-border);
        border-radius: var(--padel-radius-sm);
        min-height: 60px;
        font-size: 0.95rem;
        color: var(--padel-text-muted);
        line-height: 1.5;
}

.padel-racket-schema__annotation strong {
        color: var(--padel-green);
        display: block;
        margin-bottom: 4px;
        font-family: var(--padel-font-display);
        font-size: 1.1rem;
        letter-spacing: 1px;
        text-transform: uppercase;
}

/* =====================================================
   v1.9.0 — RECENTLY VIEWED
   ===================================================== */
.padel-recently-viewed {
        padding: 60px 0;
        background: var(--padel-surface);
}

.padel-recently-viewed__title {
        font-family: var(--padel-font-display);
        font-size: clamp(1.5rem, 3vw, 2.2rem);
        font-weight: 800;
        text-transform: uppercase;
        text-align: center;
        margin: 0 0 32px;
        color: var(--padel-text);
}

.padel-recently-viewed__scroll {
        display: flex;
        gap: 16px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        padding-bottom: 16px;
        scrollbar-width: thin;
        scrollbar-color: var(--padel-green) var(--padel-surface-2);
        -webkit-overflow-scrolling: touch;
}

.padel-recently-viewed__scroll::-webkit-scrollbar {
        height: 6px;
}

.padel-recently-viewed__scroll::-webkit-scrollbar-track {
        background: var(--padel-surface-2);
}

.padel-recently-viewed__scroll::-webkit-scrollbar-thumb {
        background: var(--padel-green);
        border-radius: 3px;
}

.padel-recently-viewed__item {
        flex: 0 0 220px;
        scroll-snap-align: start;
}

/* =====================================================
   v1.9.0 — STICKY TABLE OF CONTENTS
   ===================================================== */
.padel-toc {
        position: sticky;
        top: 20px;
        background: var(--padel-surface);
        border: 1px solid var(--padel-border);
        border-radius: var(--padel-radius);
        padding: 18px 22px;
        font-size: 13px;
}

.padel-toc__title {
        font-family: var(--padel-font-display);
        font-size: 1rem;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 1px;
        margin: 0 0 12px;
        color: var(--padel-text);
}

.padel-toc__list {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 8px;
}

.padel-toc__link {
        color: var(--padel-text-muted);
        text-decoration: none;
        transition: var(--padel-transition);
        padding: 4px 0;
        display: block;
        border-left: 2px solid transparent;
        padding-left: 12px;
}

.padel-toc__link:hover,
.padel-toc__link.is-active {
        color: var(--padel-green);
        border-left-color: var(--padel-green);
}

.padel-toc-layout {
        display: grid;
        grid-template-columns: 220px 1fr;
        gap: 32px;
        align-items: start;
}

@media (max-width: 900px) {
        .padel-toc-layout {
                grid-template-columns: 1fr;
        }
        .padel-toc {
                position: static;
                display: none;
        }
}

/* =====================================================
   v1.9.0 — Q&A BLOCK
   ===================================================== */
.padel-qa {
        padding: 60px 0;
}

.padel-qa__list {
        max-width: 800px;
        margin: 0 auto;
}

.padel-qa-item {
        background: var(--padel-surface);
        border: 1px solid var(--padel-border);
        border-radius: var(--padel-radius-sm);
        margin-bottom: 14px;
        overflow: hidden;
}

.padel-qa-item__q {
        display: flex;
        align-items: flex-start;
        gap: 12px;
        padding: 18px 22px;
        cursor: pointer;
        font-weight: 600;
        color: var(--padel-text);
        font-size: 1rem;
        transition: var(--padel-transition);
}

.padel-qa-item__q:hover {
        color: var(--padel-green);
}

.padel-qa-item__q-icon {
        flex-shrink: 0;
        width: 24px;
        height: 24px;
        background: rgba(var(--padel-accent-rgb), 0.15);
        color: var(--padel-green);
        border-radius: 50%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-weight: 900;
        font-size: 14px;
        transition: transform 0.3s ease;
}

.padel-qa-item.is-open .padel-qa-item__q-icon {
        transform: rotate(45deg);
}

.padel-qa-item__a {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.35s ease;
        padding: 0 22px;
        color: var(--padel-text-muted);
        line-height: 1.55;
}

.padel-qa-item.is-open .padel-qa-item__a {
        max-height: 400px;
        padding: 0 22px 18px 58px;
}

/* =====================================================
   v1.9.0 — MOBILE STICKY CTA + BOTTOM NAV
   ===================================================== */
.padel-mobile-cta {
        position: fixed;
        left: 12px;
        right: 12px;
        bottom: 12px;
        z-index: 90;
        display: none;
        background: var(--padel-green);
        color: #000;
        border-radius: var(--padel-radius);
        padding: 14px 18px;
        font-family: var(--padel-font-display);
        font-weight: 800;
        font-size: 1.05rem;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        box-shadow: 0 8px 28px rgba(var(--padel-accent-rgb), 0.5);
        align-items: center;
        justify-content: center;
        gap: 12px;
        text-decoration: none;
        transition: transform 0.2s ease;
}

.padel-mobile-cta:active {
        transform: scale(0.97);
}

.padel-mobile-cta__price {
        font-family: var(--padel-font-mono);
        background: rgba(0, 0, 0, 0.2);
        padding: 4px 10px;
        border-radius: 6px;
        font-variant-numeric: tabular-nums;
}

@media (max-width: 768px) {
        .padel-mobile-cta {
                display: flex;
        }
        body.has-mobile-cta {
                padding-bottom: 80px;
        }
        /* Скрываем десктопный sticky bar на мобиле — mobile CTA берёт на себя */
        .padel-sticky-buy {
                display: none !important;
        }
}

.padel-bottom-nav {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 95;
        display: none;
        background: var(--padel-surface);
        border-top: 1px solid var(--padel-border);
        padding: 6px 0 env(safe-area-inset-bottom, 6px);
        box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.3);
}

.padel-bottom-nav__list {
        display: flex;
        justify-content: space-around;
        list-style: none;
        margin: 0;
        padding: 0;
}

.padel-bottom-nav__item {
        flex: 1;
}

.padel-bottom-nav__link {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 2px;
        padding: 6px 4px;
        color: var(--padel-text-muted);
        text-decoration: none;
        font-size: 10px;
        font-weight: 600;
        transition: var(--padel-transition);
}

.padel-bottom-nav__link.is-active,
.padel-bottom-nav__link:hover {
        color: var(--padel-green);
}

.padel-bottom-nav__icon {
        width: 22px;
        height: 22px;
}

.padel-bottom-nav__badge {
        position: absolute;
        top: 0;
        right: calc(50% - 24px);
        background: var(--padel-green);
        color: #000;
        font-size: 9px;
        font-weight: 800;
        min-width: 16px;
        height: 16px;
        border-radius: 8px;
        padding: 0 4px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
}

.padel-bottom-nav__item {
        position: relative;
}

@media (max-width: 768px) {
        .padel-bottom-nav {
                display: block;
        }
        body.has-bottom-nav {
                padding-bottom: 60px;
        }
        .padel-float-cart {
                display: none !important;
        }
}

/* =====================================================
   v1.9.0 — MOBILE FILTER DRAWER (bottom-sheet)
   ===================================================== */
.padel-filter-drawer-overlay {
        position: fixed;
        inset: 0;
        background: var(--padel-overlay);
        z-index: 250;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}

.padel-filter-drawer-overlay.is-open {
        opacity: 1;
        visibility: visible;
        transition: opacity 0.3s ease, visibility 0s linear 0s;
}

.padel-filter-drawer {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 251;
        background: var(--padel-bg);
        border-radius: 20px 20px 0 0;
        transform: translateY(100%);
        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        max-height: 85vh;
        overflow-y: auto;
        padding: 20px 20px 40px;
        box-shadow: 0 -10px 40px rgba(0, 0, 0, 0.5);
}

.padel-filter-drawer.is-open {
        transform: translateY(0);
}

.padel-filter-drawer__handle {
        width: 40px;
        height: 4px;
        background: var(--padel-text-dim);
        border-radius: 2px;
        margin: 0 auto 18px;
}

.padel-filter-drawer__title {
        font-family: var(--padel-font-display);
        font-size: 1.4rem;
        font-weight: 800;
        text-transform: uppercase;
        margin: 0 0 18px;
        color: var(--padel-text);
}

/* =====================================================
   v1.9.0 — COLOR-CODED CATEGORIES
   ===================================================== */
.padel-card__cat[data-sport="padel"],
.padel-bottom-nav__link[data-sport="padel"] .padel-bottom-nav__icon {
        color: #39FF14;
}

.padel-card__cat[data-sport="tennis"] { color: #FFD700; }
.padel-card__cat[data-sport="squash"] { color: #00BFFF; }
.padel-card__cat[data-sport="badminton"] { color: #FF69B4; }
.padel-card__cat[data-sport="fitness"] { color: #FF8C00; }
.padel-card__cat[data-sport="running"] { color: #00FA9A; }

/* =====================================================
   v1.9.0 — HALF STARS SVG
   ===================================================== */
.padel-stars--svg .padel-stars__star {
        position: relative;
        display: inline-block;
        width: 18px;
        height: 18px;
}

.padel-stars--svg .padel-stars__star-bg,
.padel-stars--svg .padel-stars__star-fg {
        position: absolute;
        inset: 0;
        display: block;
}

.padel-stars--svg .padel-stars__star-bg {
        color: var(--padel-text-dim);
}

.padel-stars--svg .padel-stars__star-fg {
        color: var(--padel-green);
        overflow: hidden;
        text-shadow: 0 0 8px rgba(var(--padel-accent-rgb), 0.6);
}

/* =====================================================
   v1.9.0 — PRINT STYLES
   ===================================================== */
@media print {
        .padel-hero,
        .padel-sticky-buy,
        .padel-float-cart,
        .padel-mobile-cta,
        .padel-bottom-nav,
        .padel-cart-drawer,
        .padel-drawer-overlay,
        .padel-final-cta .padel-btn,
        .padel-buy__actions,
        .padel-card__quick-actions,
        .padel-card__overlay,
        .padel-quickview,
        .padel-lightbox,
        .padel-recently-viewed,
        .padel-related,
        .padel-toc,
        .padel-qa,
        .padel-reviews-section,
        header,
        footer,
        nav {
                display: none !important;
        }

        body {
                background: #fff !important;
                color: #000 !important;
        }

        .padel-single,
        .padel-archive {
                background: #fff !important;
                color: #000 !important;
        }

        .padel-buy {
                padding: 20px 0;
        }

        .padel-buy__title,
        .padel-buy__price,
        .padel-section-title,
        .padel-feature__title {
                color: #000 !important;
        }

        .padel-buy__price,
        .padel-feature__desc,
        .padel-card__price {
                color: #000 !important;
                text-shadow: none !important;
        }

        .padel-feature,
        .padel-buy__specs,
        .padel-spec {
                background: #fff !important;
                border: 1px solid #ccc !important;
        }

        .padel-spec__value {
                color: #000 !important;
        }

        .padel-container {
                max-width: 100% !important;
                padding: 0 !important;
        }

        a[href]:after {
                content: " (" attr(href) ")";
                font-size: 10px;
                color: #555;
        }
}

/* =====================================================
   v1.9.0 — RESPONSIVE IMAGES + PRELOAD
   ===================================================== */
.padel-card__image,
.padel-buy__image,
.padel-hero__image,
.padel-quickview__media img,
.padel-gallery__item img {
        max-width: 100%;
        height: auto;
}

.padel-buy__image[srcset],
.padel-card__image[srcset] {
        width: 100%;
}

/* =====================================================
   v1.9.0 — ADMIN: LIVE PREVIEW + MINI-CARD + DASHBOARD WIDGETS
   ===================================================== */
.padel-admin-preview {
        background: #111;
        border-radius: 10px;
        padding: 18px;
        margin-top: 14px;
        color: #fff;
        font-family: 'Inter', sans-serif;
}

.padel-admin-preview__badge {
        display: inline-block;
        background: #39FF14;
        color: #000;
        padding: 4px 10px;
        border-radius: 50px;
        font-size: 11px;
        font-weight: 800;
        letter-spacing: 1px;
        margin-bottom: 10px;
}

.padel-admin-preview__title {
        font-family: 'Bebas Neue', sans-serif;
        font-size: 1.5rem;
        margin: 0 0 8px;
        color: #fff;
}

.padel-admin-preview__price {
        font-family: 'JetBrains Mono', monospace;
        font-size: 1.4rem;
        font-weight: 700;
        color: #39FF14;
}

.padel-admin-preview__old {
        color: #555;
        text-decoration: line-through;
        font-size: 0.9rem;
        margin-left: 8px;
}

.padel-color-presets {
        display: flex;
        gap: 8px;
        margin-top: 8px;
}

.padel-color-preset {
        width: 28px;
        height: 28px;
        border-radius: 50%;
        border: 2px solid #ccc;
        cursor: pointer;
        transition: transform 0.15s ease;
}

.padel-color-preset:hover {
        transform: scale(1.15);
}

.padel-color-preset.is-active {
        border-color: #39FF14;
        box-shadow: 0 0 0 2px #39FF14;
}

/* Mini-card в списке товаров (админка) */
.column-padel_mini {
        width: 200px;
}

.padel-admin-mini {
        display: flex;
        gap: 10px;
        align-items: center;
}

.padel-admin-mini__thumb {
        width: 50px;
        height: 50px;
        object-fit: contain;
        background: #f0f0f1;
        border-radius: 6px;
}

.padel-admin-mini__info {
        display: flex;
        flex-direction: column;
        gap: 2px;
        font-size: 12px;
}

.padel-admin-mini__price {
        font-weight: 700;
        color: #00a32a;
        font-family: 'JetBrains Mono', monospace;
}

.padel-admin-mini__stock {
        color: #555;
}

.padel-admin-mini__stock.is-low {
        color: #d63638;
        font-weight: 600;
}

/* Dashboard widgets */
.padel-dashboard-widget {
        padding: 12px;
}

.padel-dashboard-widget h3 {
        margin: 0 0 12px;
        font-size: 13px;
        text-transform: uppercase;
        letter-spacing: 1px;
        color: #666;
}

.padel-dashboard-widget__stat {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        padding: 6px 0;
        border-bottom: 1px solid #f0f0f1;
}

.padel-dashboard-widget__stat:last-child {
        border-bottom: 0;
}

.padel-dashboard-widget__stat-value {
        font-family: 'JetBrains Mono', monospace;
        font-weight: 700;
        font-size: 1.1rem;
        color: #00a32a;
}

.padel-dashboard-widget__stat-value.is-warn {
        color: #d63638;
}

.padel-dashboard-widget__list {
        margin: 0;
        padding: 0;
        list-style: none;
}

.padel-dashboard-widget__list li {
        padding: 6px 0;
        border-bottom: 1px solid #f0f0f1;
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-size: 13px;
}

.padel-dashboard-widget__list li:last-child {
        border-bottom: 0;
}

/* =====================================================
   v1.9.0 — THEME TOGGLE BUTTON
   ===================================================== */
.padel-theme-toggle {
        position: fixed;
        bottom: 90px;
        right: 20px;
        z-index: 95;
        width: 44px;
        height: 44px;
        border-radius: 50%;
        background: var(--padel-surface);
        border: 1px solid var(--padel-border-strong);
        color: var(--padel-text);
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: var(--padel-transition);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.padel-theme-toggle:hover {
        background: var(--padel-hover);
        color: var(--padel-green);
        border-color: var(--padel-green);
        transform: scale(1.1);
}

.padel-theme-toggle__icon--moon { display: none; }
.padel-theme-toggle__icon--sun { display: block; }

body.padel-pro-light .padel-theme-toggle__icon--moon { display: block; }
body.padel-pro-light .padel-theme-toggle__icon--sun { display: none; }

@media (max-width: 768px) {
        .padel-theme-toggle {
                bottom: 70px;
                right: 12px;
                width: 38px;
                height: 38px;
        }
}

/* =====================================================
   v1.9.0 — EMAIL TEMPLATES (inline CSS)
   ===================================================== */
.padel-email {
        font-family: 'Inter', -apple-system, sans-serif;
        max-width: 600px;
        margin: 0 auto;
        background: #111;
        color: #fff;
}

.padel-email__header {
        background: #111;
        padding: 24px 28px;
        text-align: center;
        border-bottom: 3px solid #39FF14;
}

.padel-email__logo {
        font-family: 'Bebas Neue', sans-serif;
        font-size: 1.6rem;
        font-weight: 800;
        color: #39FF14;
        letter-spacing: 2px;
        text-transform: uppercase;
}

.padel-email__body {
        background: #1a1a1a;
        padding: 28px;
}

.padel-email h1 {
        font-family: 'Bebas Neue', sans-serif;
        font-size: 1.8rem;
        color: #fff;
        margin: 0 0 16px;
        letter-spacing: 1px;
}

.padel-email h2 {
        font-family: 'Bebas Neue', sans-serif;
        font-size: 1.3rem;
        color: #39FF14;
        margin: 24px 0 12px;
        letter-spacing: 1px;
        text-transform: uppercase;
}

.padel-email p {
        color: #ccc;
        line-height: 1.6;
        margin: 0 0 12px;
}

.padel-email__order-table {
        width: 100%;
        border-collapse: collapse;
        margin: 16px 0;
        background: #222;
        border-radius: 8px;
        overflow: hidden;
}

.padel-email__order-table th {
        background: #39FF14;
        color: #000;
        padding: 10px 12px;
        text-align: left;
        font-size: 12px;
        text-transform: uppercase;
        letter-spacing: 1px;
}

.padel-email__order-table td {
        padding: 10px 12px;
        border-bottom: 1px solid #333;
        color: #fff;
        font-size: 14px;
}

.padel-email__order-table tr:last-child td {
        border-bottom: 0;
}

.padel-email__total {
        display: flex;
        justify-content: space-between;
        padding: 14px 18px;
        background: #39FF14;
        color: #000;
        font-weight: 800;
        font-family: 'JetBrains Mono', monospace;
        font-size: 1.1rem;
        margin-top: 12px;
        border-radius: 8px;
}

.padel-email__footer {
        background: #111;
        padding: 20px 28px;
        text-align: center;
        color: #555;
        font-size: 12px;
        border-top: 1px solid #222;
}

.padel-email__btn {
        display: inline-block;
        background: #39FF14;
        color: #000;
        padding: 12px 28px;
        border-radius: 8px;
        text-decoration: none;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 1px;
        margin: 16px 0;
}

/* =====================================================
   v1.9.1 — ISOLATION LAYER
   Принудительная изоляция от стилей темы WP.
   Тема WP может переопределять кнопки (+/-, qty-stepper, CTA,
   inputs) через общие селекторы button / input / .button / .btn.
   Этот блок повышает специфичность через body.padel-* обёртку
   и !important на критичных свойствах, чтобы гарантированно
   сохранить фирменный вид плагина независимо от темы.
   ===================================================== */

/* ----- Кнопки +/- (quantity steppers) ----- */
body.padel-pro-dark .padel-qty-btn,
body.padel-pro-light .padel-qty-btn,
body.padel-pro-auto .padel-qty-btn,
body.padel-pro-dark .padel-qty__btn,
body.padel-pro-light .padel-qty__btn,
body.padel-pro-auto .padel-qty__btn {
        background: transparent !important;
        border: 0 !important;
        color: var(--padel-white) !important;
        font-family: var(--padel-font) !important;
        font-size: 18px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        text-transform: none !important;
        letter-spacing: normal !important;
        margin: 0 !important;
        padding: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        cursor: pointer !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        border-radius: 0 !important;
        min-height: 0 !important;
        min-width: 0 !important;
}

body.padel-pro-dark .padel-qty-btn:hover,
body.padel-pro-light .padel-qty-btn:hover,
body.padel-pro-auto .padel-qty-btn:hover,
body.padel-pro-dark .padel-qty__btn:hover,
body.padel-pro-light .padel-qty__btn:hover,
body.padel-pro-auto .padel-qty__btn:hover {
        background: rgba(var(--padel-accent-rgb), 0.15) !important;
        color: var(--padel-green) !important;
        border: 0 !important;
        box-shadow: none !important;
}

/* Контейнер quantity-stepper */
body.padel-pro-dark .padel-qty,
body.padel-pro-light .padel-qty,
body.padel-pro-auto .padel-qty,
body.padel-pro-dark .padel-cart-item__qty,
body.padel-pro-light .padel-cart-item__qty,
body.padel-pro-auto .padel-cart-item__qty,
body.padel-pro-dark .padel-cart-drawer-item__qty,
body.padel-pro-light .padel-cart-drawer-item__qty,
body.padel-pro-auto .padel-cart-drawer-item__qty {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: stretch !important;
        background: var(--padel-black-3) !important;
        border: 1px solid rgba(255, 255, 255, 0.1) !important;
        border-radius: var(--padel-radius-sm) !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
        box-shadow: none !important;
        width: auto !important;
        height: auto !important;
}

/* ----- Поля ввода количества ----- */
body.padel-pro-dark .padel-qty-input,
body.padel-pro-light .padel-qty-input,
body.padel-pro-auto .padel-qty-input,
body.padel-pro-dark .padel-qty__input,
body.padel-pro-light .padel-qty__input,
body.padel-pro-auto .padel-qty__input {
        background: transparent !important;
        border: 0 !important;
        border-left: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
        color: var(--padel-white) !important;
        font-family: var(--padel-font-mono) !important;
        font-weight: 700 !important;
        font-size: 15px !important;
        text-align: center !important;
        padding: 0 !important;
        margin: 0 !important;
        box-shadow: none !important;
        outline: 0 !important;
        border-radius: 0 !important;
        -webkit-appearance: none !important;
        -moz-appearance: textfield !important;
        appearance: none !important;
        min-height: 0 !important;
        min-width: 0 !important;
        line-height: 1 !important;
}

body.padel-pro-dark .padel-qty-input:focus,
body.padel-pro-light .padel-qty-input:focus,
body.padel-pro-auto .padel-qty-input:focus,
body.padel-pro-dark .padel-qty__input:focus,
body.padel-pro-light .padel-qty__input:focus,
body.padel-pro-auto .padel-qty__input:focus {
        border-left: 1px solid var(--padel-green) !important;
        border-right: 1px solid var(--padel-green) !important;
        outline: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        color: var(--padel-white) !important;
}

body.padel-pro-dark .padel-qty-input::-webkit-outer-spin-button,
body.padel-pro-dark .padel-qty-input::-webkit-inner-spin-button,
body.padel-pro-light .padel-qty-input::-webkit-outer-spin-button,
body.padel-pro-light .padel-qty-input::-webkit-inner-spin-button,
body.padel-pro-auto .padel-qty-input::-webkit-outer-spin-button,
body.padel-pro-auto .padel-qty-input::-webkit-inner-spin-button,
body.padel-pro-dark .padel-qty__input::-webkit-outer-spin-button,
body.padel-pro-dark .padel-qty__input::-webkit-inner-spin-button,
body.padel-pro-light .padel-qty__input::-webkit-outer-spin-button,
body.padel-pro-light .padel-qty__input::-webkit-inner-spin-button,
body.padel-pro-auto .padel-qty__input::-webkit-outer-spin-button,
body.padel-pro-auto .padel-qty__input::-webkit-inner-spin-button {
        -webkit-appearance: none !important;
        margin: 0 !important;
}

/* ----- Главные кнопки CTA / .padel-btn ----- */
body.padel-pro-dark .padel-btn,
body.padel-pro-light .padel-btn,
body.padel-pro-auto .padel-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 10px !important;
        padding: 16px 32px !important;
        font-family: var(--padel-font-display) !important;
        font-size: 15px !important;
        font-weight: 800 !important;
        letter-spacing: 1.5px !important;
        text-transform: uppercase !important;
        text-decoration: none !important;
        border: 2px solid transparent !important;
        border-radius: var(--padel-radius-sm) !important;
        cursor: pointer !important;
        transition: var(--padel-transition) !important;
        position: relative !important;
        overflow: hidden !important;
        white-space: nowrap !important;
        margin: 0 !important;
        line-height: 1.2 !important;
        box-shadow: none !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        min-height: 0 !important;
        min-width: 0 !important;
        background-image: none !important;
}

body.padel-pro-dark .padel-btn--primary,
body.padel-pro-light .padel-btn--primary,
body.padel-pro-auto .padel-btn--primary {
        background: var(--padel-green) !important;
        color: var(--padel-black) !important;
        border-color: var(--padel-green) !important;
        background-image: none !important;
}

body.padel-pro-dark .padel-btn--primary:hover,
body.padel-pro-light .padel-btn--primary:hover,
body.padel-pro-auto .padel-btn--primary:hover {
        background: var(--padel-green-dark) !important;
        border-color: var(--padel-green-dark) !important;
        color: var(--padel-black) !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 12px 30px rgba(var(--padel-accent-rgb), 0.4) !important;
}

body.padel-pro-dark .padel-btn--ghost,
body.padel-pro-light .padel-btn--ghost,
body.padel-pro-auto .padel-btn--ghost {
        background: transparent !important;
        color: var(--padel-white) !important;
        border-color: rgba(255, 255, 255, 0.2) !important;
        background-image: none !important;
}

body.padel-pro-dark .padel-btn--ghost:hover,
body.padel-pro-light .padel-btn--ghost:hover,
body.padel-pro-auto .padel-btn--ghost:hover {
        border-color: var(--padel-green) !important;
        color: var(--padel-green) !important;
        background: rgba(var(--padel-accent-rgb), 0.08) !important;
}

body.padel-pro-dark .padel-btn--sm,
body.padel-pro-light .padel-btn--sm,
body.padel-pro-auto .padel-btn--sm {
        padding: 10px 20px !important;
        font-size: 12px !important;
}

body.padel-pro-dark .padel-btn--xl,
body.padel-pro-light .padel-btn--xl,
body.padel-pro-auto .padel-btn--xl {
        padding: 22px 48px !important;
        font-size: 17px !important;
}

/* ----- Кнопка удаления товара из корзины ----- */
body.padel-pro-dark .padel-cart-item__remove,
body.padel-pro-light .padel-cart-item__remove,
body.padel-pro-auto .padel-cart-item__remove {
        width: 36px !important;
        height: 36px !important;
        background: transparent !important;
        border: 1px solid rgba(255, 71, 87, 0.3) !important;
        border-radius: 50% !important;
        color: #ff4757 !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        margin: 0 !important;
        font-family: var(--padel-font) !important;
        font-size: 14px !important;
        font-weight: 400 !important;
        text-transform: none !important;
        letter-spacing: normal !important;
        box-shadow: none !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        line-height: 1 !important;
}

body.padel-pro-dark .padel-cart-item__remove:hover,
body.padel-pro-light .padel-cart-item__remove:hover,
body.padel-pro-auto .padel-cart-item__remove:hover {
        background: rgba(255, 71, 87, 0.15) !important;
        border-color: #ff4757 !important;
        transform: rotate(90deg) !important;
        color: #ff4757 !important;
}

/* ----- Все остальные кнопки внутри плагина (input[type=submit], button) ----- */
body.padel-pro-dark .padel-single button,
body.padel-pro-light .padel-single button,
body.padel-pro-auto .padel-single button,
body.padel-pro-dark .padel-archive button,
body.padel-pro-light .padel-archive button,
body.padel-pro-auto .padel-archive button,
body.padel-pro-dark .padel-cart button,
body.padel-pro-light .padel-cart button,
body.padel-pro-auto .padel-cart button,
body.padel-pro-dark .padel-checkout button,
body.padel-pro-light .padel-checkout button,
body.padel-pro-auto .padel-checkout button,
body.padel-pro-dark .padel-account button,
body.padel-pro-light .padel-account button,
body.padel-pro-auto .padel-account button,
body.padel-pro-dark .padel-thankyou button,
body.padel-pro-light .padel-thankyou button,
body.padel-pro-auto .padel-thankyou button {
        font-family: var(--padel-font) !important;
        line-height: 1.4 !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
}

/* ----- Поля ввода внутри плагина (формы, checkout, account) ----- */
body.padel-pro-dark .padel-single input[type="text"],
body.padel-pro-dark .padel-single input[type="email"],
body.padel-pro-dark .padel-single input[type="tel"],
body.padel-pro-dark .padel-single input[type="number"],
body.padel-pro-dark .padel-single input[type="password"],
body.padel-pro-dark .padel-single textarea,
body.padel-pro-dark .padel-single select,
body.padel-pro-light .padel-single input[type="text"],
body.padel-pro-light .padel-single input[type="email"],
body.padel-pro-light .padel-single input[type="tel"],
body.padel-pro-light .padel-single input[type="number"],
body.padel-pro-light .padel-single input[type="password"],
body.padel-pro-light .padel-single textarea,
body.padel-pro-light .padel-single select,
body.padel-pro-auto .padel-single input[type="text"],
body.padel-pro-auto .padel-single input[type="email"],
body.padel-pro-auto .padel-single input[type="tel"],
body.padel-pro-auto .padel-single input[type="number"],
body.padel-pro-auto .padel-single input[type="password"],
body.padel-pro-auto .padel-single textarea,
body.padel-pro-auto .padel-single select,
body.padel-pro-dark .padel-checkout input[type="text"],
body.padel-pro-dark .padel-checkout input[type="email"],
body.padel-pro-dark .padel-checkout input[type="tel"],
body.padel-pro-dark .padel-checkout textarea,
body.padel-pro-dark .padel-checkout select,
body.padel-pro-light .padel-checkout input[type="text"],
body.padel-pro-light .padel-checkout input[type="email"],
body.padel-pro-light .padel-checkout input[type="tel"],
body.padel-pro-light .padel-checkout textarea,
body.padel-pro-light .padel-checkout select,
body.padel-pro-auto .padel-checkout input[type="text"],
body.padel-pro-auto .padel-checkout input[type="email"],
body.padel-pro-auto .padel-checkout input[type="tel"],
body.padel-pro-auto .padel-checkout textarea,
body.padel-pro-auto .padel-checkout select,
body.padel-pro-dark .padel-frontend-form input[type="text"],
body.padel-pro-dark .padel-frontend-form input[type="email"],
body.padel-pro-dark .padel-frontend-form input[type="tel"],
body.padel-pro-dark .padel-frontend-form input[type="number"],
body.padel-pro-dark .padel-frontend-form textarea,
body.padel-pro-dark .padel-frontend-form select,
body.padel-pro-light .padel-frontend-form input[type="text"],
body.padel-pro-light .padel-frontend-form input[type="email"],
body.padel-pro-light .padel-frontend-form input[type="tel"],
body.padel-pro-light .padel-frontend-form input[type="number"],
body.padel-pro-light .padel-frontend-form textarea,
body.padel-pro-light .padel-frontend-form select,
body.padel-pro-auto .padel-frontend-form input[type="text"],
body.padel-pro-auto .padel-frontend-form input[type="email"],
body.padel-pro-auto .padel-frontend-form input[type="tel"],
body.padel-pro-auto .padel-frontend-form input[type="number"],
body.padel-pro-auto .padel-frontend-form textarea,
body.padel-pro-auto .padel-frontend-form select,
body.padel-pro-dark .padel-account input[type="text"],
body.padel-pro-dark .padel-account input[type="email"],
body.padel-pro-dark .padel-account input[type="tel"],
body.padel-pro-dark .padel-account input[type="password"],
body.padel-pro-dark .padel-account textarea,
body.padel-pro-dark .padel-account select,
body.padel-pro-light .padel-account input[type="text"],
body.padel-pro-light .padel-account input[type="email"],
body.padel-pro-light .padel-account input[type="tel"],
body.padel-pro-light .padel-account input[type="password"],
body.padel-pro-light .padel-account textarea,
body.padel-pro-light .padel-account select,
body.padel-pro-auto .padel-account input[type="text"],
body.padel-pro-auto .padel-account input[type="email"],
body.padel-pro-auto .padel-account input[type="tel"],
body.padel-pro-auto .padel-account input[type="password"],
body.padel-pro-auto .padel-account textarea,
body.padel-pro-auto .padel-account select {
        background: var(--padel-black-2) !important;
        border: 1px solid rgba(255, 255, 255, 0.12) !important;
        color: var(--padel-white) !important;
        font-family: var(--padel-font) !important;
        font-size: 15px !important;
        padding: 12px 14px !important;
        border-radius: var(--padel-radius-sm) !important;
        box-shadow: none !important;
        outline: 0 !important;
        margin: 0 0 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        line-height: 1.5 !important;
        box-sizing: border-box !important;
        transition: border-color 0.2s, box-shadow 0.2s !important;
}

body.padel-pro-dark .padel-checkout input:focus,
body.padel-pro-light .padel-checkout input:focus,
body.padel-pro-auto .padel-checkout input:focus,
body.padel-pro-dark .padel-frontend-form input:focus,
body.padel-pro-light .padel-frontend-form input:focus,
body.padel-pro-auto .padel-frontend-form input:focus,
body.padel-pro-dark .padel-account input:focus,
body.padel-pro-light .padel-account input:focus,
body.padel-pro-auto .padel-account input:focus,
body.padel-pro-dark .padel-checkout textarea:focus,
body.padel-pro-light .padel-checkout textarea:focus,
body.padel-pro-auto .padel-checkout textarea:focus,
body.padel-pro-dark .padel-frontend-form textarea:focus,
body.padel-pro-light .padel-frontend-form textarea:focus,
body.padel-pro-auto .padel-frontend-form textarea:focus,
body.padel-pro-dark .padel-account textarea:focus,
body.padel-pro-light .padel-account textarea:focus,
body.padel-pro-auto .padel-account textarea:focus,
body.padel-pro-dark .padel-checkout select:focus,
body.padel-pro-light .padel-checkout select:focus,
body.padel-pro-auto .padel-checkout select:focus,
body.padel-pro-dark .padel-frontend-form select:focus,
body.padel-pro-light .padel-frontend-form select:focus,
body.padel-pro-auto .padel-frontend-form select:focus,
body.padel-pro-dark .padel-account select:focus,
body.padel-pro-light .padel-account select:focus,
body.padel-pro-auto .padel-account select:focus {
        border-color: var(--padel-green) !important;
        box-shadow: 0 0 0 3px rgba(var(--padel-accent-rgb), 0.15) !important;
        outline: 0 !important;
        background: var(--padel-black-2) !important;
        color: var(--padel-white) !important;
}

/* ----- Light theme корректировки для полей ----- */
body.padel-pro-light .padel-checkout input,
body.padel-pro-light .padel-checkout textarea,
body.padel-pro-light .padel-checkout select,
body.padel-pro-light .padel-frontend-form input,
body.padel-pro-light .padel-frontend-form textarea,
body.padel-pro-light .padel-frontend-form select,
body.padel-pro-light .padel-account input,
body.padel-pro-light .padel-account textarea,
body.padel-pro-light .padel-account select {
        background: #ffffff !important;
        border-color: #d4d4d4 !important;
        color: #111111 !important;
}

body.padel-pro-light .padel-checkout input:focus,
body.padel-pro-light .padel-checkout textarea:focus,
body.padel-pro-light .padel-checkout select:focus,
body.padel-pro-light .padel-frontend-form input:focus,
body.padel-pro-light .padel-frontend-form textarea:focus,
body.padel-pro-light .padel-frontend-form select:focus,
body.padel-pro-light .padel-account input:focus,
body.padel-pro-light .padel-account textarea:focus,
body.padel-pro-light .padel-account select:focus {
        background: #ffffff !important;
        color: #111111 !important;
        border-color: var(--padel-green) !important;
}

/* ----- Чекбоксы и radio (промокоды, варианты оплаты, и т.д.) ----- */
body.padel-pro-dark .padel-checkout input[type="checkbox"],
body.padel-pro-dark .padel-checkout input[type="radio"],
body.padel-pro-dark .padel-frontend-form input[type="checkbox"],
body.padel-pro-dark .padel-frontend-form input[type="radio"],
body.padel-pro-dark .padel-cart input[type="checkbox"],
body.padel-pro-dark .padel-cart input[type="radio"],
body.padel-pro-light .padel-checkout input[type="checkbox"],
body.padel-pro-light .padel-checkout input[type="radio"],
body.padel-pro-light .padel-frontend-form input[type="checkbox"],
body.padel-pro-light .padel-frontend-form input[type="radio"],
body.padel-pro-light .padel-cart input[type="checkbox"],
body.padel-pro-light .padel-cart input[type="radio"],
body.padel-pro-auto .padel-checkout input[type="checkbox"],
body.padel-pro-auto .padel-checkout input[type="radio"],
body.padel-pro-auto .padel-frontend-form input[type="checkbox"],
body.padel-pro-auto .padel-frontend-form input[type="radio"],
body.padel-pro-auto .padel-cart input[type="checkbox"],
body.padel-pro-auto .padel-cart input[type="radio"] {
        width: 18px !important;
        height: 18px !important;
        min-width: 18px !important;
        min-height: 18px !important;
        margin: 0 8px 0 0 !important;
        padding: 0 !important;
        border: 1px solid var(--padel-green) !important;
        background: var(--padel-black-2) !important;
        box-shadow: none !important;
        outline: 0 !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        display: inline-block !important;
        position: relative !important;
        cursor: pointer !important;
        vertical-align: middle !important;
        border-radius: 3px !important;
}

body.padel-pro-dark .padel-checkout input[type="radio"],
body.padel-pro-dark .padel-frontend-form input[type="radio"],
body.padel-pro-dark .padel-cart input[type="radio"],
body.padel-pro-light .padel-checkout input[type="radio"],
body.padel-pro-light .padel-frontend-form input[type="radio"],
body.padel-pro-light .padel-cart input[type="radio"],
body.padel-pro-auto .padel-checkout input[type="radio"],
body.padel-pro-auto .padel-frontend-form input[type="radio"],
body.padel-pro-auto .padel-cart input[type="radio"] {
        border-radius: 50% !important;
}

body.padel-pro-dark .padel-checkout input[type="checkbox"]:checked,
body.padel-pro-dark .padel-frontend-form input[type="checkbox"]:checked,
body.padel-pro-dark .padel-cart input[type="checkbox"]:checked,
body.padel-pro-light .padel-checkout input[type="checkbox"]:checked,
body.padel-pro-light .padel-frontend-form input[type="checkbox"]:checked,
body.padel-pro-light .padel-cart input[type="checkbox"]:checked,
body.padel-pro-auto .padel-checkout input[type="checkbox"]:checked,
body.padel-pro-auto .padel-frontend-form input[type="checkbox"]:checked,
body.padel-pro-auto .padel-cart input[type="checkbox"]:checked {
        background: var(--padel-green) !important;
        border-color: var(--padel-green) !important;
}

body.padel-pro-dark .padel-checkout input[type="checkbox"]:checked::after,
body.padel-pro-dark .padel-frontend-form input[type="checkbox"]:checked::after,
body.padel-pro-dark .padel-cart input[type="checkbox"]:checked::after,
body.padel-pro-light .padel-checkout input[type="checkbox"]:checked::after,
body.padel-pro-light .padel-frontend-form input[type="checkbox"]:checked::after,
body.padel-pro-light .padel-cart input[type="checkbox"]:checked::after,
body.padel-pro-auto .padel-checkout input[type="checkbox"]:checked::after,
body.padel-pro-auto .padel-frontend-form input[type="checkbox"]:checked::after,
body.padel-pro-auto .padel-cart input[type="checkbox"]:checked::after {
        content: '✓' !important;
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        color: var(--padel-black) !important;
        font-size: 12px !important;
        font-weight: 900 !important;
        line-height: 1 !important;
}

body.padel-pro-dark .padel-checkout input[type="radio"]:checked,
body.padel-pro-dark .padel-frontend-form input[type="radio"]:checked,
body.padel-pro-dark .padel-cart input[type="radio"]:checked,
body.padel-pro-light .padel-checkout input[type="radio"]:checked,
body.padel-pro-light .padel-frontend-form input[type="radio"]:checked,
body.padel-pro-light .padel-cart input[type="radio"]:checked,
body.padel-pro-auto .padel-checkout input[type="radio"]:checked,
body.padel-pro-auto .padel-frontend-form input[type="radio"]:checked,
body.padel-pro-auto .padel-cart input[type="radio"]:checked {
        background: var(--padel-green) !important;
        border-color: var(--padel-green) !important;
}

body.padel-pro-dark .padel-checkout input[type="radio"]:checked::after,
body.padel-pro-dark .padel-frontend-form input[type="radio"]:checked::after,
body.padel-pro-dark .padel-cart input[type="radio"]:checked::after,
body.padel-pro-light .padel-checkout input[type="radio"]:checked::after,
body.padel-pro-light .padel-frontend-form input[type="radio"]:checked::after,
body.padel-pro-light .padel-cart input[type="radio"]:checked::after,
body.padel-pro-auto .padel-checkout input[type="radio"]:checked::after,
body.padel-pro-auto .padel-frontend-form input[type="radio"]:checked::after,
body.padel-pro-auto .padel-cart input[type="radio"]:checked::after {
        content: '' !important;
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        width: 6px !important;
        height: 6px !important;
        background: var(--padel-black) !important;
        border-radius: 50% !important;
}

/* ----- Ссылки внутри плагина ----- */
body.padel-pro-dark .padel-single a,
body.padel-pro-dark .padel-archive a,
body.padel-pro-dark .padel-cart a,
body.padel-pro-dark .padel-checkout a,
body.padel-pro-dark .padel-account a,
body.padel-pro-dark .padel-thankyou a,
body.padel-pro-light .padel-single a,
body.padel-pro-light .padel-archive a,
body.padel-pro-light .padel-cart a,
body.padel-pro-light .padel-checkout a,
body.padel-pro-light .padel-account a,
body.padel-pro-light .padel-thankyou a,
body.padel-pro-auto .padel-single a,
body.padel-pro-auto .padel-archive a,
body.padel-pro-auto .padel-cart a,
body.padel-pro-auto .padel-checkout a,
body.padel-pro-auto .padel-account a,
body.padel-pro-auto .padel-thankyou a {
        text-decoration: none !important;
        box-shadow: none !important;
}

body.padel-pro-dark .padel-single a:hover,
body.padel-pro-dark .padel-archive a:hover,
body.padel-pro-dark .padel-cart a:hover,
body.padel-pro-dark .padel-checkout a:hover,
body.padel-pro-dark .padel-account a:hover,
body.padel-pro-light .padel-single a:hover,
body.padel-pro-light .padel-archive a:hover,
body.padel-pro-light .padel-cart a:hover,
body.padel-pro-light .padel-checkout a:hover,
body.padel-pro-light .padel-account a:hover,
body.padel-pro-auto .padel-single a:hover,
body.padel-pro-auto .padel-archive a:hover,
body.padel-pro-auto .padel-cart a:hover,
body.padel-pro-auto .padel-checkout a:hover,
body.padel-pro-auto .padel-account a:hover {
        color: var(--padel-green) !important;
        text-decoration: none !important;
}

/* ----- Изображения внутри плагина (защита от border/box-shadow темы) ----- */
body.padel-pro-dark .padel-single img,
body.padel-pro-dark .padel-archive img,
body.padel-pro-dark .padel-cart img,
body.padel-pro-dark .padel-checkout img,
body.padel-pro-dark .padel-grid img,
body.padel-pro-light .padel-single img,
body.padel-pro-light .padel-archive img,
body.padel-pro-light .padel-cart img,
body.padel-pro-light .padel-checkout img,
body.padel-pro-light .padel-grid img,
body.padel-pro-auto .padel-single img,
body.padel-pro-auto .padel-archive img,
body.padel-pro-auto .padel-cart img,
body.padel-pro-auto .padel-checkout img,
body.padel-pro-auto .padel-grid img {
        max-width: 100% !important;
        height: auto !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
        display: inline-block !important;
        vertical-align: middle !important;
}

/* ----- Списки внутри плагина (сброс маркеров темы) ----- */
body.padel-pro-dark .padel-single ul,
body.padel-pro-dark .padel-single ol,
body.padel-pro-dark .padel-archive ul,
body.padel-pro-dark .padel-archive ol,
body.padel-pro-dark .padel-cart ul,
body.padel-pro-dark .padel-cart ol,
body.padel-pro-light .padel-single ul,
body.padel-pro-light .padel-single ol,
body.padel-pro-light .padel-archive ul,
body.padel-pro-light .padel-archive ol,
body.padel-pro-light .padel-cart ul,
body.padel-pro-light .padel-cart ol,
body.padel-pro-auto .padel-single ul,
body.padel-pro-auto .padel-single ol,
body.padel-pro-auto .padel-archive ul,
body.padel-pro-auto .padel-archive ol,
body.padel-pro-auto .padel-cart ul,
body.padel-pro-auto .padel-cart ol {
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
}

/* ----- Таблицы внутри плагина ----- */
body.padel-pro-dark .padel-single table,
body.padel-pro-dark .padel-cart table,
body.padel-pro-dark .padel-checkout table,
body.padel-pro-dark .padel-account table,
body.padel-pro-dark .padel-thankyou table,
body.padel-pro-light .padel-single table,
body.padel-pro-light .padel-cart table,
body.padel-pro-light .padel-checkout table,
body.padel-pro-light .padel-account table,
body.padel-pro-light .padel-thankyou table,
body.padel-pro-auto .padel-single table,
body.padel-pro-auto .padel-cart table,
body.padel-pro-auto .padel-checkout table,
body.padel-pro-auto .padel-account table,
body.padel-pro-auto .padel-thankyou table {
        width: 100% !important;
        border-collapse: collapse !important;
        border: 0 !important;
        margin: 0 !important;
        background: transparent !important;
}

body.padel-pro-dark .padel-single table th,
body.padel-pro-dark .padel-single table td,
body.padel-pro-dark .padel-cart table th,
body.padel-pro-dark .padel-cart table td,
body.padel-pro-dark .padel-checkout table th,
body.padel-pro-dark .padel-checkout table td,
body.padel-pro-light .padel-single table th,
body.padel-pro-light .padel-single table td,
body.padel-pro-light .padel-cart table th,
body.padel-pro-light .padel-cart table td,
body.padel-pro-light .padel-checkout table th,
body.padel-pro-light .padel-checkout table td,
body.padel-pro-auto .padel-single table th,
body.padel-pro-auto .padel-single table td,
body.padel-pro-auto .padel-cart table th,
body.padel-pro-auto .padel-cart table td,
body.padel-pro-auto .padel-checkout table th,
body.padel-pro-auto .padel-checkout table td {
        border: 0 !important;
        padding: 8px !important;
        margin: 0 !important;
        background: transparent !important;
}

/* ----- Заголовки (h1-h6) внутри плагина ----- */
body.padel-pro-dark .padel-single h1,
body.padel-pro-dark .padel-single h2,
body.padel-pro-dark .padel-single h3,
body.padel-pro-dark .padel-single h4,
body.padel-pro-dark .padel-single h5,
body.padel-pro-dark .padel-single h6,
body.padel-pro-dark .padel-archive h1,
body.padel-pro-dark .padel-archive h2,
body.padel-pro-dark .padel-archive h3,
body.padel-pro-dark .padel-archive h4,
body.padel-pro-dark .padel-archive h5,
body.padel-pro-dark .padel-archive h6,
body.padel-pro-light .padel-single h1,
body.padel-pro-light .padel-single h2,
body.padel-pro-light .padel-single h3,
body.padel-pro-light .padel-single h4,
body.padel-pro-light .padel-single h5,
body.padel-pro-light .padel-single h6,
body.padel-pro-light .padel-archive h1,
body.padel-pro-light .padel-archive h2,
body.padel-pro-light .padel-archive h3,
body.padel-pro-light .padel-archive h4,
body.padel-pro-light .padel-archive h5,
body.padel-pro-light .padel-archive h6,
body.padel-pro-auto .padel-single h1,
body.padel-pro-auto .padel-single h2,
body.padel-pro-auto .padel-single h3,
body.padel-pro-auto .padel-single h4,
body.padel-pro-auto .padel-single h5,
body.padel-pro-auto .padel-single h6,
body.padel-pro-auto .padel-archive h1,
body.padel-pro-auto .padel-archive h2,
body.padel-pro-auto .padel-archive h3,
body.padel-pro-auto .padel-archive h4,
body.padel-pro-auto .padel-archive h5,
body.padel-pro-auto .padel-archive h6 {
        font-family: var(--padel-font-display) !important;
        font-weight: 800 !important;
        color: var(--padel-white) !important;
        margin: 0 0 16px !important;
        padding: 0 !important;
        background: transparent !important;
        text-transform: none !important;
        line-height: 1.2 !important;
}

body.padel-pro-light .padel-single h1,
body.padel-pro-light .padel-single h2,
body.padel-pro-light .padel-single h3,
body.padel-pro-light .padel-archive h1,
body.padel-pro-light .padel-archive h2,
body.padel-pro-light .padel-archive h3 {
        color: #111111 !important;
}

/* ----- Параграфы внутри плагина ----- */
body.padel-pro-dark .padel-single p,
body.padel-pro-dark .padel-archive p,
body.padel-pro-dark .padel-cart p,
body.padel-pro-dark .padel-checkout p,
body.padel-pro-light .padel-single p,
body.padel-pro-light .padel-archive p,
body.padel-pro-light .padel-cart p,
body.padel-pro-light .padel-checkout p,
body.padel-pro-auto .padel-single p,
body.padel-pro-auto .padel-archive p,
body.padel-pro-auto .padel-cart p,
body.padel-pro-auto .padel-checkout p {
        margin: 0 0 16px !important;
        padding: 0 !important;
        font-family: var(--padel-font) !important;
        line-height: 1.6 !important;
}

body.padel-pro-dark .padel-single,
body.padel-pro-dark .padel-archive,
body.padel-pro-dark .padel-cart,
body.padel-pro-dark .padel-checkout,
body.padel-pro-dark .padel-account,
body.padel-pro-dark .padel-thankyou {
        color: var(--padel-white) !important;
}

body.padel-pro-light .padel-single,
body.padel-pro-light .padel-archive,
body.padel-pro-light .padel-cart,
body.padel-pro-light .padel-checkout,
body.padel-pro-light .padel-account,
body.padel-pro-light .padel-thankyou {
        color: #111111 !important;
}

body.padel-pro-auto:not(.padel-pro-dark) .padel-single,
body.padel-pro-auto:not(.padel-pro-dark) .padel-archive,
body.padel-pro-auto:not(.padel-pro-dark) .padel-cart,
body.padel-pro-auto:not(.padel-pro-dark) .padel-checkout,
body.padel-pro-auto:not(.padel-pro-dark) .padel-account,
body.padel-pro-auto:not(.padel-pro-dark) .padel-thankyou {
        color: #111111 !important;
}

body.padel-pro-auto:not(.padel-pro-dark) .padel-single h1,
body.padel-pro-auto:not(.padel-pro-dark) .padel-single h2,
body.padel-pro-auto:not(.padel-pro-dark) .padel-archive h1,
body.padel-pro-auto:not(.padel-pro-dark) .padel-archive h2 {
        color: #111111 !important;
}

/* ----- Preload label для qty-input (защита от темы) ----- */
body.padel-pro-dark .padel-qty-input::placeholder,
body.padel-pro-light .padel-qty-input::placeholder,
body.padel-pro-auto .padel-qty-input::placeholder,
body.padel-pro-dark .padel-qty__input::placeholder,
body.padel-pro-light .padel-qty__input::placeholder,
body.padel-pro-auto .padel-qty__input::placeholder {
        color: var(--padel-gray) !important;
        opacity: 1 !important;
}

/* ----- Защита: контейнеры плагина не должны наследовать ширину/отступы темы ----- */
body.padel-pro-dark .padel-container,
body.padel-pro-light .padel-container,
body.padel-pro-auto .padel-container {
        max-width: 1400px !important;
        margin: 0 auto !important;
        padding: 0 24px !important;
        width: 100% !important;
        box-sizing: border-box !important;
}

/* ----- Reset формы внутри плагина от темы ----- */
body.padel-pro-dark .padel-checkout form,
body.padel-pro-dark .padel-frontend-form form,
body.padel-pro-dark .padel-account form,
body.padel-pro-light .padel-checkout form,
body.padel-pro-light .padel-frontend-form form,
body.padel-pro-light .padel-account form,
body.padel-pro-auto .padel-checkout form,
body.padel-pro-auto .padel-frontend-form form,
body.padel-pro-auto .padel-account form {
        background: transparent !important;
        border: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        box-shadow: none !important;
        max-width: none !important;
}

/* ----- Float clearing для компонентов плагина ----- */
body.padel-pro-dark .padel-container::after,
body.padel-pro-light .padel-container::after,
body.padel-pro-auto .padel-container::after,
body.padel-pro-dark .padel-grid::after,
body.padel-pro-light .padel-grid::after,
body.padel-pro-auto .padel-grid::after {
        content: '' !important;
        display: table !important;
        clear: both !important;
}

/* ----- Гарантия цвета для SVG-иконок внутри кнопок (защита от темы) ----- */
body.padel-pro-dark .padel-btn svg,
body.padel-pro-light .padel-btn svg,
body.padel-pro-auto .padel-btn svg,
body.padel-pro-dark .padel-qty-btn svg,
body.padel-pro-light .padel-qty-btn svg,
body.padel-pro-auto .padel-qty-btn svg,
body.padel-pro-dark .padel-qty__btn svg,
body.padel-pro-light .padel-qty__btn svg,
body.padel-pro-auto .padel-qty__btn svg {
        fill: currentColor !important;
        stroke: currentColor !important;
        width: 1em !important;
        height: 1em !important;
        display: inline-block !important;
        vertical-align: middle !important;
}

/* ----- Sticky buy bar (v1.8.0) — защита от темы ----- */
body.padel-pro-dark .padel-sticky-buy,
body.padel-pro-light .padel-sticky-buy,
body.padel-pro-auto .padel-sticky-buy {
        background: var(--padel-black-2) !important;
        border: 1px solid rgba(var(--padel-accent-rgb), 0.2) !important;
        border-radius: var(--padel-radius) !important;
        box-shadow: var(--padel-shadow) !important;
        margin: 0 !important;
        padding: 12px 20px !important;
}

body.padel-pro-light .padel-sticky-buy {
        background: #ffffff !important;
        border-color: #d4d4d4 !important;
        color: #111111 !important;
}

/* ----- Cart drawer (v1.8.0) — защита ----- */
body.padel-pro-dark .padel-cart-drawer,
body.padel-pro-light .padel-cart-drawer,
body.padel-pro-auto .padel-cart-drawer {
        background: var(--padel-black-2) !important;
        color: var(--padel-white) !important;
        border: 0 !important;
        box-shadow: var(--padel-shadow) !important;
        margin: 0 !important;
        padding: 0 !important;
}

body.padel-pro-light .padel-cart-drawer {
        background: #ffffff !important;
        color: #111111 !important;
}

/* ----- Финальный CTA блок (hero) — защита от темы ----- */
body.padel-pro-dark .padel-final-cta,
body.padel-pro-light .padel-final-cta,
body.padel-pro-auto .padel-final-cta {
        background: var(--padel-black-2) !important;
        border: 0 !important;
        margin: 0 !important;
        padding: 80px 24px !important;
}

/* ===== END ISOLATION LAYER v1.9.1 ===== */

/* ----- Дополнительные контейнеры (form / dashboard / wishlist / compare / loyalty / returns) ----- */
/* v1.9.1: расширение изоляционного слоя на все компоненты плагина */

body.padel-pro-dark .padel-frontend-form-wrap input[type="text"],
body.padel-pro-dark .padel-frontend-form-wrap input[type="email"],
body.padel-pro-dark .padel-frontend-form-wrap input[type="tel"],
body.padel-pro-dark .padel-frontend-form-wrap input[type="number"],
body.padel-pro-dark .padel-frontend-form-wrap input[type="password"],
body.padel-pro-dark .padel-frontend-form-wrap textarea,
body.padel-pro-dark .padel-frontend-form-wrap select,
body.padel-pro-dark .padel-ff-form input[type="text"],
body.padel-pro-dark .padel-ff-form input[type="email"],
body.padel-pro-dark .padel-ff-form input[type="tel"],
body.padel-pro-dark .padel-ff-form input[type="number"],
body.padel-pro-dark .padel-ff-form textarea,
body.padel-pro-dark .padel-ff-form select,
body.padel-pro-dark .padel-dashboard input[type="text"],
body.padel-pro-dark .padel-dashboard input[type="email"],
body.padel-pro-dark .padel-dashboard input[type="tel"],
body.padel-pro-dark .padel-dashboard textarea,
body.padel-pro-dark .padel-dashboard select,
body.padel-pro-dark .padel-wishlist input[type="text"],
body.padel-pro-dark .padel-wishlist input[type="email"],
body.padel-pro-dark .padel-wishlist textarea,
body.padel-pro-dark .padel-wishlist select,
body.padel-pro-dark .padel-compare input[type="text"],
body.padel-pro-dark .padel-compare input[type="email"],
body.padel-pro-dark .padel-compare textarea,
body.padel-pro-dark .padel-compare select,
body.padel-pro-dark .padel-loyalty input[type="text"],
body.padel-pro-dark .padel-loyalty input[type="email"],
body.padel-pro-dark .padel-loyalty textarea,
body.padel-pro-dark .padel-loyalty select,
body.padel-pro-dark .padel-returns input[type="text"],
body.padel-pro-dark .padel-returns input[type="email"],
body.padel-pro-dark .padel-returns input[type="tel"],
body.padel-pro-dark .padel-returns textarea,
body.padel-pro-dark .padel-returns select,
body.padel-pro-light .padel-frontend-form-wrap input[type="text"],
body.padel-pro-light .padel-frontend-form-wrap input[type="email"],
body.padel-pro-light .padel-frontend-form-wrap input[type="tel"],
body.padel-pro-light .padel-frontend-form-wrap input[type="number"],
body.padel-pro-light .padel-frontend-form-wrap input[type="password"],
body.padel-pro-light .padel-frontend-form-wrap textarea,
body.padel-pro-light .padel-frontend-form-wrap select,
body.padel-pro-light .padel-ff-form input[type="text"],
body.padel-pro-light .padel-ff-form input[type="email"],
body.padel-pro-light .padel-ff-form input[type="tel"],
body.padel-pro-light .padel-ff-form input[type="number"],
body.padel-pro-light .padel-ff-form textarea,
body.padel-pro-light .padel-ff-form select,
body.padel-pro-light .padel-dashboard input[type="text"],
body.padel-pro-light .padel-dashboard input[type="email"],
body.padel-pro-light .padel-dashboard input[type="tel"],
body.padel-pro-light .padel-dashboard textarea,
body.padel-pro-light .padel-dashboard select,
body.padel-pro-light .padel-wishlist input[type="text"],
body.padel-pro-light .padel-wishlist input[type="email"],
body.padel-pro-light .padel-wishlist textarea,
body.padel-pro-light .padel-wishlist select,
body.padel-pro-light .padel-compare input[type="text"],
body.padel-pro-light .padel-compare input[type="email"],
body.padel-pro-light .padel-compare textarea,
body.padel-pro-light .padel-compare select,
body.padel-pro-light .padel-loyalty input[type="text"],
body.padel-pro-light .padel-loyalty input[type="email"],
body.padel-pro-light .padel-loyalty textarea,
body.padel-pro-light .padel-loyalty select,
body.padel-pro-light .padel-returns input[type="text"],
body.padel-pro-light .padel-returns input[type="email"],
body.padel-pro-light .padel-returns input[type="tel"],
body.padel-pro-light .padel-returns textarea,
body.padel-pro-light .padel-returns select,
body.padel-pro-auto .padel-frontend-form-wrap input[type="text"],
body.padel-pro-auto .padel-frontend-form-wrap input[type="email"],
body.padel-pro-auto .padel-frontend-form-wrap input[type="tel"],
body.padel-pro-auto .padel-frontend-form-wrap input[type="number"],
body.padel-pro-auto .padel-frontend-form-wrap input[type="password"],
body.padel-pro-auto .padel-frontend-form-wrap textarea,
body.padel-pro-auto .padel-frontend-form-wrap select,
body.padel-pro-auto .padel-ff-form input[type="text"],
body.padel-pro-auto .padel-ff-form input[type="email"],
body.padel-pro-auto .padel-ff-form input[type="tel"],
body.padel-pro-auto .padel-ff-form input[type="number"],
body.padel-pro-auto .padel-ff-form textarea,
body.padel-pro-auto .padel-ff-form select,
body.padel-pro-auto .padel-dashboard input[type="text"],
body.padel-pro-auto .padel-dashboard input[type="email"],
body.padel-pro-auto .padel-dashboard input[type="tel"],
body.padel-pro-auto .padel-dashboard textarea,
body.padel-pro-auto .padel-dashboard select,
body.padel-pro-auto .padel-wishlist input[type="text"],
body.padel-pro-auto .padel-wishlist input[type="email"],
body.padel-pro-auto .padel-wishlist textarea,
body.padel-pro-auto .padel-wishlist select,
body.padel-pro-auto .padel-compare input[type="text"],
body.padel-pro-auto .padel-compare input[type="email"],
body.padel-pro-auto .padel-compare textarea,
body.padel-pro-auto .padel-compare select,
body.padel-pro-auto .padel-loyalty input[type="text"],
body.padel-pro-auto .padel-loyalty input[type="email"],
body.padel-pro-auto .padel-loyalty textarea,
body.padel-pro-auto .padel-loyalty select,
body.padel-pro-auto .padel-returns input[type="text"],
body.padel-pro-auto .padel-returns input[type="email"],
body.padel-pro-auto .padel-returns input[type="tel"],
body.padel-pro-auto .padel-returns textarea,
body.padel-pro-auto .padel-returns select {
        background: var(--padel-black-2) !important;
        border: 1px solid rgba(255, 255, 255, 0.12) !important;
        color: var(--padel-white) !important;
        font-family: var(--padel-font) !important;
        font-size: 15px !important;
        padding: 12px 14px !important;
        border-radius: var(--padel-radius-sm) !important;
        box-shadow: none !important;
        outline: 0 !important;
        margin: 0 0 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        line-height: 1.5 !important;
        box-sizing: border-box !important;
        transition: border-color 0.2s, box-shadow 0.2s !important;
}

body.padel-pro-dark .padel-frontend-form-wrap input:focus,
body.padel-pro-dark .padel-ff-form input:focus,
body.padel-pro-dark .padel-frontend-form-wrap textarea:focus,
body.padel-pro-dark .padel-ff-form textarea:focus,
body.padel-pro-dark .padel-frontend-form-wrap select:focus,
body.padel-pro-dark .padel-ff-form select:focus,
body.padel-pro-dark .padel-dashboard input:focus,
body.padel-pro-dark .padel-dashboard textarea:focus,
body.padel-pro-dark .padel-dashboard select:focus,
body.padel-pro-dark .padel-wishlist input:focus,
body.padel-pro-dark .padel-wishlist textarea:focus,
body.padel-pro-dark .padel-wishlist select:focus,
body.padel-pro-dark .padel-compare input:focus,
body.padel-pro-dark .padel-compare textarea:focus,
body.padel-pro-dark .padel-compare select:focus,
body.padel-pro-dark .padel-loyalty input:focus,
body.padel-pro-dark .padel-loyalty textarea:focus,
body.padel-pro-dark .padel-loyalty select:focus,
body.padel-pro-dark .padel-returns input:focus,
body.padel-pro-dark .padel-returns textarea:focus,
body.padel-pro-dark .padel-returns select:focus,
body.padel-pro-light .padel-frontend-form-wrap input:focus,
body.padel-pro-light .padel-ff-form input:focus,
body.padel-pro-light .padel-frontend-form-wrap textarea:focus,
body.padel-pro-light .padel-ff-form textarea:focus,
body.padel-pro-light .padel-frontend-form-wrap select:focus,
body.padel-pro-light .padel-ff-form select:focus,
body.padel-pro-light .padel-dashboard input:focus,
body.padel-pro-light .padel-dashboard textarea:focus,
body.padel-pro-light .padel-dashboard select:focus,
body.padel-pro-light .padel-wishlist input:focus,
body.padel-pro-light .padel-wishlist textarea:focus,
body.padel-pro-light .padel-wishlist select:focus,
body.padel-pro-light .padel-compare input:focus,
body.padel-pro-light .padel-compare textarea:focus,
body.padel-pro-light .padel-compare select:focus,
body.padel-pro-light .padel-loyalty input:focus,
body.padel-pro-light .padel-loyalty textarea:focus,
body.padel-pro-light .padel-loyalty select:focus,
body.padel-pro-light .padel-returns input:focus,
body.padel-pro-light .padel-returns textarea:focus,
body.padel-pro-light .padel-returns select:focus,
body.padel-pro-auto .padel-frontend-form-wrap input:focus,
body.padel-pro-auto .padel-ff-form input:focus,
body.padel-pro-auto .padel-frontend-form-wrap textarea:focus,
body.padel-pro-auto .padel-ff-form textarea:focus,
body.padel-pro-auto .padel-frontend-form-wrap select:focus,
body.padel-pro-auto .padel-ff-form select:focus,
body.padel-pro-auto .padel-dashboard input:focus,
body.padel-pro-auto .padel-dashboard textarea:focus,
body.padel-pro-auto .padel-dashboard select:focus,
body.padel-pro-auto .padel-wishlist input:focus,
body.padel-pro-auto .padel-wishlist textarea:focus,
body.padel-pro-auto .padel-wishlist select:focus,
body.padel-pro-auto .padel-compare input:focus,
body.padel-pro-auto .padel-compare textarea:focus,
body.padel-pro-auto .padel-compare select:focus,
body.padel-pro-auto .padel-loyalty input:focus,
body.padel-pro-auto .padel-loyalty textarea:focus,
body.padel-pro-auto .padel-loyalty select:focus,
body.padel-pro-auto .padel-returns input:focus,
body.padel-pro-auto .padel-returns textarea:focus,
body.padel-pro-auto .padel-returns select:focus {
        border-color: var(--padel-green) !important;
        box-shadow: 0 0 0 3px rgba(var(--padel-accent-rgb), 0.15) !important;
        outline: 0 !important;
}

body.padel-pro-light .padel-frontend-form-wrap input,
body.padel-pro-light .padel-ff-form input,
body.padel-pro-light .padel-frontend-form-wrap textarea,
body.padel-pro-light .padel-ff-form textarea,
body.padel-pro-light .padel-frontend-form-wrap select,
body.padel-pro-light .padel-ff-form select,
body.padel-pro-light .padel-dashboard input,
body.padel-pro-light .padel-dashboard textarea,
body.padel-pro-light .padel-dashboard select,
body.padel-pro-light .padel-wishlist input,
body.padel-pro-light .padel-wishlist textarea,
body.padel-pro-light .padel-wishlist select,
body.padel-pro-light .padel-compare input,
body.padel-pro-light .padel-compare textarea,
body.padel-pro-light .padel-compare select,
body.padel-pro-light .padel-loyalty input,
body.padel-pro-light .padel-loyalty textarea,
body.padel-pro-light .padel-loyalty select,
body.padel-pro-light .padel-returns input,
body.padel-pro-light .padel-returns textarea,
body.padel-pro-light .padel-returns select {
        background: #ffffff !important;
        border-color: #d4d4d4 !important;
        color: #111111 !important;
}

body.padel-pro-light .padel-frontend-form-wrap input:focus,
body.padel-pro-light .padel-ff-form input:focus,
body.padel-pro-light .padel-frontend-form-wrap textarea:focus,
body.padel-pro-light .padel-ff-form textarea:focus,
body.padel-pro-light .padel-frontend-form-wrap select:focus,
body.padel-pro-light .padel-ff-form select:focus,
body.padel-pro-light .padel-dashboard input:focus,
body.padel-pro-light .padel-dashboard textarea:focus,
body.padel-pro-light .padel-dashboard select:focus {
        background: #ffffff !important;
        color: #111111 !important;
        border-color: var(--padel-green) !important;
}

/* Чекбоксы/radio в формах плагина */
body.padel-pro-dark .padel-frontend-form-wrap input[type="checkbox"],
body.padel-pro-dark .padel-frontend-form-wrap input[type="radio"],
body.padel-pro-dark .padel-ff-form input[type="checkbox"],
body.padel-pro-dark .padel-ff-form input[type="radio"],
body.padel-pro-dark .padel-dashboard input[type="checkbox"],
body.padel-pro-dark .padel-dashboard input[type="radio"],
body.padel-pro-dark .padel-wishlist input[type="checkbox"],
body.padel-pro-dark .padel-wishlist input[type="radio"],
body.padel-pro-dark .padel-compare input[type="checkbox"],
body.padel-pro-dark .padel-compare input[type="radio"],
body.padel-pro-dark .padel-loyalty input[type="checkbox"],
body.padel-pro-dark .padel-loyalty input[type="radio"],
body.padel-pro-dark .padel-returns input[type="checkbox"],
body.padel-pro-dark .padel-returns input[type="radio"],
body.padel-pro-light .padel-frontend-form-wrap input[type="checkbox"],
body.padel-pro-light .padel-frontend-form-wrap input[type="radio"],
body.padel-pro-light .padel-ff-form input[type="checkbox"],
body.padel-pro-light .padel-ff-form input[type="radio"],
body.padel-pro-light .padel-dashboard input[type="checkbox"],
body.padel-pro-light .padel-dashboard input[type="radio"],
body.padel-pro-light .padel-wishlist input[type="checkbox"],
body.padel-pro-light .padel-wishlist input[type="radio"],
body.padel-pro-light .padel-compare input[type="checkbox"],
body.padel-pro-light .padel-compare input[type="radio"],
body.padel-pro-light .padel-loyalty input[type="checkbox"],
body.padel-pro-light .padel-loyalty input[type="radio"],
body.padel-pro-light .padel-returns input[type="checkbox"],
body.padel-pro-light .padel-returns input[type="radio"],
body.padel-pro-auto .padel-frontend-form-wrap input[type="checkbox"],
body.padel-pro-auto .padel-frontend-form-wrap input[type="radio"],
body.padel-pro-auto .padel-ff-form input[type="checkbox"],
body.padel-pro-auto .padel-ff-form input[type="radio"],
body.padel-pro-auto .padel-dashboard input[type="checkbox"],
body.padel-pro-auto .padel-dashboard input[type="radio"],
body.padel-pro-auto .padel-wishlist input[type="checkbox"],
body.padel-pro-auto .padel-wishlist input[type="radio"],
body.padel-pro-auto .padel-compare input[type="checkbox"],
body.padel-pro-auto .padel-compare input[type="radio"],
body.padel-pro-auto .padel-loyalty input[type="checkbox"],
body.padel-pro-auto .padel-loyalty input[type="radio"],
body.padel-pro-auto .padel-returns input[type="checkbox"],
body.padel-pro-auto .padel-returns input[type="radio"] {
        width: 18px !important;
        height: 18px !important;
        min-width: 18px !important;
        min-height: 18px !important;
        margin: 0 8px 0 0 !important;
        padding: 0 !important;
        border: 1px solid var(--padel-green) !important;
        background: var(--padel-black-2) !important;
        box-shadow: none !important;
        outline: 0 !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        display: inline-block !important;
        position: relative !important;
        cursor: pointer !important;
        vertical-align: middle !important;
}

body.padel-pro-dark .padel-frontend-form-wrap input[type="checkbox"]:checked,
body.padel-pro-dark .padel-ff-form input[type="checkbox"]:checked,
body.padel-pro-dark .padel-dashboard input[type="checkbox"]:checked,
body.padel-pro-dark .padel-wishlist input[type="checkbox"]:checked,
body.padel-pro-dark .padel-compare input[type="checkbox"]:checked,
body.padel-pro-dark .padel-loyalty input[type="checkbox"]:checked,
body.padel-pro-dark .padel-returns input[type="checkbox"]:checked,
body.padel-pro-light .padel-frontend-form-wrap input[type="checkbox"]:checked,
body.padel-pro-light .padel-ff-form input[type="checkbox"]:checked,
body.padel-pro-light .padel-dashboard input[type="checkbox"]:checked,
body.padel-pro-light .padel-wishlist input[type="checkbox"]:checked,
body.padel-pro-light .padel-compare input[type="checkbox"]:checked,
body.padel-pro-light .padel-loyalty input[type="checkbox"]:checked,
body.padel-pro-light .padel-returns input[type="checkbox"]:checked,
body.padel-pro-auto .padel-frontend-form-wrap input[type="checkbox"]:checked,
body.padel-pro-auto .padel-ff-form input[type="checkbox"]:checked,
body.padel-pro-auto .padel-dashboard input[type="checkbox"]:checked,
body.padel-pro-auto .padel-wishlist input[type="checkbox"]:checked,
body.padel-pro-auto .padel-compare input[type="checkbox"]:checked,
body.padel-pro-auto .padel-loyalty input[type="checkbox"]:checked,
body.padel-pro-auto .padel-returns input[type="checkbox"]:checked {
        background: var(--padel-green) !important;
        border-color: var(--padel-green) !important;
}

/* Кнопки "Удалить" (×) в повторителе преимуществ */
body.padel-pro-dark .padel-ff-feature-del,
body.padel-pro-light .padel-ff-feature-del,
body.padel-pro-auto .padel-ff-feature-del {
        background: transparent !important;
        border: 1px solid rgba(255, 71, 87, 0.3) !important;
        color: #ff4757 !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        padding: 6px 10px !important;
        border-radius: var(--padel-radius-sm) !important;
        cursor: pointer !important;
        margin: 0 !important;
        box-shadow: none !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
}

body.padel-pro-dark .padel-ff-feature-del:hover,
body.padel-pro-light .padel-ff-feature-del:hover,
body.padel-pro-auto .padel-ff-feature-del:hover {
        background: rgba(255, 71, 87, 0.15) !important;
        border-color: #ff4757 !important;
        color: #ff4757 !important;
}

/* Кнопка "Добавить преимущество" */
body.padel-pro-dark .padel-ff-feature-add,
body.padel-pro-light .padel-ff-feature-add,
body.padel-pro-auto .padel-ff-feature-add {
        background: transparent !important;
        border: 1px dashed rgba(var(--padel-accent-rgb), 0.4) !important;
        color: var(--padel-green) !important;
        font-family: var(--padel-font) !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        padding: 10px 16px !important;
        border-radius: var(--padel-radius-sm) !important;
        cursor: pointer !important;
        margin: 8px 0 0 !important;
        box-shadow: none !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        text-transform: none !important;
        letter-spacing: normal !important;
}

body.padel-pro-dark .padel-ff-feature-add:hover,
body.padel-pro-light .padel-ff-feature-add:hover,
body.padel-pro-auto .padel-ff-feature-add:hover {
        background: rgba(var(--padel-accent-rgb), 0.08) !important;
        border-color: var(--padel-green) !important;
        color: var(--padel-green) !important;
}

/* Кнопки внутри плагина (button без класса .padel-btn) — общая защита */
body.padel-pro-dark .padel-single button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove):not(.padel-ff-feature-del):not(.padel-ff-feature-add),
body.padel-pro-dark .padel-archive button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-dark .padel-cart button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-dark .padel-checkout button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-dark .padel-account button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-dark .padel-frontend-form-wrap button:not(.padel-btn):not(.padel-ff-feature-del):not(.padel-ff-feature-add),
body.padel-pro-dark .padel-ff-form button:not(.padel-btn):not(.padel-ff-feature-del):not(.padel-ff-feature-add),
body.padel-pro-dark .padel-dashboard button:not(.padel-btn),
body.padel-pro-light .padel-single button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-light .padel-archive button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-light .padel-cart button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-light .padel-checkout button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-light .padel-account button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-light .padel-frontend-form-wrap button:not(.padel-btn):not(.padel-ff-feature-del):not(.padel-ff-feature-add),
body.padel-pro-light .padel-ff-form button:not(.padel-btn):not(.padel-ff-feature-del):not(.padel-ff-feature-add),
body.padel-pro-light .padel-dashboard button:not(.padel-btn),
body.padel-pro-auto .padel-single button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-auto .padel-archive button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-auto .padel-cart button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-auto .padel-checkout button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-auto .padel-account button:not(.padel-btn):not(.padel-qty-btn):not(.padel-qty__btn):not(.padel-cart-item__remove),
body.padel-pro-auto .padel-frontend-form-wrap button:not(.padel-btn):not(.padel-ff-feature-del):not(.padel-ff-feature-add),
body.padel-pro-auto .padel-ff-form button:not(.padel-btn):not(.padel-ff-feature-del):not(.padel-ff-feature-add),
body.padel-pro-auto .padel-dashboard button:not(.padel-btn) {
        font-family: var(--padel-font) !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        line-height: 1.4 !important;
        padding: 10px 16px !important;
        border-radius: var(--padel-radius-sm) !important;
        -webkit-appearance: none !important;
        -moz-appearance: none !important;
        appearance: none !important;
        cursor: pointer !important;
}

/* ===== END EXTENDED ISOLATION LAYER v1.9.1 ===== */

/* =====================================================
   v1.9.2 — MOBILE FIXES
   Комплексные исправления мобильной версии по результатам
   визуального аудита скриншота.
   ===================================================== */

/* ----- 1. Боковые отступы на мобильных (16px минимум) ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-container,
        body.padel-pro-light .padel-container,
        body.padel-pro-auto .padel-container {
                padding-left: 16px !important;
                padding-right: 16px !important;
        }

        body.padel-pro-dark .padel-buy__inner,
        body.padel-pro-light .padel-buy__inner,
        body.padel-pro-auto .padel-buy__inner {
                padding-left: 0 !important;
                padding-right: 0 !important;
        }

        /* Гарантируем отступы на всех ключевых секциях */
        body.padel-pro-dark .padel-buy,
        body.padel-pro-light .padel-buy,
        body.padel-pro-auto .padel-buy,
        body.padel-pro-dark .padel-features,
        body.padel-pro-light .padel-features,
        body.padel-pro-auto .padel-features,
        body.padel-pro-dark .padel-description,
        body.padel-pro-light .padel-description,
        body.padel-pro-auto .padel-description,
        body.padel-pro-dark .padel-gallery,
        body.padel-pro-light .padel-gallery,
        body.padel-pro-auto .padel-gallery,
        body.padel-pro-dark .padel-reviews-section,
        body.padel-pro-light .padel-reviews-section,
        body.padel-pro-auto .padel-reviews-section,
        body.padel-pro-dark .padel-related,
        body.padel-pro-light .padel-related,
        body.padel-pro-auto .padel-related {
                padding-left: 0 !important;
                padding-right: 0 !important;
        }

        /* Заголовок товара не прижат к краю */
        body.padel-pro-dark .padel-buy__title,
        body.padel-pro-light .padel-buy__title,
        body.padel-pro-auto .padel-buy__title {
                font-size: clamp(1.5rem, 6vw, 2.2rem) !important;
                margin-bottom: 16px !important;
                word-wrap: break-word !important;
                overflow-wrap: break-word !important;
                hyphens: auto !important;
        }

        /* Блок цены: не выходить за пределы */
        body.padel-pro-dark .padel-buy__price-block,
        body.padel-pro-light .padel-buy__price-block,
        body.padel-pro-auto .padel-buy__price-block {
                gap: 10px !important;
                margin-bottom: 24px !important;
                flex-wrap: wrap !important;
        }

        body.padel-pro-dark .padel-buy__price,
        body.padel-pro-light .padel-buy__price,
        body.padel-pro-auto .padel-buy__price {
                font-size: clamp(1.8rem, 8vw, 2.6rem) !important;
                letter-spacing: -0.5px !important;
        }

        body.padel-pro-dark .padel-buy__old-price,
        body.padel-pro-light .padel-buy__old-price,
        body.padel-pro-auto .padel-buy__old-price {
                font-size: 1rem !important;
                white-space: nowrap !important;
        }

        body.padel-pro-dark .padel-buy__discount,
        body.padel-pro-light .padel-buy__discount,
        body.padel-pro-auto .padel-buy__discount {
                font-size: 12px !important;
                padding: 4px 10px !important;
                white-space: nowrap !important;
        }
}

/* ----- 2. Quantity Stepper на мобиле: выравнивание высоты, видимость обеих кнопок ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-buy__actions,
        body.padel-pro-light .padel-buy__actions,
        body.padel-pro-auto .padel-buy__actions {
                flex-direction: row !important;
                flex-wrap: wrap !important;
                gap: 10px !important;
                margin-bottom: 24px !important;
        }

        /* Quantity stepper в блоке покупки: растягивается на всю ширину */
        body.padel-pro-dark .padel-buy__actions .padel-qty,
        body.padel-pro-light .padel-buy__actions .padel-qty,
        body.padel-pro-auto .padel-buy__actions .padel-qty {
                width: 100% !important;
                display: flex !important;
                align-items: stretch !important;
                justify-content: space-between !important;
                height: 52px !important;
                border-radius: var(--padel-radius-sm) !important;
        }

        body.padel-pro-dark .padel-buy__actions .padel-qty__btn,
        body.padel-pro-light .padel-buy__actions .padel-qty__btn,
        body.padel-pro-auto .padel-buy__actions .padel-qty__btn {
                width: 52px !important;
                height: 52px !important;
                font-size: 22px !important;
                font-weight: 800 !important;
                flex-shrink: 0 !important;
                display: inline-flex !important;
                align-items: center !important;
                justify-content: center !important;
        }

        body.padel-pro-dark .padel-buy__actions .padel-qty__input,
        body.padel-pro-light .padel-buy__actions .padel-qty__input,
        body.padel-pro-auto .padel-buy__actions .padel-qty__input {
                flex: 1 1 auto !important;
                width: auto !important;
                height: 52px !important;
                font-size: 18px !important;
                border-left: 1px solid rgba(255, 255, 255, 0.1) !important;
                border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
        }

        /* Кнопки CTA на мобиле: бок о бок, не колонкой */
        body.padel-pro-dark .padel-buy__actions .padel-btn,
        body.padel-pro-light .padel-buy__actions .padel-btn,
        body.padel-pro-auto .padel-buy__actions .padel-btn {
                flex: 1 1 calc(50% - 5px) !important;
                width: auto !important;
                min-width: 0 !important;
                padding: 14px 16px !important;
                font-size: 12px !important;
                letter-spacing: 0.5px !important;
                white-space: nowrap !important;
                overflow: hidden !important;
                text-overflow: ellipsis !important;
                height: 52px !important;
                display: inline-flex !important;
                align-items: center !important;
                justify-content: center !important;
        }
}

/* Очень узкие экраны (<380px): кнопки в столбик */
@media (max-width: 380px) {
        body.padel-pro-dark .padel-buy__actions .padel-btn,
        body.padel-pro-light .padel-buy__actions .padel-btn,
        body.padel-pro-auto .padel-buy__actions .padel-btn {
                flex: 1 1 100% !important;
                width: 100% !important;
        }
}

/* ----- 3. Sticky Buy Bar: исправление обрезки кнопок и текста ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-sticky-buy__inner,
        body.padel-pro-light .padel-sticky-buy__inner,
        body.padel-pro-auto .padel-sticky-buy__inner {
                padding: 10px 0 !important;
                gap: 10px !important;
                justify-content: space-between !important;
        }

        /* Скрываем мини-изображение на очень маленьких экранах */
        body.padel-pro-dark .padel-sticky-buy__thumb,
        body.padel-pro-light .padel-sticky-buy__thumb,
        body.padel-pro-auto .padel-sticky-buy__thumb {
                width: 40px !important;
                height: 40px !important;
                flex-shrink: 0 !important;
        }

        body.padel-pro-dark .padel-sticky-buy__info,
        body.padel-pro-light .padel-sticky-buy__info,
        body.padel-pro-auto .padel-sticky-buy__info {
                gap: 10px !important;
                min-width: 0 !important;
                flex: 1 1 auto !important;
        }

        body.padel-pro-dark .padel-sticky-buy__title,
        body.padel-pro-light .padel-sticky-buy__title,
        body.padel-pro-auto .padel-sticky-buy__title {
                max-width: 100% !important;
                font-size: 0.8rem !important;
                white-space: nowrap !important;
                overflow: hidden !important;
                text-overflow: ellipsis !important;
                margin-bottom: 2px !important;
        }

        body.padel-pro-dark .padel-sticky-buy__price-block,
        body.padel-pro-light .padel-sticky-buy__price-block,
        body.padel-pro-auto .padel-sticky-buy__price-block {
                gap: 6px !important;
        }

        body.padel-pro-dark .padel-sticky-buy__price,
        body.padel-pro-light .padel-sticky-buy__price,
        body.padel-pro-auto .padel-sticky-buy__price {
                font-size: 0.95rem !important;
        }

        body.padel-pro-dark .padel-sticky-buy__old,
        body.padel-pro-light .padel-sticky-buy__old,
        body.padel-pro-auto .padel-sticky-buy__old {
                font-size: 0.75rem !important;
        }

        body.padel-pro-dark .padel-sticky-buy__actions,
        body.padel-pro-light .padel-sticky-buy__actions,
        body.padel-pro-auto .padel-sticky-buy__actions {
                gap: 8px !important;
                flex-shrink: 0 !important;
        }

        body.padel-pro-dark .padel-sticky-buy__actions .padel-btn,
        body.padel-pro-light .padel-sticky-buy__actions .padel-btn,
        body.padel-pro-auto .padel-sticky-buy__actions .padel-btn {
                padding: 10px 14px !important;
                font-size: 11px !important;
                letter-spacing: 0.3px !important;
                white-space: nowrap !important;
                overflow: hidden !important;
                text-overflow: ellipsis !important;
                max-width: 160px !important;
        }
}

/* ----- 4. Float cart button и toast — не перекрывать контент ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-toast,
        body.padel-pro-light .padel-toast,
        body.padel-pro-auto .padel-toast {
                bottom: 90px !important;
                left: 12px !important;
                right: 12px !important;
                max-width: none !important;
                padding: 12px 14px !important;
                font-size: 0.85rem !important;
        }

        body.padel-pro-dark .padel-toast__text,
        body.padel-pro-light .padel-toast__text,
        body.padel-pro-auto .padel-toast__text {
                font-size: 0.85rem !important;
                line-height: 1.35 !important;
        }

        body.padel-pro-dark .padel-float-cart,
        body.padel-pro-light .padel-float-cart,
        body.padel-pro-auto .padel-float-cart {
                bottom: 20px !important;
                right: 16px !important;
        }
}

/* ----- 5. Отступы между блоками на мобиле (air between sections) ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-buy__actions,
        body.padel-pro-light .padel-buy__actions,
        body.padel-pro-auto .padel-buy__actions {
                margin-bottom: 20px !important;
        }

        body.padel-pro-dark .padel-live-purchase,
        body.padel-pro-light .padel-live-purchase,
        body.padel-pro-auto .padel-live-purchase {
                margin-top: 16px !important;
                font-size: 0.8rem !important;
        }

        body.padel-pro-dark .padel-delivery,
        body.padel-pro-light .padel-delivery,
        body.padel-pro-auto .padel-delivery {
                margin-top: 12px !important;
                font-size: 0.8rem !important;
        }

        /* Спецификации на мобиле: 2 колонки, аккуратные отступы */
        body.padel-pro-dark .padel-buy__specs,
        body.padel-pro-light .padel-buy__specs,
        body.padel-pro-auto .padel-buy__specs {
                gap: 10px !important;
                padding-top: 20px !important;
                margin-top: 20px !important;
        }

        /* Trust badges на мобиле: вертикально или 2 в ряд */
        body.padel-pro-dark .padel-trust-badges,
        body.padel-pro-light .padel-trust-badges,
        body.padel-pro-auto .padel-trust-badges {
                flex-wrap: wrap !important;
                gap: 8px !important;
                justify-content: center !important;
        }
}

/* ----- 6. Hero на мобильных: уменьшенные отступы, корректные размеры ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-hero,
        body.padel-pro-light .padel-hero,
        body.padel-pro-auto .padel-hero {
                padding: 50px 16px 40px !important;
                min-height: 70vh !important;
        }

        body.padel-pro-dark .padel-hero__title,
        body.padel-pro-light .padel-hero__title,
        body.padel-pro-auto .padel-hero__title {
                font-size: clamp(2rem, 9vw, 3rem) !important;
                line-height: 1.05 !important;
                margin-bottom: 16px !important;
        }

        body.padel-pro-dark .padel-hero__subtitle,
        body.padel-pro-light .padel-hero__subtitle,
        body.padel-pro-auto .padel-hero__subtitle {
                font-size: 1rem !important;
                line-height: 1.5 !important;
        }

        body.padel-pro-dark .padel-hero__badge,
        body.padel-pro-light .padel-hero__badge,
        body.padel-pro-auto .padel-hero__badge {
                font-size: 11px !important;
                padding: 4px 10px !important;
                margin-bottom: 16px !important;
        }
}

/* ----- 7. Карточки товаров в каталоге на мобиле ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-card__title,
        body.padel-pro-light .padel-card__title,
        body.padel-pro-auto .padel-card__title {
                font-size: 1rem !important;
                line-height: 1.3 !important;
                margin-bottom: 8px !important;
        }

        body.padel-pro-dark .padel-card__price,
        body.padel-pro-light .padel-card__price,
        body.padel-pro-auto .padel-card__price {
                font-size: 1.1rem !important;
        }

        body.padel-pro-dark .padel-card__old-price,
        body.padel-pro-light .padel-card__old-price,
        body.padel-pro-auto .padel-card__old-price {
                font-size: 0.85rem !important;
        }

        body.padel-pro-dark .padel-card__badge,
        body.padel-pro-light .padel-card__badge,
        body.padel-pro-auto .padel-card__badge {
                font-size: 10px !important;
                padding: 3px 8px !important;
        }

        body.padel-pro-dark .padel-card__footer,
        body.padel-pro-light .padel-card__footer,
        body.padel-pro-auto .padel-card__footer {
                gap: 8px !important;
        }

        body.padel-pro-dark .padel-card__footer .padel-btn,
        body.padel-pro-light .padel-card__footer .padel-btn,
        body.padel-pro-auto .padel-card__footer .padel-btn {
                padding: 10px 12px !important;
                font-size: 11px !important;
                letter-spacing: 0.3px !important;
        }
}

/* ----- 8. Корзина и оформление заказа на мобиле ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-cart,
        body.padel-pro-light .padel-cart,
        body.padel-pro-auto .padel-cart {
                padding: 16px 0 !important;
        }

        body.padel-pro-dark .padel-cart-item,
        body.padel-pro-light .padel-cart-item,
        body.padel-pro-auto .padel-cart-item {
                padding: 14px 0 !important;
                gap: 10px !important;
        }

        body.padel-pro-dark .padel-cart-item__qty,
        body.padel-pro-light .padel-cart-item__qty,
        body.padel-pro-auto .padel-cart-item__qty {
                height: 40px !important;
        }

        body.padel-pro-dark .padel-cart-item__qty .padel-qty-btn,
        body.padel-pro-light .padel-cart-item__qty .padel-qty-btn,
        body.padel-pro-auto .padel-cart-item__qty .padel-qty-btn {
                width: 36px !important;
                height: 40px !important;
                font-size: 16px !important;
        }

        body.padel-pro-dark .padel-cart-item__qty .padel-qty-input,
        body.padel-pro-light .padel-cart-item__qty .padel-qty-input,
        body.padel-pro-auto .padel-cart-item__qty .padel-qty-input {
                width: 40px !important;
                height: 40px !important;
                font-size: 14px !important;
        }

        body.padel-pro-dark .padel-cart__summary,
        body.padel-pro-light .padel-cart__summary,
        body.padel-pro-auto .padel-cart__summary {
                padding: 18px !important;
        }

        body.padel-pro-dark .padel-cart__summary-row,
        body.padel-pro-light .padel-cart__summary-row,
        body.padel-pro-auto .padel-cart__summary-row {
                padding: 8px 0 !important;
                font-size: 0.9rem !important;
        }

        body.padel-pro-dark .padel-checkout,
        body.padel-pro-light .padel-checkout,
        body.padel-pro-auto .padel-checkout {
                padding: 16px 0 !important;
        }

        body.padel-pro-dark .padel-checkout input[type="text"],
        body.padel-pro-dark .padel-checkout input[type="email"],
        body.padel-pro-dark .padel-checkout input[type="tel"],
        body.padel-pro-dark .padel-checkout textarea,
        body.padel-pro-dark .padel-checkout select,
        body.padel-pro-light .padel-checkout input[type="text"],
        body.padel-pro-light .padel-checkout input[type="email"],
        body.padel-pro-light .padel-checkout input[type="tel"],
        body.padel-pro-light .padel-checkout textarea,
        body.padel-pro-light .padel-checkout select,
        body.padel-pro-auto .padel-checkout input[type="text"],
        body.padel-pro-auto .padel-checkout input[type="email"],
        body.padel-pro-auto .padel-checkout input[type="tel"],
        body.padel-pro-auto .padel-checkout textarea,
        body.padel-pro-auto .padel-checkout select {
                font-size: 16px !important;
                padding: 12px 14px !important;
                margin-bottom: 10px !important;
        }
}

/* ----- 9. Catalog filters на мобиле ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-archive__header,
        body.padel-pro-light .padel-archive__header,
        body.padel-pro-auto .padel-archive__header {
                padding: 30px 0 20px !important;
        }

        body.padel-pro-dark .padel-archive__title,
        body.padel-pro-light .padel-archive__title,
        body.padel-pro-auto .padel-archive__title {
                font-size: clamp(1.5rem, 7vw, 2rem) !important;
                margin-bottom: 8px !important;
        }

        body.padel-pro-dark .padel-archive__subtitle,
        body.padel-pro-light .padel-archive__subtitle,
        body.padel-pro-auto .padel-archive__subtitle {
                font-size: 0.9rem !important;
        }
}

/* ----- 10. Mobile bottom nav — не перекрывать контент ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-bottom-nav,
        body.padel-pro-light .padel-bottom-nav,
        body.padel-pro-auto .padel-bottom-nav {
                height: 56px !important;
                padding: 0 8px !important;
        }

        body.padel-pro-dark .padel-bottom-nav__item,
        body.padel-pro-light .padel-bottom-nav__item,
        body.padel-pro-auto .padel-bottom-nav__item {
                padding: 6px 4px !important;
                font-size: 10px !important;
        }

        /* Добавить отступ снизу страницы чтобы bottom-nav не закрывал контент */
        body.padel-pro-dark .padel-single,
        body.padel-pro-light .padel-single,
        body.padel-pro-auto .padel-single {
                padding-bottom: 70px !important;
        }
}

/* ----- 11. Mobile sticky CTA — корректное позиционирование ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-mobile-cta,
        body.padel-pro-light .padel-mobile-cta,
        body.padel-pro-auto .padel-mobile-cta {
                left: 12px !important;
                right: 12px !important;
                bottom: 12px !important;
                padding: 12px 16px !important;
                font-size: 13px !important;
                border-radius: var(--padel-radius-sm) !important;
        }
}

/* ----- 12. Final CTA на мобиле ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-final-cta,
        body.padel-pro-light .padel-final-cta,
        body.padel-pro-auto .padel-final-cta {
                padding: 50px 16px !important;
        }

        body.padel-pro-dark .padel-final-cta__title,
        body.padel-pro-light .padel-final-cta__title,
        body.padel-pro-auto .padel-final-cta__title {
                font-size: clamp(1.5rem, 7vw, 2.2rem) !important;
                margin-bottom: 16px !important;
        }

        body.padel-pro-dark .padel-final-cta__price,
        body.padel-pro-light .padel-final-cta__price,
        body.padel-pro-auto .padel-final-cta__price {
                margin-bottom: 20px !important;
        }

        body.padel-pro-dark .padel-final-cta .padel-btn,
        body.padel-pro-light .padel-final-cta .padel-btn,
        body.padel-pro-auto .padel-final-cta .padel-btn {
                width: 100% !important;
                padding: 16px 20px !important;
                font-size: 13px !important;
        }
}

/* ----- 13. Quick View modal на мобиле ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-quickview,
        body.padel-pro-light .padel-quickview,
        body.padel-pro-auto .padel-quickview {
                width: calc(100% - 24px) !important;
                max-width: none !important;
                max-height: 85vh !important;
                padding: 20px 16px !important;
        }
}

/* ----- 14. Cart drawer на мобиле — на весь экран ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-cart-drawer,
        body.padel-pro-light .padel-cart-drawer,
        body.padel-pro-auto .padel-cart-drawer {
                width: 100% !important;
                max-width: 100% !important;
        }
}

/* ----- 15. Lightbox (gallery) на мобиле ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-lightbox,
        body.padel-pro-light .padel-lightbox,
        body.padel-pro-auto .padel-lightbox {
                padding: 12px !important;
        }

        body.padel-pro-dark .padel-lightbox__image,
        body.padel-pro-light .padel-lightbox__image,
        body.padel-pro-auto .padel-lightbox__image {
                max-width: 100% !important;
                max-height: 75vh !important;
        }
}

/* ----- 16. Breadcrumbs на мобиле ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-breadcrumbs,
        body.padel-pro-light .padel-breadcrumbs,
        body.padel-pro-auto .padel-breadcrumbs {
                padding: 12px 0 !important;
                font-size: 11px !important;
                flex-wrap: wrap !important;
                gap: 4px !important;
        }

        body.padel-pro-dark .padel-breadcrumbs a,
        body.padel-pro-light .padel-breadcrumbs a,
        body.padel-pro-auto .padel-breadcrumbs a {
                white-space: nowrap !important;
        }
}

/* ----- 17. Spec radar chart и racket schema на мобиле ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-spec-radar,
        body.padel-pro-light .padel-spec-radar,
        body.padel-pro-auto .padel-spec-radar {
                max-width: 100% !important;
                margin: 0 auto 20px !important;
        }

        body.padel-pro-dark .padel-racket-schema,
        body.padel-pro-light .padel-racket-schema,
        body.padel-pro-auto .padel-racket-schema {
                overflow-x: auto !important;
                -webkit-overflow-scrolling: touch !important;
        }
}

/* ----- 18. Reviews и Q&A на мобиле ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-reviews-section,
        body.padel-pro-light .padel-reviews-section,
        body.padel-pro-auto .padel-reviews-section {
                padding: 30px 0 !important;
        }

        body.padel-pro-dark .padel-qa,
        body.padel-pro-light .padel-qa,
        body.padel-pro-auto .padel-qa {
                padding: 30px 0 !important;
        }
}

/* ===== END MOBILE FIXES v1.9.2 ===== */


/* =====================================================
   v1.10.0 — SIZE SELECTOR + PRODUCT TYPE BADGES
   ===================================================== */

/* ----- Выбор размера (size chips) ----- */
.padel-sizes {
        margin: 20px 0 24px;
        padding: 16px 0 0;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.padel-sizes__header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 12px;
        gap: 12px;
        flex-wrap: wrap;
}

.padel-sizes__title {
        font-family: var(--padel-font-display);
        font-size: 0.95rem;
        font-weight: 800;
        letter-spacing: 1.5px;
        text-transform: uppercase;
        color: var(--padel-white);
}

.padel-sizes__chart {
        color: var(--padel-green);
        font-size: 0.85rem;
        text-decoration: none;
        border-bottom: 1px dashed rgba(var(--padel-accent-rgb), 0.4);
        padding-bottom: 2px;
        transition: border-color 0.2s;
}

.padel-sizes__chart:hover {
        border-bottom-color: var(--padel-green);
}

.padel-sizes__list {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
}

.padel-size-chip {
        min-width: 48px;
        height: 44px;
        padding: 0 14px;
        background: var(--padel-black-3);
        border: 2px solid rgba(255, 255, 255, 0.1);
        color: var(--padel-white);
        font-family: var(--padel-font);
        font-size: 14px;
        font-weight: 700;
        border-radius: var(--padel-radius-sm);
        cursor: pointer;
        transition: all 0.2s;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
}

.padel-size-chip:hover {
        border-color: var(--padel-green);
        color: var(--padel-green);
        background: rgba(var(--padel-accent-rgb), 0.08);
        transform: translateY(-1px);
}

.padel-size-chip.is-active {
        background: var(--padel-green);
        border-color: var(--padel-green);
        color: var(--padel-black);
        box-shadow: 0 0 20px rgba(var(--padel-accent-rgb), 0.4);
}

.padel-size-chip:focus-visible {
        outline: 2px solid var(--padel-green);
        outline-offset: 2px;
}

/* Error state — пользователь не выбрал размер */
.padel-sizes.has-error .padel-sizes__list {
        animation: padel-shake 0.4s ease-in-out;
}

.padel-sizes.has-error .padel-sizes__title {
        color: #ff4757;
}

.padel-sizes.has-error {
        border-top-color: rgba(255, 71, 87, 0.4);
}

@keyframes padel-shake {
        0%, 100% { transform: translateX(0); }
        25% { transform: translateX(-6px); }
        75% { transform: translateX(6px); }
}

/* ----- Дополнительные характеристики (extra specs) ----- */
.padel-buy__specs--extra {
        margin-top: 0;
        padding-top: 12px;
        border-top: 0;
}

.padel-buy__specs--extra .padel-spec__value {
        font-size: 1rem;
        font-weight: 600;
}

/* ----- Бейдж типа товара в hero ----- */
.padel-hero__badges {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        align-items: center;
        margin-bottom: 16px;
}

.padel-badge--type {
        background: rgba(var(--padel-accent-rgb), 0.15);
        border: 1px solid var(--padel-green);
        color: var(--padel-green);
        padding: 6px 14px;
        border-radius: 50px;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 1px;
        text-transform: uppercase;
        font-family: var(--padel-font);
        display: inline-flex;
        align-items: center;
        gap: 6px;
}

.padel-badge--type::before {
        content: '';
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: var(--padel-green);
        box-shadow: 0 0 8px var(--padel-green);
}

.padel-badge--type-sneakers {
        background: rgba(0, 168, 255, 0.15);
        border-color: #00a8ff;
        color: #00a8ff;
}

.padel-badge--type-sneakers::before {
        background: #00a8ff;
        box-shadow: 0 0 8px #00a8ff;
}

.padel-badge--type-jersey {
        background: rgba(255, 165, 0, 0.15);
        border-color: #ffa500;
        color: #ffa500;
}

.padel-badge--type-jersey::before {
        background: #ffa500;
        box-shadow: 0 0 8px #ffa500;
}

.padel-badge--type-general {
        background: rgba(255, 255, 255, 0.1);
        border-color: rgba(255, 255, 255, 0.3);
        color: var(--padel-white);
}

.padel-badge--type-general::before {
        background: var(--padel-white);
        box-shadow: 0 0 8px rgba(255, 255, 255, 0.6);
}

/* ----- Мобильные правила для size selector ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-sizes,
        body.padel-pro-light .padel-sizes,
        body.padel-pro-auto .padel-sizes {
                margin: 16px 0 20px;
                padding-top: 12px;
        }

        body.padel-pro-dark .padel-sizes__header,
        body.padel-pro-light .padel-sizes__header,
        body.padel-pro-auto .padel-sizes__header {
                margin-bottom: 10px;
        }

        body.padel-pro-dark .padel-sizes__title,
        body.padel-pro-light .padel-sizes__title,
        body.padel-pro-auto .padel-sizes__title {
                font-size: 0.85rem;
                letter-spacing: 1px;
        }

        body.padel-pro-dark .padel-sizes__list,
        body.padel-pro-light .padel-sizes__list,
        body.padel-pro-auto .padel-sizes__list {
                gap: 6px;
        }

        body.padel-pro-dark .padel-size-chip,
        body.padel-pro-light .padel-size-chip,
        body.padel-pro-auto .padel-size-chip {
                min-width: 44px;
                height: 40px;
                padding: 0 10px;
                font-size: 13px;
        }

        body.padel-pro-dark .padel-badge--type,
        body.padel-pro-light .padel-badge--type,
        body.padel-pro-auto .padel-badge--type {
                font-size: 10px;
                padding: 4px 10px;
                letter-spacing: 0.5px;
        }
}

/* ----- Light theme корректировки для size selector ----- */
body.padel-pro-light .padel-size-chip {
        background: #f5f5f5;
        border-color: #d4d4d4;
        color: #111111;
}

body.padel-pro-light .padel-size-chip:hover {
        background: rgba(var(--padel-accent-rgb), 0.1);
        border-color: var(--padel-green);
}

body.padel-pro-light .padel-sizes__title {
        color: #111111;
}

body.padel-pro-light .padel-sizes {
        border-top-color: rgba(0, 0, 0, 0.1);
}

/* ===== END v1.10.0 SIZE SELECTOR + TYPE BADGES ===== */

/* =====================================================
   v1.11.4 — HERO: слоган и заголовок поменяны местами
   Слоган теперь меньше (как подзаголовок), заголовок товара — крупный (как h1).
   ===================================================== */

/* Слоган — теперь маленький, под заголовком */
.padel-hero__slogan--small {
        font-family: var(--padel-font-display);
        font-size: clamp(0.9rem, 1.8vw, 1.3rem) !important;
        font-weight: 600 !important;
        line-height: 1.3 !important;
        letter-spacing: 3px !important;
        text-transform: uppercase !important;
        margin: 0 0 36px !important;
        color: var(--padel-accent, var(--padel-green)) !important;
        text-shadow: 0 0 20px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.4) !important;
        opacity: 0.95;
}

/* Заголовок товара — крупный, сверху */
.padel-hero__title {
        font-family: var(--padel-font-display);
        font-size: clamp(2rem, 5.5vw, 4.5rem) !important;
        font-weight: 900 !important;
        line-height: 1.0 !important;
        letter-spacing: -1.5px !important;
        text-transform: uppercase !important;
        margin: 24px 0 12px !important;
        color: var(--padel-white) !important;
        text-shadow: 0 0 40px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.3) !important;
        word-wrap: break-word;
        overflow-wrap: break-word;
        hyphens: auto;
}

/* Если слогана нет — заголовок с большим отступом снизу */
.padel-hero__title:last-child {
        margin-bottom: 36px !important;
}

/* Градиентный текст для слогана — если включён */
.padel-hero__slogan--small.is-gradient {
        background: linear-gradient(135deg, var(--padel-accent, #39FF14) 0%, var(--padel-white) 100%);
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        color: transparent;
}

/* ----- Мобильные правила ----- */
@media (max-width: 640px) {
        .padel-hero__slogan--small {
                font-size: clamp(0.8rem, 4vw, 1.1rem) !important;
                letter-spacing: 2px !important;
                margin-bottom: 24px !important;
        }

        .padel-hero__title {
                font-size: clamp(1.6rem, 8vw, 2.5rem) !important;
                letter-spacing: -1px !important;
                margin-top: 16px !important;
                margin-bottom: 8px !important;
                line-height: 1.05 !important;
        }
}

/* На очень узких экранах — заголовок ещё меньше */
@media (max-width: 400px) {
        .padel-hero__title {
                font-size: clamp(1.4rem, 9vw, 2rem) !important;
        }

        .padel-hero__slogan--small {
                font-size: 0.8rem !important;
                letter-spacing: 1.5px !important;
        }
}

/* Light theme — слоган остаётся акцентным, заголовок тёмный */
body.padel-pro-light .padel-hero__title {
        color: #111111 !important;
        text-shadow: 0 0 40px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.2) !important;
}

body.padel-pro-light .padel-hero__slogan--small {
        color: var(--padel-accent, var(--padel-green)) !important;
}

/* ===== END v1.11.4 HERO SLOGAN/TITLE SWAP ===== */

/* =====================================================
   v1.11.6 — КАРТОЧКА ТОВАРА: комплексная мобильная адаптация
   ===================================================== */

/* ----- 1. Hero-секция на мобильных ----- */
@media (max-width: 640px) {
        .padel-hero {
                padding: 50px 16px 40px !important;
                min-height: auto !important;
                display: block !important;
                text-align: center;
        }

        .padel-hero__content {
                max-width: 100% !important;
                padding: 30px 0 20px;
        }

        .padel-hero__badges {
                justify-content: center !important;
                margin-bottom: 12px !important;
                gap: 6px !important;
        }

        .padel-badge {
                font-size: 10px !important;
                padding: 4px 10px !important;
                letter-spacing: 0.5px !important;
        }

        .padel-badge--type {
                font-size: 10px !important;
                padding: 4px 10px !important;
        }

        /* Hero image — компактнее */
        .padel-hero__image-wrap {
                max-width: 280px !important;
                margin: 16px auto !important;
        }

        .padel-hero__image {
                max-height: 280px;
                width: auto !important;
        }

        .padel-hero__rating {
                justify-content: center !important;
                flex-wrap: wrap !important;
                gap: 8px !important;
                margin-top: 16px !important;
        }

        .padel-hero__rating-text {
                font-size: 0.85rem !important;
        }

        .padel-hero__reviews {
                font-size: 0.75rem !important;
        }

        .padel-hero__scroll {
                display: none !important;
        }
}

/* ----- 2. Блок покупки (.padel-buy) на мобильных ----- */
@media (max-width: 640px) {
        .padel-buy__inner {
                gap: 24px !important;
        }

        .padel-buy__stock {
                font-size: 11px !important;
                letter-spacing: 1px !important;
                margin-bottom: 8px !important;
        }

        /* Заголовок товара в блоке покупки (h2) */
        .padel-buy__title {
                font-size: clamp(1.3rem, 5vw, 1.8rem) !important;
                margin-bottom: 12px !important;
        }

        /* Цена — компактный блок */
        .padel-buy__price-block {
                gap: 8px !important;
                margin-bottom: 16px !important;
        }

        .padel-buy__price {
                font-size: clamp(1.6rem, 7vw, 2rem) !important;
        }

        .padel-buy__old-price {
                font-size: 0.95rem !important;
        }

        .padel-buy__discount {
                font-size: 11px !important;
                padding: 3px 8px !important;
        }

        /* Quantity stepper + CTA — компактная горизонтальная строка */
        .padel-buy__actions {
                flex-direction: row !important;
                flex-wrap: wrap !important;
                gap: 6px !important;
                margin-bottom: 16px !important;
        }

        .padel-buy__actions .padel-qty {
                width: 100% !important;
                height: 44px !important;
                margin-bottom: 6px;
        }

        .padel-buy__actions .padel-qty__btn {
                width: 44px !important;
                height: 44px !important;
                font-size: 18px !important;
        }

        .padel-buy__actions .padel-qty__input {
                height: 44px !important;
                font-size: 14px !important;
        }

        .padel-buy__actions .padel-btn {
                flex: 1 1 calc(50% - 3px) !important;
                width: auto !important;
                min-width: 0 !important;
                padding: 0 8px !important;
                font-size: 11px !important;
                letter-spacing: 0.3px !important;
                height: 44px !important;
                white-space: nowrap !important;
                overflow: hidden !important;
                text-overflow: ellipsis !important;
        }

        /* Спецификации — 2 колонки */
        .padel-buy__specs {
                grid-template-columns: 1fr 1fr !important;
                gap: 8px !important;
                padding-top: 16px !important;
                margin-top: 16px !important;
        }

        .padel-spec__value {
                font-size: 0.95rem !important;
        }

        .padel-spec__label {
                font-size: 10px !important;
                letter-spacing: 1px !important;
        }

        /* Live purchase indicator */
        .padel-live-purchase {
                font-size: 0.75rem !important;
                margin-top: 12px !important;
        }

        /* Delivery estimator */
        .padel-delivery {
                font-size: 0.8rem !important;
                margin-top: 8px !important;
                padding: 6px 0 !important;
                gap: 6px !important;
                flex-wrap: wrap !important;
        }

        .padel-delivery svg {
                width: 14px !important;
                height: 14px !important;
                flex-shrink: 0;
        }

        /* Trust badges — 3 в ряд */
        .padel-trust {
                display: grid !important;
                grid-template-columns: 1fr 1fr 1fr !important;
                gap: 6px !important;
                margin-top: 16px !important;
        }

        .padel-trust__item {
                font-size: 10px !important;
                padding: 6px 4px !important;
                flex-direction: column !important;
                text-align: center !important;
                gap: 4px !important;
        }

        .padel-trust__item svg {
                width: 14px !important;
                height: 14px !important;
        }

        /* Image zoom и thumbnails */
        .padel-buy__image {
                max-width: 100% !important;
        }

        .padel-buy__thumbs {
                gap: 6px !important;
                margin-top: 12px !important;
        }

        .padel-buy__thumb {
                width: 50px !important;
                height: 50px !important;
        }
}

/* ----- 3. Size selector на мобильных ----- */
@media (max-width: 640px) {
        .padel-sizes {
                margin: 14px 0 16px !important;
                padding-top: 12px !important;
        }

        .padel-sizes__header {
                margin-bottom: 8px !important;
                gap: 8px !important;
        }

        .padel-sizes__title {
                font-size: 0.8rem !important;
                letter-spacing: 1px !important;
        }

        .padel-sizes__chart {
                font-size: 0.75rem !important;
        }

        .padel-sizes__list {
                gap: 6px !important;
        }

        .padel-size-chip {
                min-width: 42px !important;
                height: 38px !important;
                padding: 0 10px !important;
                font-size: 12px !important;
        }
}

/* ----- 4. На очень узких экранах (≤400px) — всё компактнее ----- */
@media (max-width: 400px) {
        .padel-buy__specs {
                grid-template-columns: 1fr !important;
        }

        .padel-trust {
                grid-template-columns: 1fr 1fr !important;
        }

        .padel-buy__actions .padel-btn {
                flex: 1 1 100% !important;
                font-size: 12px !important;
        }

        .padel-hero__title {
                font-size: clamp(1.3rem, 8vw, 1.8rem) !important;
        }

        .padel-buy__price {
                font-size: clamp(1.4rem, 8vw, 1.8rem) !important;
        }
}

/* ----- 5. Sticky buy bar на мобильных ----- */
@media (max-width: 640px) {
        .padel-sticky-buy {
                padding: 0 12px !important;
        }

        .padel-sticky-buy__inner {
                padding: 8px 0 !important;
                gap: 8px !important;
        }

        .padel-sticky-buy__thumb {
                width: 36px !important;
                height: 36px !important;
        }

        .padel-sticky-buy__title {
                font-size: 0.7rem !important;
                max-width: 100% !important;
                -webkit-line-clamp: 1 !important;
                line-clamp: 1 !important;
                display: -webkit-box !important;
                -webkit-box-orient: vertical !important;
                overflow: hidden !important;
                text-overflow: ellipsis !important;
                white-space: nowrap !important;
        }

        .padel-sticky-buy__price {
                font-size: 0.85rem !important;
        }

        .padel-sticky-buy__old {
                font-size: 0.7rem !important;
                max-width: 50px !important;
                overflow: hidden !important;
                text-overflow: ellipsis !important;
                white-space: nowrap !important;
        }

        .padel-sticky-buy__actions .padel-btn {
                padding: 8px 12px !important;
                font-size: 10px !important;
                max-width: 120px !important;
                height: 36px !important;
        }
}

/* ----- 6. На экранах ≤400px скрываем миниатюру и старую цену в sticky-buy ----- */
@media (max-width: 400px) {
        .padel-sticky-buy__thumb {
                display: none !important;
        }

        .padel-sticky-buy__old {
                display: none !important;
        }

        .padel-sticky-buy__actions .padel-btn {
                max-width: 100px !important;
        }
}

/* ----- 7. Features блок на мобильных ----- */
@media (max-width: 640px) {
        .padel-features__list {
                gap: 12px !important;
        }

        .padel-feature__title {
                font-size: 0.95rem !important;
        }

        .padel-feature__desc {
                font-size: 0.85rem !important;
        }
}

/* ----- 8. Final CTA на мобильных ----- */
@media (max-width: 640px) {
        .padel-final-cta {
                padding: 40px 16px !important;
        }

        .padel-final-cta__title {
                font-size: clamp(1.4rem, 6vw, 2rem) !important;
                margin-bottom: 12px !important;
        }

        .padel-final-cta__price {
                margin-bottom: 16px !important;
        }

        .padel-final-cta .padel-btn {
                width: 100% !important;
                padding: 14px 16px !important;
                font-size: 12px !important;
        }
}

/* ----- 9. Description блок ----- */
@media (max-width: 640px) {
        .padel-description h2,
        .padel-description h3 {
                font-size: 1.3rem !important;
                margin-top: 24px !important;
                margin-bottom: 12px !important;
        }

        .padel-description p {
                font-size: 0.95rem !important;
                line-height: 1.6 !important;
                margin-bottom: 14px !important;
        }

        .padel-description ul,
        .padel-description ol {
                padding-left: 20px !important;
                margin-bottom: 14px !important;
        }

        .padel-description li {
                font-size: 0.95rem !important;
                margin-bottom: 6px !important;
        }
}

/* ----- 10. Breadcrumbs на мобильных ----- */
@media (max-width: 640px) {
        .padel-breadcrumbs {
                padding: 10px 0 !important;
                font-size: 10px !important;
        }

        .padel-breadcrumbs__list {
                gap: 4px !important;
                flex-wrap: wrap !important;
        }

        .padel-breadcrumbs__item {
                white-space: nowrap !important;
        }
}

/* ===== END v1.11.6 MOBILE CARD ADAPTATION ===== */

/* =====================================================
   v1.12.0 — ТОЛЬКО ТЁМНАЯ ТЕМА
   Переключение светлой/тёмной темы полностью убрано.
   Жёстко блокируем любые light правила.
   ===================================================== */

/* Если кто-то (тема WP, кэш-плагин, localStorage) всё ещё добавил light класс —
   сбрасываем все light-правила и применяем dark. */
body.padel-pro-light,
body.padel-pro-auto {
        background: var(--padel-black, #111111) !important;
        color: var(--padel-white, #ffffff) !important;
}

/* Все light-специфичные правила нейтрализуем. */
body.padel-pro-light .padel-single,
body.padel-pro-light .padel-archive,
body.padel-pro-light .padel-cart,
body.padel-pro-light .padel-checkout,
body.padel-pro-light .padel-account,
body.padel-pro-light .padel-thankyou,
body.padel-pro-light .padel-frontend-form-wrap,
body.padel-pro-light .padel-card,
body.padel-pro-light .padel-buy,
body.padel-pro-light .padel-sticky-buy,
body.padel-pro-light .padel-cart-drawer,
body.padel-pro-auto .padel-single,
body.padel-pro-auto .padel-archive,
body.padel-pro-auto .padel-cart,
body.padel-pro-auto .padel-checkout,
body.padel-pro-auto .padel-account,
body.padel-pro-auto .padel-thankyou,
body.padel-pro-auto .padel-frontend-form-wrap,
body.padel-pro-auto .padel-card,
body.padel-pro-auto .padel-buy,
body.padel-pro-auto .padel-sticky-buy,
body.padel-pro-auto .padel-cart-drawer {
        background: var(--padel-black, #111111) !important;
        color: var(--padel-white, #ffffff) !important;
}

/* Поля ввода — всегда тёмные. */
body.padel-pro-light .padel-checkout input,
body.padel-pro-light .padel-checkout textarea,
body.padel-pro-light .padel-checkout select,
body.padel-pro-light .padel-frontend-form-wrap input,
body.padel-pro-light .padel-frontend-form-wrap textarea,
body.padel-pro-light .padel-frontend-form-wrap select,
body.padel-pro-light .padel-account input,
body.padel-pro-light .padel-account textarea,
body.padel-pro-light .padel-account select,
body.padel-pro-auto .padel-checkout input,
body.padel-pro-auto .padel-checkout textarea,
body.padel-pro-auto .padel-checkout select,
body.padel-pro-auto .padel-frontend-form-wrap input,
body.padel-pro-auto .padel-frontend-form-wrap textarea,
body.padel-pro-auto .padel-frontend-form-wrap select,
body.padel-pro-auto .padel-account input,
body.padel-pro-auto .padel-account textarea,
body.padel-pro-auto .padel-account select {
        background: var(--padel-black-2, #1a1a1a) !important;
        border-color: rgba(255, 255, 255, 0.12) !important;
        color: var(--padel-white, #ffffff) !important;
}

/* Заголовки — всегда белые. */
body.padel-pro-light .padel-single h1,
body.padel-pro-light .padel-single h2,
body.padel-pro-light .padel-single h3,
body.padel-pro-light .padel-archive h1,
body.padel-pro-light .padel-archive h2,
body.padel-pro-light .padel-archive h3,
body.padel-pro-auto .padel-single h1,
body.padel-pro-auto .padel-single h2,
body.padel-pro-auto .padel-single h3,
body.padel-pro-auto .padel-archive h1,
body.padel-pro-auto .padel-archive h2,
body.padel-pro-auto .padel-archive h3 {
        color: var(--padel-white, #ffffff) !important;
}

/* Скрываем кнопку переключателя темы, если она есть. */
.padel-theme-toggle,
.padel-pro-theme-toggle,
[class*="padel-theme-toggle"] {
        display: none !important;
}

/* ===== END v1.12.0 DARK-ONLY ===== */



/* =====================================================
   v1.12.5 — ТОЧЕЧНЫЙ фикс мобильных прокруток
   Без *-селекторов, чтобы не сломать модалки.
   ===================================================== */

/* Запрет горизонтального скролла страницы */
@media (max-width: 768px) {
        html, body {
                overflow-x: hidden !important;
        }
}

/* Точечно убираем внутреннюю прокрутку с конкретных блоков */
@media (max-width: 768px) {
        .padel-buy,
        .padel-buy__inner,
        .padel-buy__info,
        .padel-features,
        .padel-features__grid,
        .padel-description,
        .padel-description__content,
        .padel-reviews-section,
        .padel-related,
        .padel-qa,
        .padel-radar-section,
        .padel-cart,
        .padel-checkout,
        .padel-account,
        .padel-thankyou,
        .padel-frontend-form-wrap,
        .padel-card,
        .padel-card__body,
        .padel-sticky-buy,
        .padel-sticky-buy__inner,
        .padel-hero,
        .padel-hero__content,
        .padel-buy__specs,
        .padel-trust,
        .padel-sizes,
        .padel-sizes__list,
        .padel-delivery,
        .padel-buy__price-block,
        .padel-buy__actions {
                overflow: visible !important;
                overflow-y: visible !important;
                max-height: none !important;
        }
}

/* Блок цены — фикс выхода за пределы */
@media (max-width: 768px) {
        .padel-buy__price-block {
                display: flex !important;
                flex-wrap: wrap !important;
                align-items: baseline !important;
                justify-content: flex-start !important;
                gap: 8px !important;
                width: 100% !important;
                max-width: 100% !important;
                box-sizing: border-box !important;
                overflow: visible !important;
        }

        .padel-buy__price {
                font-size: clamp(1.4rem, 6vw, 1.8rem) !important;
                flex: 0 1 auto !important;
                min-width: 0 !important;
                max-width: 60% !important;
                white-space: nowrap !important;
                overflow: hidden !important;
                text-overflow: ellipsis !important;
        }

        .padel-buy__old-price {
                font-size: 0.85rem !important;
                flex: 0 1 auto !important;
                min-width: 0 !important;
                max-width: 30% !important;
                white-space: nowrap !important;
                overflow: hidden !important;
                text-overflow: ellipsis !important;
        }

        .padel-buy__discount {
                font-size: 11px !important;
                padding: 3px 8px !important;
                flex: 0 0 auto !important;
                white-space: nowrap !important;
        }
}

/* Контейнеры — 100% ширины */
@media (max-width: 768px) {
        .padel-container {
                width: 100% !important;
                max-width: 100% !important;
                padding-left: 16px !important;
                padding-right: 16px !important;
                box-sizing: border-box !important;
        }
}

/* Конкретные flex-контейнеры — min-width: 0 */
@media (max-width: 768px) {
        .padel-buy__inner,
        .padel-buy__info,
        .padel-buy__price-block,
        .padel-buy__actions,
        .padel-cart-item,
        .padel-card__footer,
        .padel-sticky-buy__inner,
        .padel-sticky-buy__info,
        .padel-trust {
                min-width: 0 !important;
        }
}

/* Блок features — в столбик, по центру */
@media (max-width: 768px) {
        .padel-features__grid {
                display: flex !important;
                flex-direction: column !important;
                gap: 12px !important;
        }

        .padel-feature {
                width: 100% !important;
                max-width: 100% !important;
                box-sizing: border-box !important;
                padding: 20px 16px !important;
        }

        .padel-feature__title,
        .padel-feature__desc {
                word-wrap: break-word !important;
                overflow-wrap: break-word !important;
        }
}

/* Блок buy__inner — в столбик */
@media (max-width: 768px) {
        .padel-buy__inner {
                display: flex !important;
                flex-direction: column !important;
                gap: 24px !important;
        }

        .padel-buy__image-wrap {
                order: -1 !important;
                max-width: 100% !important;
        }
}

/* Кнопки CTA — компактно */
@media (max-width: 640px) {
        .padel-buy__actions {
                display: flex !important;
                flex-direction: column !important;
                gap: 8px !important;
                width: 100% !important;
        }

        .padel-buy__actions .padel-qty {
                width: 100% !important;
                height: 44px !important;
        }

        .padel-buy__actions .padel-btn {
                flex: 1 1 calc(50% - 4px) !important;
                min-width: 0 !important;
                max-width: calc(50% - 4px) !important;
                height: 44px !important;
                font-size: 11px !important;
                padding: 0 8px !important;
                white-space: nowrap !important;
                overflow: hidden !important;
                text-overflow: ellipsis !important;
        }
}

/* ===== END v1.12.5 ===== */

/* =====================================================
   v1.12.6 — ФИКС: карточка уходит влево, фото вправо
   Причина: .padel-buy__info и .padel-buy__image-wrap не имеют width: 100%,
   поэтому flex сжимает их до content-size.
   ===================================================== */

@media (max-width: 980px) {
        .padel-buy__inner {
                display: flex !important;
                flex-direction: column !important;
                gap: 24px !important;
                width: 100% !important;
                max-width: 100% !important;
        }

        .padel-buy__info,
        .padel-buy__image-wrap {
                width: 100% !important;
                max-width: 100% !important;
                flex: 1 1 100% !important;
                flex-basis: 100% !important;
                min-width: 0 !important;
                box-sizing: border-box !important;
        }

        /* Фото сверху, информация снизу */
        .padel-buy__image-wrap {
                order: -1 !important;
                text-align: center !important;
                display: block !important;
        }

        .padel-buy__image-wrap img {
                display: inline-block !important;
                margin: 0 auto !important;
                max-width: 100% !important;
                height: auto !important;
        }

        /* Информация — на всю ширину */
        .padel-buy__info {
                order: 1 !important;
                text-align: left !important;
        }
}

/* На совсем узких — ещё компактнее */
@media (max-width: 640px) {
        .padel-buy__inner {
                gap: 20px !important;
        }

        .padel-buy__image-wrap {
                max-width: 100% !important;
        }

        .padel-buy__image-wrap img {
                max-height: 320px !important;
                width: auto !important;
        }
}

/* ===== END v1.12.6 ===== */

/* =====================================================
   v1.12.7 — ПЛАВАЮЩАЯ КНОПКА «ДОБАВИТЬ В КОРЗИНУ»
   Заменяет sticky buy bar.
   ===================================================== */

.padel-float-add-btn {
        position: fixed;
        bottom: 20px;
        right: 20px;
        z-index: 1000;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        min-width: 56px;
        height: 56px;
        padding: 0 20px;
        background: var(--padel-green, #39FF14);
        color: var(--padel-black, #111111);
        border: 0;
        border-radius: 50px;
        font-family: var(--padel-font-display);
        font-size: 14px;
        font-weight: 800;
        letter-spacing: 1px;
        text-transform: uppercase;
        cursor: pointer;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4), 0 0 24px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.5);
        transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s, opacity 0.3s;
        opacity: 0;
        transform: translateY(20px) scale(0.9);
        pointer-events: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
}

.padel-float-add-btn.is-visible {
        opacity: 1;
        transform: translateY(0) scale(1);
        pointer-events: auto;
}

.padel-float-add-btn:hover {
        transform: translateY(-3px) scale(1.03);
        box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5), 0 0 32px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.7);
}

.padel-float-add-btn:active {
        transform: translateY(0) scale(0.96);
}

.padel-float-add-btn:focus-visible {
        outline: 2px solid var(--padel-white, #ffffff);
        outline-offset: 3px;
}

.padel-float-add-btn.is-loading {
        opacity: 0.7;
        pointer-events: none;
}

.padel-float-add-btn.is-added {
        background: #00d97e;
        animation: padel-float-bump 0.5s ease;
}

@keyframes padel-float-bump {
        0%, 100% { transform: translateY(0) scale(1); }
        40% { transform: translateY(-8px) scale(1.1); }
}

.padel-float-add-btn svg {
        flex-shrink: 0;
}

.padel-float-add-btn__text {
        white-space: nowrap;
}

/* На мобильных — кнопка на всю ширину снизу */
@media (max-width: 640px) {
        .padel-float-add-btn {
                bottom: 16px;
                left: 16px;
                right: 16px;
                width: calc(100% - 32px);
                min-width: 0;
                height: 52px;
                font-size: 13px;
                letter-spacing: 0.5px;
                border-radius: 26px;
        }

        .padel-float-add-btn__text {
                flex: 1 1 auto;
                text-align: center;
        }
}

/* На десктопе — компактная круглая кнопка с иконкой + текст */
@media (min-width: 641px) {
        .padel-float-add-btn:not(.is-visible) {
                display: none;
        }
}

/* ===== END v1.12.7 FLOAT ADD-TO-CART ===== */

/* v1.12.7: скрыть старый sticky buy bar, если он остался в кэше */
.padel-sticky-buy {
        display: none !important;
}

/* =====================================================
   v1.12.8 — ФИКС: блок информации уходит влево
   Причина: .padel-buy__info не имеет width: 100% и box-sizing.
   ===================================================== */

@media (max-width: 980px) {
        .padel-buy__info {
                display: block !important;
                width: 100% !important;
                max-width: 100% !important;
                box-sizing: border-box !important;
                padding: 0 16px !important;
                margin: 0 !important;
                text-align: left !important;
                overflow: visible !important;
        }

        .padel-buy__info > * {
                width: 100% !important;
                max-width: 100% !important;
                box-sizing: border-box !important;
        }

        .padel-buy__info > *:first-child {
                margin-top: 0 !important;
        }
}

/* Также гарантируем, что контейнер .padel-buy__inner имеет padding */
@media (max-width: 980px) {
        .padel-buy__inner {
                width: 100% !important;
                max-width: 100% !important;
                padding: 0 16px !important;
                box-sizing: border-box !important;
        }
}

/* Запасной фикс: блок цены и все внутренние элементы — корректные отступы */
@media (max-width: 640px) {
        .padel-buy__price-block,
        .padel-buy__actions,
        .padel-buy__specs,
        .padel-trust,
        .padel-sizes,
        .padel-delivery,
        .padel-live-purchase {
                width: 100% !important;
                max-width: 100% !important;
                box-sizing: border-box !important;
                padding-left: 0 !important;
                padding-right: 0 !important;
                margin-left: 0 !important;
                margin-right: 0 !important;
        }

        .padel-buy__title,
        .padel-buy__stock,
        .padel-buy__price,
        .padel-buy__old-price {
                word-wrap: break-word !important;
                overflow-wrap: break-word !important;
                hyphens: auto !important;
        }
}

/* ===== END v1.12.8 ===== */

/* =====================================================
   v1.12.9 — 1) CART DRAWER → ЦЕНТРИРОВАННАЯ МОДАЛКА
   2) Фикс блока .padel-buy__info (padel-reveal конфликт)
   ===================================================== */

/* ----- 1. CART DRAWER — центрированная модалка вместо выезжающей справа панели ----- */
.padel-cart-drawer {
        position: fixed !important;
        top: 50% !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        transform: translate(-50%, -50%) scale(0.9) !important;
        opacity: 0 !important;
        pointer-events: none !important;
        width: min(560px, calc(100% - 32px)) !important;
        max-height: min(80vh, 700px) !important;
        border-radius: var(--padel-radius, 14px) !important;
        border: 1px solid rgba(var(--padel-accent-rgb, 57, 255, 20), 0.2) !important;
        box-shadow: 0 30px 80px rgba(0, 0, 0, 0.7), 0 0 60px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.15) !important;
        transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.35s ease !important;
}

.padel-cart-drawer.is-open {
        transform: translate(-50%, -50%) scale(1) !important;
        opacity: 1 !important;
        pointer-events: auto !important;
}

/* Шапка drawer — компактнее */
.padel-cart-drawer__header {
        padding: 20px 24px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.padel-cart-drawer__title {
        font-size: 1.1rem !important;
        margin: 0 !important;
}

/* Тело drawer — скроллится */
.padel-cart-drawer__body {
        flex: 1 !important;
        overflow-y: auto !important;
        padding: 16px 24px !important;
}

/* Элементы корзины внутри drawer */
.padel-cart-drawer-item {
        padding: 14px 0 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.padel-cart-drawer-item__title {
        font-size: 0.9rem !important;
        margin-bottom: 4px !important;
}

.padel-cart-drawer-item__price {
        font-size: 0.95rem !important;
        font-weight: 700 !important;
        color: var(--padel-green, #39FF14) !important;
}

/* Футер drawer */
.padel-cart-drawer__footer {
        padding: 16px 24px 20px !important;
        border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
        background: var(--padel-black-2, #1a1a1a) !important;
        border-radius: 0 0 var(--padel-radius, 14px) var(--padel-radius, 14px) !important;
}

/* Overlay затемнения */
.padel-drawer-overlay {
        position: fixed !important;
        inset: 0 !important;
        background: rgba(0, 0, 0, 0.7) !important;
        backdrop-filter: blur(4px) !important;
        -webkit-backdrop-filter: blur(4px) !important;
        z-index: 200 !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transition: opacity 0.35s ease !important;
}

.padel-drawer-overlay.is-open {
        opacity: 1 !important;
        pointer-events: auto !important;
}

/* Мобильная версия — на всю ширину с отступами */
@media (max-width: 640px) {
        .padel-cart-drawer {
                width: calc(100% - 24px) !important;
                max-height: 85vh !important;
                border-radius: var(--padel-radius-sm, 8px) !important;
        }

        .padel-cart-drawer__header {
                padding: 16px 18px !important;
        }

        .padel-cart-drawer__body {
                padding: 12px 18px !important;
        }

        .padel-cart-drawer__footer {
                padding: 14px 18px 16px !important;
        }
}

/* ----- 2. ФИКС: блок .padel-buy__info уходит влево -----
   Причина: класс padel-reveal с data-reveal="slide-right" даёт
   transform: translateX(-50px), плюс JS может установить inline-стиль.
   Решение: принудительно обнулить transform и видимость. */

@media (max-width: 980px) {
        .padel-buy__info.padel-reveal,
        .padel-buy__info[data-reveal],
        .padel-buy__info[data-reveal="slide-right"] {
                transform: none !important;
                opacity: 1 !important;
                transition: none !important;
        }

        .padel-buy__info {
                display: block !important;
                width: 100% !important;
                max-width: 100% !important;
                box-sizing: border-box !important;
                padding: 0 16px !important;
                margin: 0 !important;
                text-align: left !important;
                overflow: visible !important;
                transform: none !important;
                position: relative !important;
                left: 0 !important;
                right: 0 !important;
        }

        .padel-buy__info > * {
                width: 100% !important;
                max-width: 100% !important;
                box-sizing: border-box !important;
                position: relative !important;
                left: 0 !important;
        }

        .padel-buy__inner {
                width: 100% !important;
                max-width: 100% !important;
                padding: 0 !important;
                margin: 0 !important;
                box-sizing: border-box !important;
        }

        .padel-buy .padel-container {
                width: 100% !important;
                max-width: 100% !important;
                padding: 0 16px !important;
                box-sizing: border-box !important;
        }

        .padel-buy {
                padding: 60px 0 !important;
        }
}

/* На мобиле — гарантия переноса слов */
@media (max-width: 640px) {
        .padel-buy__title,
        .padel-buy__stock,
        .padel-buy__price,
        .padel-buy__old-price,
        .padel-delivery span,
        .padel-buy__specs {
                word-wrap: break-word !important;
                overflow-wrap: break-word !important;
                hyphens: auto !important;
                white-space: normal !important;
        }

        .padel-buy__price-block {
                display: flex !important;
                flex-wrap: wrap !important;
                justify-content: flex-start !important;
                align-items: baseline !important;
                gap: 8px !important;
                width: 100% !important;
                padding-left: 0 !important;
                padding-right: 0 !important;
                margin-left: 0 !important;
                margin-right: 0 !important;
        }
}

/* ===== END v1.12.9 ===== */

/* =====================================================
   v1.12.10 — КНОПКА «ОСТАВИТЬ ОТЗЫВ» В ХЛЕБНЫХ КРОШКАХ
   + МОДАЛЬНОЕ ОКНО С ФОРМОЙ ОТЗЫВА
   ===================================================== */

/* ----- Хлебные крошки: обёртка с кнопкой справа ----- */
.padel-breadcrumbs__wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        flex-wrap: wrap;
        padding-top: 12px;
        padding-bottom: 12px;
}

.padel-breadcrumbs__list {
        flex: 1 1 auto;
        min-width: 0;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 4px;
        list-style: none;
}

/* Кнопка «Оставить отзыв» в хлебных крошках */
.padel-breadcrumbs__review-btn {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 8px 14px;
        background: rgba(var(--padel-accent-rgb, 57, 255, 20), 0.12);
        color: var(--padel-accent, #39FF14);
        border: 1px solid rgba(var(--padel-accent-rgb, 57, 255, 20), 0.4);
        border-radius: var(--padel-radius-sm, 8px);
        font-family: var(--padel-font);
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.5px;
        text-transform: uppercase;
        cursor: pointer;
        transition: all 0.2s ease;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
}

.padel-breadcrumbs__review-btn:hover {
        background: rgba(var(--padel-accent-rgb, 57, 255, 20), 0.2);
        border-color: var(--padel-accent, #39FF14);
        transform: translateY(-1px);
        box-shadow: 0 4px 12px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.3);
}

.padel-breadcrumbs__review-btn:focus-visible {
        outline: 2px solid var(--padel-accent, #39FF14);
        outline-offset: 2px;
}

/* ----- МОДАЛЬНОЕ ОКНО ОТЗЫВА ----- */
.padel-review-modal {
        position: fixed;
        inset: 0;
        z-index: 9999;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 20px;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0.3s ease;
}

.padel-review-modal.is-open {
        opacity: 1;
        visibility: visible;
}

.padel-review-modal__overlay {
        position: absolute;
        inset: 0;
        background: rgba(0, 0, 0, 0.75);
        backdrop-filter: blur(6px);
        -webkit-backdrop-filter: blur(6px);
        cursor: pointer;
}

.padel-review-modal__dialog {
        position: relative;
        z-index: 1;
        width: min(540px, 100%);
        max-height: calc(100vh - 40px);
        overflow-y: auto;
        background: var(--padel-black-2, #1a1a1a);
        border: 1px solid rgba(var(--padel-accent-rgb, 57, 255, 20), 0.2);
        border-radius: var(--padel-radius, 14px);
        padding: 28px 24px 24px;
        box-shadow: 0 30px 80px rgba(0, 0, 0, 0.7), 0 0 60px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.15);
        transform: scale(0.92) translateY(20px);
        transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.padel-review-modal.is-open .padel-review-modal__dialog {
        transform: scale(1) translateY(0);
}

.padel-review-modal__close {
        position: absolute;
        top: 14px;
        right: 14px;
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, 0.08);
        color: var(--padel-white, #ffffff);
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 50%;
        cursor: pointer;
        transition: all 0.2s ease;
}

.padel-review-modal__close:hover {
        background: rgba(255, 71, 87, 0.15);
        border-color: #ff4757;
        color: #ff4757;
        transform: rotate(90deg);
}

.padel-review-modal__title {
        font-family: var(--padel-font-display);
        font-size: 1.4rem;
        font-weight: 800;
        margin: 0 0 4px;
        color: var(--padel-white, #ffffff);
        padding-right: 40px;
}

.padel-review-modal__subtitle {
        font-size: 0.85rem;
        color: var(--padel-gray, #999999);
        margin: 0 0 20px;
}

.padel-review-modal__form {
        display: flex;
        flex-direction: column;
        gap: 14px;
}

.padel-review-modal__field {
        display: flex;
        flex-direction: column;
        gap: 6px;
}

.padel-review-modal__field label {
        font-size: 0.85rem;
        font-weight: 600;
        color: var(--padel-white, #ffffff);
}

.padel-review-modal__field input,
.padel-review-modal__field textarea {
        width: 100%;
        padding: 10px 12px;
        background: var(--padel-black-3, #222222);
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: var(--padel-radius-sm, 8px);
        color: var(--padel-white, #ffffff);
        font-family: var(--padel-font);
        font-size: 14px;
        box-sizing: border-box;
        transition: border-color 0.2s, box-shadow 0.2s;
}

.padel-review-modal__field input:focus,
.padel-review-modal__field textarea:focus {
        outline: 0;
        border-color: var(--padel-accent, #39FF14);
        box-shadow: 0 0 0 3px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.15);
}

.padel-review-modal__field textarea {
        resize: vertical;
        min-height: 80px;
        font-family: inherit;
}

/* Звёзды рейтинга */
.padel-review-modal__stars {
        display: flex;
        gap: 4px;
}

.padel-review-modal__star {
        width: 36px;
        height: 36px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: transparent;
        border: 0;
        color: rgba(255, 255, 255, 0.25);
        cursor: pointer;
        padding: 0;
        transition: all 0.15s ease;
}

.padel-review-modal__star:hover,
.padel-review-modal__star.is-active {
        color: var(--padel-accent, #39FF14);
        transform: scale(1.1);
}

.padel-review-modal__star svg {
        fill: currentColor;
        stroke: currentColor;
}

/* Сообщение */
.padel-review-modal__msg {
        font-size: 0.9rem;
        padding: 10px 12px;
        border-radius: var(--padel-radius-sm, 8px);
        display: none;
}

.padel-review-modal__msg.is-success {
        display: block;
        background: rgba(57, 255, 20, 0.12);
        color: var(--padel-accent, #39FF14);
        border: 1px solid rgba(var(--padel-accent-rgb, 57, 255, 20), 0.3);
}

.padel-review-modal__msg.is-error {
        display: block;
        background: rgba(255, 71, 87, 0.12);
        color: #ff4757;
        border: 1px solid rgba(255, 71, 87, 0.3);
}

/* Кнопка отправки */
.padel-review-modal__submit {
        width: 100%;
        margin-top: 4px;
}

.padel-review-modal__submit.is-loading {
        opacity: 0.7;
        pointer-events: none;
}

.padel-review-modal__submit.is-loading::after {
        content: '...';
        margin-left: 6px;
}

/* Body — блокировка скролла при открытом модальном */
body.padel-review-modal-open {
        overflow: hidden !important;
}

/* ----- Мобильная адаптация ----- */
@media (max-width: 640px) {
        .padel-breadcrumbs__wrap {
                flex-direction: column;
                align-items: stretch;
                gap: 8px;
                padding-top: 10px;
                padding-bottom: 10px;
        }

        .padel-breadcrumbs__review-btn {
                justify-content: center;
                width: 100%;
                padding: 8px 12px;
                font-size: 11px;
        }

        .padel-review-modal {
                padding: 12px;
        }

        .padel-review-modal__dialog {
                padding: 24px 18px 18px;
                max-height: calc(100vh - 24px);
        }

        .padel-review-modal__title {
                font-size: 1.2rem;
        }

        .padel-review-modal__field input,
        .padel-review-modal__field textarea {
                font-size: 16px; /* iOS без zoom */
        }

        .padel-review-modal__star {
                width: 32px;
                height: 32px;
        }
}

/* ===== END v1.12.10 REVIEW MODAL ===== */

/* =====================================================
   v1.12.11 — HERO: фон всегда чёрный, не зависит от настроек
   ===================================================== */

.padel-hero {
        background: #000000 !important;
}

.padel-hero__overlay {
        background: none !important;
}

/* Видео — полностью яркое, без затемнения */
.padel-hero__video {
        opacity: 1 !important;
}

@media (max-width: 640px) {
        .padel-hero {
                background: #000000 !important;
        }

        .padel-hero__video {
                opacity: 1 !important;
        }
}

/* ===== END v1.12.11 ===== */

/* =====================================================
   v1.12.12 — BREADCRUMBS: фон всегда чёрный
   ===================================================== */

.padel-breadcrumbs {
        background: #000000 !important;
}

.padel-breadcrumbs__wrap {
        background: #000000 !important;
}

/* ===== END v1.12.12 ===== */


/* =====================================================
   v1.12.15 — ФОТО ТОВАРА НА ЧЁРНОМ ФОНЕ,
   ХАРАКТЕРИСТИКИ В ОДНУ ЛИНИЮ
   (двухколоночный hero из v1.12.14 откачен: фото возвращено
   в исходное место внутри .padel-hero__content)
   ===================================================== */

/* ----- 1. Фото товара всегда на чёрном фоне ----- */
body.padel-pro-dark .padel-hero__image-wrap,
body.padel-pro-dark .padel-buy__image-wrap {
        background: #000000 !important;
}

body.padel-pro-dark .padel-hero__image,
body.padel-pro-dark .padel-buy__image {
        background: transparent !important;
}

/* ----- 2. Характеристики — одной строкой (перенос при нехватке места) ----- */
body.padel-pro-dark .padel-buy__specs {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: baseline !important;
        gap: 10px 36px !important;
        grid-template-columns: none !important;
        padding-top: 24px !important;
        border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

body.padel-pro-dark .padel-buy__specs .padel-spec {
        display: flex !important;
        flex-direction: row !important;
        align-items: baseline !important;
        gap: 8px !important;
        flex: 0 0 auto !important;
}

body.padel-pro-dark .padel-buy__specs .padel-spec__label {
        font-size: 11px !important;
        letter-spacing: 1.5px !important;
        white-space: nowrap !important;
}

body.padel-pro-dark .padel-buy__specs .padel-spec__value {
        font-size: 1.1rem !important;
        white-space: nowrap !important;
}

/* ----- 3. Мобильная адаптация (≤640px): характеристики переносятся без выхода за край ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-buy__specs {
                gap: 8px 22px !important;
        }

        body.padel-pro-dark .padel-buy__specs .padel-spec__value {
                font-size: 1rem !important;
        }
}

/* ===== END v1.12.15 ===== */

/* =====================================================
   v1.12.19 — ФОТО В БЛОКЕ ПОКУПКИ: ВСЕГДА ЧЁРНЫЙ ФОН
   Серый фон (#1a1a1a из --padel-surface / --padel-black-2)
   вокруг фото заменён на чистый чёрный #000000 —
   как в hero-блоке. Влияет и на миниатюры галереи.
   ===================================================== */

body.padel-pro-dark .padel-buy__zoom {
        background: #000000 !important;
}

body.padel-pro-dark .padel-buy__thumb {
        background: #000000 !important;
}

body.padel-pro-dark .padel-buy__zoom .padel-buy__image {
        background: transparent !important;
}

/* ===== END v1.12.19 ===== */

/* =====================================================
   v1.12.21 — ФИКС: фото в блоке покупки уезжает вправо на мобильных
   Причина: системный баг специфичности — .padel-reveal[data-reveal="slide-left"]
   (transform: translateX(50px), строка ниже .is-visible) всегда побеждал
   сброс .padel-reveal.is-visible { transform: none } — элемент навсегда
   оставался сдвинутым вправо на 50px. На десктопе это маскировал inline-параллакс.
   Решение: is-visible гарантированно сбрасывает сдвиг (!important),
   для элементов с [data-parallax] — без !important, чтобы не ломать
   inline-параллакс на десктопе.
   ===================================================== */

.padel-reveal.is-visible:not([data-parallax]) {
        transform: none !important;
}

.padel-reveal[data-parallax].is-visible {
        transform: none;
}

/* Страховка: блок фото в покупке — всегда по центру на мобильных */
@media (max-width: 980px) {
        body.padel-pro-dark .padel-buy__image-wrap.padel-reveal {
                transform: none !important;
                opacity: 1 !important;
                width: 100% !important;
                max-width: 100% !important;
                margin-left: auto !important;
                margin-right: auto !important;
                left: auto !important;
                right: auto !important;
                text-align: center !important;
        }
}

/* ===== END v1.12.21 ===== */

/* =====================================================
   v1.12.22 — КНОПКА ОТЗЫВА В КРОШКАХ НА МОБИЛЬНЫХ:
   только иконка, в одну линию с текстом крошек
   (раньше — отдельной строкой на всю ширину с текстом)
   ===================================================== */

@media (max-width: 640px) {
        body.padel-pro-dark .padel-breadcrumbs__wrap {
                flex-direction: row !important;
                align-items: center !important;
                flex-wrap: wrap !important;
                gap: 10px !important;
        }

        body.padel-pro-dark .padel-breadcrumbs__review-btn {
                width: auto !important;
                flex: 0 0 auto !important;
                margin-left: auto !important;
                padding: 7px 9px !important;
                justify-content: center !important;
        }

        /* Скрываем текст «Оставить отзыв» — остаётся только иконка */
        body.padel-pro-dark .padel-breadcrumbs__review-btn span {
                display: none !important;
        }
}

/* ===== END v1.12.22 ===== */

/* =====================================================
   v1.12.23 — МОБИЛЬНАЯ ВЕРСИЯ: компактный зазор между
   «Сегодня уже купили N шт» и блоком доставки
   Причина: у .padel-live-purchase оставался базовый
   margin-bottom: 18px (не перекрывался на мобильных),
   плюс margin-top: 12px у .padel-delivery — итого ~30px.
   ===================================================== */

@media (max-width: 640px) {
        body.padel-pro-dark .padel-live-purchase {
                margin-top: 14px !important;
                margin-bottom: 8px !important;
        }

        body.padel-pro-dark .padel-delivery {
                margin-top: 0 !important;
                margin-bottom: 12px !important;
        }
}

/* ===== END v1.12.23 ===== */

/* =====================================================
   v1.12.24 — HERO: «скидка + название + слоган» подняты
   и отцентрированы; блок рейтинга убран из hero (шаблон).
   Причины:
   - у .padel-hero__badges не было justify-content: center —
     бейдж «-23%» прижимался влево при центрированном заголовке;
   - align-items: center держал блок текста по середине
     экрана (100vh) — поднят к верху (flex-start);
   - на мобильных min-height: 70vh из v1.9.2 побеждал
     min-height: auto из v1.11.6 (специфичность
     body.padel-pro-dark) — hero снова компактный,
     верхние отступы уменьшены, всё по центру.
   ===================================================== */

/* ----- 1. Бейджи hero — всегда по центру ----- */
.padel-hero__badges {
        justify-content: center !important;
}

/* ----- 2. Контент hero — поднят к верху (десктоп/планшет) ----- */
.padel-hero {
        align-items: flex-start;
}

/* ----- 3. Мобильные: компактный hero, контент сверху и по центру ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-hero,
        body.padel-pro-light .padel-hero,
        body.padel-pro-auto .padel-hero {
                min-height: auto !important;
                padding-top: 28px !important;
                display: block !important;
                text-align: center !important;
        }

        body.padel-pro-dark .padel-hero__content,
        body.padel-pro-light .padel-hero__content,
        body.padel-pro-auto .padel-hero__content {
                width: 100% !important;
                max-width: 100% !important;
                margin: 0 auto !important;
                padding: 4px 0 24px !important;
                text-align: center !important;
        }

        body.padel-pro-dark .padel-hero__badges,
        body.padel-pro-light .padel-hero__badges,
        body.padel-pro-auto .padel-hero__badges {
                justify-content: center !important;
                margin-bottom: 10px !important;
        }

        body.padel-pro-dark .padel-hero__title,
        body.padel-pro-light .padel-hero__title,
        body.padel-pro-auto .padel-hero__title {
                text-align: center !important;
                margin-top: 12px !important;
        }

        body.padel-pro-dark .padel-hero__slogan--small,
        body.padel-pro-light .padel-hero__slogan--small,
        body.padel-pro-auto .padel-hero__slogan--small {
                text-align: center !important;
                margin-bottom: 18px !important;
        }
}

/* ===== END v1.12.24 ===== */

/* =====================================================
   v1.12.25 — HERO: блок «скидка + название + слоган»
   возвращён на прежнее место (в 1.12.24 поднят слишком
   высоко).
   - Десктоп/планшет: снова вертикальное центрирование
     в 100vh (align-items: center вместо flex-start).
   - Мобильные: возвращены прежние отступы —
     hero padding-top 50px (было 28px), контент
     30px 0 20px (было 4px 0 24px).
   - Горизонтальное центрирование бейджа «-23%»
     сохранено, рейтинг в hero остался убранным.
   ===================================================== */

/* ----- 1. Десктоп/планшет: контент снова по центру вертикали ----- */
.padel-hero {
        align-items: center !important;
}

/* ----- 2. Мобильные: прежние отступы hero ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-hero,
        body.padel-pro-light .padel-hero,
        body.padel-pro-auto .padel-hero {
                padding-top: 50px !important;
        }

        body.padel-pro-dark .padel-hero__content,
        body.padel-pro-light .padel-hero__content,
        body.padel-pro-auto .padel-hero__content {
                padding: 30px 0 20px !important;
        }
}

/* ===== END v1.12.25 ===== */

/* =====================================================
   v1.12.26 — HERO: бейдж «-23%» снова слева (десктоп),
   индикатор скролла («мышка») поднят под слоган.
   - v1.12.24 центрировала бейджи — на десктопе/планшете
     вернули flex-start (как было до 1.12.24); на мобильных
     бейджи остаются по центру (как и было с v1.11.6).
   - .padel-hero__scroll перенесён в шаблоне внутрь
     контента (под слоган): position static + margin auto
     вместо absolute bottom. На мобильных скрыт, как и было.
   ===================================================== */

/* ----- 1. Бейджи — снова слева (только десктоп/планшет) ----- */
@media (min-width: 641px) {
        .padel-hero__badges {
                justify-content: flex-start !important;
        }
}

/* ----- 2. Индикатор скролла — под слоганом, по центру ----- */
.padel-hero__scroll {
        position: static !important;
        transform: none !important;
        margin: 24px auto 0 !important;
}

/* ===== END v1.12.26 ===== */

/* =====================================================
   v1.12.27 — HERO (мобильные): блок видео снова высокий
   - В 1.12.24 hero на мобиле стал компактным
     (min-height: auto) — блок видео превратился в узкую
     полоску. Возвращена высота 70vh (как было до 1.12.24):
     контент остаётся сверху на текущих отступах,
     видео-блок продолжается вниз.
   ===================================================== */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-hero,
        body.padel-pro-light .padel-hero,
        body.padel-pro-auto .padel-hero {
                min-height: 70vh !important;
        }
}

/* ===== END v1.12.27 ===== */

/* =====================================================
   v1.12.30 — Блок «Характеристики» (SPEC RADAR):
   чёрный фон секции + читаемые подписи
   - Секция была единственной на странице без собственного
     фона (просвечивал серый #111 страницы, а соседние блоки
     #1a1a1a) — задан чистый чёрный #000 с отступами 80px,
     как у соседних секций (на мобильных 56px).
   - Подписи осей обрезались краем SVG viewBox («КОМФОРТ»
     без «К», «БАЛАНС» без «С»): svg -> overflow visible,
     подписи видны целиком.
   - Подписи крупнее (12px) и чище белый, сетка и оси ярче —
     контраст на чистом чёрном.
   ===================================================== */
body.padel-pro-dark .padel-radar-section {
        background: #000000 !important;
        padding: 80px 0 !important;
}

body.padel-pro-dark .padel-radar-section .padel-section-title {
        color: #ffffff !important;
}

body.padel-pro-dark .padel-radar-section .padel-radar svg {
        overflow: visible !important;
}

body.padel-pro-dark .padel-radar-section .padel-radar__label {
        fill: #ffffff !important;
        font-size: 12px !important;
}

body.padel-pro-dark .padel-radar-section .padel-radar__grid {
        stroke: rgba(255, 255, 255, 0.22) !important;
}

body.padel-pro-dark .padel-radar-section .padel-radar__axis {
        stroke: rgba(255, 255, 255, 0.12) !important;
}

@media (max-width: 640px) {
        body.padel-pro-dark .padel-radar-section {
                padding: 56px 0 !important;
        }
}

/* ===== END v1.12.30 ===== */

/* =====================================================
   v1.12.31 — «Купите также»: чёрный фон + быстрый
   просмотр как иконка глаза
   - Секция .padel-related была #1a1a1a — задан чистый
     чёрный #000 (в тон блоку «Характеристики»).
   - Кнопка «Быстрый просмотр» на карточках (появляется при
     наведении на фото) заменена на круглую кнопку с
     иконкой глаза: текст перенесён в aria-label/title,
     размер 44x44. Работает и в каталоге, и в «Купите
     также» (общий шаблон карточки).
   ===================================================== */
body.padel-pro-dark .padel-related {
        background: #000000 !important;
}

body.padel-pro-dark .padel-card__quickview--icon {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        padding: 0 !important;
        border-radius: 50% !important;
}

body.padel-pro-dark .padel-card__quickview--icon svg {
        width: 20px !important;
        height: 20px !important;
        display: block !important;
}

/* ===== END v1.12.31 ===== */

/* =====================================================
   v1.12.33 — ОТЗЫВЫ: секция убрана со страницы, список
   отзывов открывается кнопкой «Открыть отзывы» в крошках
   - Кнопка «Открыть отзывы»: белый контур, белый текст.
   - Кнопки крошек сгруппированы в .padel-breadcrumbs__actions
     (иначе space-between расталкивал бы три элемента).
   - Модальное окно со всеми отзывами о товаре (сводка
     рейтинга + список), чёрный фон, ширина 880px, скролл.
   ===================================================== */

/* ----- Группа кнопок в крошках ----- */
body.padel-pro-dark .padel-breadcrumbs__actions {
        display: flex;
        align-items: center;
        gap: 8px;
        flex: 0 0 auto;
}

/* ----- Кнопка «Открыть отзывы»: белый контур + белый текст ----- */
body.padel-pro-dark .padel-breadcrumbs__reviews-btn {
        flex: 0 0 auto;
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 8px 14px;
        background: transparent !important;
        color: #ffffff !important;
        border: 1px solid rgba(255, 255, 255, 0.85) !important;
        border-radius: var(--padel-radius-sm, 8px);
        font-family: var(--padel-font);
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.3px;
        cursor: pointer;
        transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}

body.padel-pro-dark .padel-breadcrumbs__reviews-btn:hover {
        background: rgba(255, 255, 255, 0.12) !important;
        border-color: #ffffff !important;
        transform: translateY(-1px);
}

body.padel-pro-dark .padel-breadcrumbs__reviews-btn:focus-visible {
        outline: 2px solid #ffffff;
        outline-offset: 2px;
}

/* ----- Модальное окно со списком отзывов ----- */
body.padel-pro-dark .padel-reviews-modal {
        position: fixed;
        inset: 0;
        z-index: 9999;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 20px;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0.3s ease;
}

body.padel-pro-dark .padel-reviews-modal.is-open {
        opacity: 1;
        visibility: visible;
}

body.padel-pro-dark .padel-reviews-modal__overlay {
        position: absolute;
        inset: 0;
        background: rgba(0, 0, 0, 0.78);
        backdrop-filter: blur(6px);
        -webkit-backdrop-filter: blur(6px);
        cursor: pointer;
}

body.padel-pro-dark .padel-reviews-modal__dialog {
        position: relative;
        z-index: 1;
        width: min(880px, 100%);
        max-height: calc(100vh - 40px);
        overflow-y: auto;
        background: #000000 !important;
        border: 1px solid rgba(255, 255, 255, 0.16) !important;
        border-radius: var(--padel-radius, 14px);
        padding: 28px 24px 24px;
        box-shadow: 0 30px 80px rgba(0, 0, 0, 0.7);
        transform: scale(0.92) translateY(20px);
        transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

body.padel-pro-dark .padel-reviews-modal.is-open .padel-reviews-modal__dialog {
        transform: scale(1) translateY(0);
}

body.padel-pro-dark .padel-reviews-modal__close {
        position: absolute;
        top: 14px;
        right: 14px;
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, 0.08) !important;
        color: #ffffff !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        border-radius: 50%;
        cursor: pointer;
}

body.padel-pro-dark .padel-reviews-modal__close:hover {
        background: rgba(255, 255, 255, 0.16) !important;
}

body.padel-pro-dark .padel-reviews-modal__title {
        margin: 0 0 6px;
        font-family: var(--padel-font-display, inherit);
        font-size: 1.6rem;
        font-weight: 800;
        color: #ffffff !important;
        text-transform: uppercase;
        letter-spacing: 1px;
}

body.padel-pro-dark .padel-reviews-modal__subtitle {
        margin: 0 0 18px;
        color: rgba(255, 255, 255, 0.6) !important;
        font-size: 0.95rem;
}

/* ----- Мобильная версия ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-breadcrumbs__actions {
                margin-left: auto !important;
                gap: 6px !important;
        }

        /* margin-left:auto у кнопки отзыва (v1.12.22) больше не нужен —
           он разрывал бы группу из двух кнопок */
        body.padel-pro-dark .padel-breadcrumbs__review-btn {
                margin-left: 0 !important;
        }

        body.padel-pro-dark .padel-breadcrumbs__reviews-btn {
                padding: 7px 9px !important;
                font-size: 11px !important;
                gap: 5px !important;
        }

        body.padel-pro-dark .padel-breadcrumbs__reviews-btn svg {
                width: 14px !important;
                height: 14px !important;
        }

        body.padel-pro-dark .padel-reviews-modal {
                padding: 12px;
        }

        body.padel-pro-dark .padel-reviews-modal__dialog {
                padding: 24px 16px 16px;
                max-height: calc(100vh - 24px);
        }

        body.padel-pro-dark .padel-reviews-modal__title {
                font-size: 1.2rem;
        }
}

/* ===== END v1.12.33 ===== */

/* =====================================================
   v1.12.34 — КНОПКИ КРОШЕК: порядок «Оставить отзыв» ->
   «Открыть отзывы»; на мобильных «Открыть отзывы» —
   только иконка (круглая кнопка со звездой).
   ===================================================== */

/* ----- Мобильная версия: «Открыть отзывы» — только иконка ----- */
@media (max-width: 640px) {
        body.padel-pro-dark .padel-breadcrumbs__reviews-btn {
                width: 34px !important;
                height: 34px !important;
                padding: 0 !important;
                gap: 0 !important;
                justify-content: center;
                border-radius: 50% !important;
        }

        /* Скрываем текст «Открыть отзывы» — остаётся только иконка */
        body.padel-pro-dark .padel-breadcrumbs__reviews-btn span {
                display: none !important;
        }
}

/* ===== END v1.12.34 ===== */

/* =====================================================
   v1.12.35 — ЧАСТЫЕ ВОПРОСЫ: чёрный фон секции
   Секция .padel-qa была прозрачной (просвечивал фон
   страницы #111) — как «Характеристики» и «Купите
   также» переводится на чистый чёрный #000.
   ===================================================== */

body.padel-pro-dark .padel-qa {
        background: #000000 !important;
        padding: 80px 0 !important;
}

body.padel-pro-dark .padel-qa .padel-section-title {
        color: #ffffff !important;
}

/* Рамка карточек чуть заметнее на чистом чёрном */
body.padel-pro-dark .padel-qa .padel-qa-item {
        border-color: rgba(255, 255, 255, 0.14) !important;
}

body.padel-pro-dark .padel-qa .padel-qa-item__q {
        color: #ffffff !important;
}

body.padel-pro-dark .padel-qa .padel-qa-item__a {
        color: rgba(255, 255, 255, 0.72) !important;
}

@media (max-width: 640px) {
        body.padel-pro-dark .padel-qa {
                padding: 56px 0 !important;
        }
}

/* ===== END v1.12.35 ===== */

/* =====================================================
   v1.12.37 — ИКОНКИ «СРАВНЕНИЕ» / «ИЗБРАННОЕ» ЧИТАЕМЫ
   Причина: размер SVG задавался только HTML-атрибутами
   width/height — CSS темы перекрывал их, иконки сжимались
   до нечитаемых. Размеры теперь форсируются !important
   (паттерн рабочей иконки глаза из v1.12.31). Плюс
   иконка сравнения заменена на понятные «стрелки ⇄»
   (шаблон карточки + class-compare.php).
   ===================================================== */

/* ----- Круглые кнопки на карточке: чуть крупнее ----- */
body.padel-pro-dark .padel-card__quick-btn {
        width: 38px !important;
        height: 38px !important;
        padding: 0 !important;
        border-radius: 50% !important;
        flex-shrink: 0 !important;
}

/* ----- Иконки внутри: жёсткий размер, никакой масштаб от темы ----- */
body.padel-pro-dark .padel-card__quick-btn svg {
        width: 20px !important;
        height: 20px !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: none !important;
        display: block !important;
}

/* ----- Плавающие кнопки сравнения/избранного — та же защита ----- */
body.padel-pro-dark .padel-float-compare svg {
        width: 22px !important;
        height: 22px !important;
        min-width: 0 !important;
        max-width: none !important;
        display: block !important;
}

body.padel-pro-dark .padel-float-wishlist svg {
        width: 24px !important;
        height: 24px !important;
        min-width: 0 !important;
        max-width: none !important;
        display: block !important;
}

/* ===== END v1.12.37 ===== */

/* =====================================================
   v1.12.38 — КНОПКА ГЛАЗА: белая иконка + зазор между
   «Подробнее» и глазом
   - Иконка глаза была чёрной: кнопка padel-btn--primary
     в тёмной теме форсирует color var(--padel-black),
     а svg глаза рисуется stroke="currentColor".
   - .padel-card__overlay не имел gap — кнопки стояли
     вплотную.
   ===================================================== */

/* ----- Белая иконка глаза (currentColor -> #fff) ----- */
body.padel-pro-dark .padel-card__quickview--icon {
        color: #ffffff !important;
}

body.padel-pro-dark .padel-card__quickview--icon svg {
        color: #ffffff !important;
}

/* ----- Зазор между кнопками в оверлее карточки ----- */
body.padel-pro-dark .padel-card__overlay {
        gap: 14px !important;
}

/* ===== END v1.12.38 ===== */

/* =====================================================
   v1.12.39 — ЗАЩИТА ИКОНОК/КНОПОК ОТ ТЕМЫ + ТЕНИ НА ВИДЕО

   1) FIX: иконки «⇄» и «♥» на карточках, кнопка глаза
      и зелёные кнопки («В корзину» и др.) перекрашивались
      темой сайта в оранжевый/розовый и теряли форму,
      иконки становились тёмными/невидимыми. Все правила
      ниже построены на селекторах html body .класс и НЕ
      зависят от body.padel-pro-dark (тема может не давать
      этот класс) — с !important тема их не перебьёт.
   2) NEW: две мягкие чёрные тени, падающие на видео:
      - от блока хлебных крошек (Главная / Каталог / …)
        вниз, на верхнюю кромку видео;
      - от блока карточки товара вверх, на нижнюю кромку
        видео. Края видео плавно уходят в чёрный.
   ===================================================== */

/* ----- 1. Кнопки «В сравнение» / «В избранное» на карточке ----- */
html body .padel-card__quick-btn,
html body button.padel-card__quick-btn {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        padding: 0 !important;
        border-radius: 50% !important;
        background: rgba(0, 0, 0, 0.85) !important;
        border: 1px solid rgba(255, 255, 255, 0.25) !important;
        color: #ffffff !important;
        -webkit-appearance: none !important;
        appearance: none !important;
        box-shadow: none !important;
        text-shadow: none !important;
}

html body .padel-card__quick-btn svg {
        width: 20px !important;
        height: 20px !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: none !important;
        max-height: none !important;
        display: block !important;
        color: #ffffff !important;
        stroke: #ffffff !important;
        fill: none !important;
}

html body .padel-card__quick-btn:hover,
html body .padel-card__quick-btn.is-active {
        background: var(--padel-green, #39FF14) !important;
        border-color: var(--padel-green, #39FF14) !important;
        color: #000000 !important;
}

html body .padel-card__quick-btn:hover svg {
        stroke: #000000 !important;
        color: #000000 !important;
}

html body .padel-card__quick-btn.is-active svg {
        stroke: #000000 !important;
        color: #000000 !important;
        fill: #000000 !important;
}

/* ----- 2. Круглая кнопка глаза «Быстрый просмотр» ----- */
/* v1.12.42: фон/рамку кнопки снова красит тема сайта (оранжевый) —
   плагин задаёт только форму и тень */
html body .padel-card__quickview--icon {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        padding: 0 !important;
        border-radius: 50% !important;
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45) !important;
        text-shadow: none !important;
}

html body .padel-card__quickview--icon svg {
        width: 20px !important;
        height: 20px !important;
        display: block !important;
        color: #ffffff !important;
        stroke: #ffffff !important;
        fill: none !important;
}

/* v1.12.42: hover глаза красит тема сайта — правка удалена */

/* ----- 3. Основные зелёные кнопки («В корзину», CTA, оплата) ----- */
/* v1.12.42: кнопки на карточках («В корзину», глаз) исключены —
   их красит тема сайта */
html body .padel-btn--primary:not(.padel-add-to-cart):not(.padel-card__quickview--icon) {
        background: var(--padel-green, #39FF14) !important;
        border-color: var(--padel-green, #39FF14) !important;
        color: var(--padel-black, #111111) !important;
        text-shadow: none !important;
}

html body .padel-btn--primary:not(.padel-add-to-cart):not(.padel-card__quickview--icon):hover {
        background: var(--padel-green-dark, #2ACC0F) !important;
        border-color: var(--padel-green-dark, #2ACC0F) !important;
        color: var(--padel-black, #111111) !important;
}

html body .padel-btn--primary svg {
        color: var(--padel-black, #111111) !important;
        stroke: var(--padel-black, #111111) !important;
        fill: none !important;
}

/* ----- 4. Кнопки-контур белые («Подробнее» и др.) ----- */
html body .padel-btn--ghost {
        background: transparent !important;
        border-color: rgba(255, 255, 255, 0.3) !important;
        color: #ffffff !important;
        text-shadow: none !important;
}

html body .padel-btn--ghost:hover {
        background: rgba(0, 0, 0, 0.3) !important;
        border-color: var(--padel-green, #39FF14) !important;
        color: var(--padel-green, #39FF14) !important;
}

html body .padel-btn--ghost svg {
        color: inherit !important;
        stroke: currentColor !important;
        fill: none !important;
}

/* ----- 5. Плавающие кнопки: корзина / сравнение / избранное ----- */
/* v1.12.42: фон корзины снова красит тема сайта (оранжевый) —
   плагин задаёт только форму */
html body .padel-float-cart {
        border-radius: 50% !important;
        border: none !important;
}

html body .padel-float-cart svg {
        width: 26px !important;
        height: 26px !important;
        display: block !important;
        color: var(--padel-black, #111111) !important;
        stroke: var(--padel-black, #111111) !important;
        fill: none !important;
}

html body .padel-float-cart__badge {
        background: #ff4757 !important;
        color: #ffffff !important;
        border-radius: 11px !important;
}

html body .padel-float-compare,
html body .padel-float-wishlist {
        background: #1a1a1a !important;
        border-radius: 50% !important;
}

html body .padel-float-compare {
        border: 1px solid var(--padel-green, #39FF14) !important;
        color: var(--padel-green, #39FF14) !important;
}

html body .padel-float-wishlist {
        border: 1px solid #ff4757 !important;
        color: #ff4757 !important;
}

html body .padel-float-compare svg,
html body .padel-float-wishlist svg {
        stroke: currentColor !important;
        fill: none !important;
        display: block !important;
}

html body .padel-float-compare:hover {
        background: var(--padel-green, #39FF14) !important;
        color: #000000 !important;
}

html body .padel-float-wishlist:hover {
        background: #ff4757 !important;
        color: #ffffff !important;
}

/* ----- 6. Кнопки в хлебных крошках ----- */
html body .padel-breadcrumbs__review-btn {
        background: rgba(var(--padel-accent-rgb, 57, 255, 20), 0.12) !important;
        color: var(--padel-accent, #39FF14) !important;
        border: 1px solid rgba(var(--padel-accent-rgb, 57, 255, 20), 0.4) !important;
        text-shadow: none !important;
}

html body .padel-breadcrumbs__review-btn svg {
        stroke: currentColor !important;
        fill: none !important;
}

html body .padel-breadcrumbs__reviews-btn {
        background: transparent !important;
        border: 1px solid rgba(255, 255, 255, 0.35) !important;
        color: #ffffff !important;
        text-shadow: none !important;
}

html body .padel-breadcrumbs__reviews-btn svg {
        stroke: #ffffff !important;
        fill: none !important;
}

/* ----- 7. ТЕНЬ от блока хлебных крошек, падающая на видео ----- */
.padel-breadcrumbs {
        position: relative;
        z-index: 50;
}

.padel-breadcrumbs::after {
        content: '';
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        height: 110px;
        background: linear-gradient(
                to bottom,
                rgba(0, 0, 0, 0.92) 0%,
                rgba(0, 0, 0, 0.55) 40%,
                rgba(0, 0, 0, 0) 100%
        );
        pointer-events: none;
        z-index: 60;
}

/* ----- 8. ТЕНЬ от блока карточки товара, падающая на видео ----- */
.padel-buy {
        z-index: 50;
}

.padel-buy::before {
        content: '';
        position: absolute;
        bottom: 100%;
        left: 0;
        right: 0;
        height: 130px;
        background: linear-gradient(
                to top,
                rgba(0, 0, 0, 0.92) 0%,
                rgba(0, 0, 0, 0.55) 40%,
                rgba(0, 0, 0, 0) 100%
        );
        pointer-events: none;
        z-index: 60;
}

/* На мобильных видео ниже — тени короче и мягче */
@media (max-width: 980px) {
        .padel-breadcrumbs::after {
                height: 70px;
        }

        .padel-buy::before {
                height: 85px;
        }
}

/* ===== END v1.12.39 ===== */

/* =====================================================
   v1.12.40 — ЧИТАЕМЫЕ ИКОНКИ НА КАРТОЧКАХ + ФИРМЕННЫЙ
   ЗЕЛЁНЫЙ КНОПОК («Купите также», каталог)

   Что было:
   - Кнопка глаза и «В корзину» красились через
     var(--padel-green), а на каждой карточке эта
     переменная перебивается inline-стилем товара
     (accent_color). При пустом/светлом акценте кнопка
     глаза становилась белой, белая иконка на белом
     пропадала — «глаз вся белая».
   - v1.12.39: правило .padel-btn--primary svg шло в файле
     позже .padel-card__quickview--icon svg и при равной
     специфичности перебивало цвет иконки глаза.
   - Тема сайта может задавать fill/stroke напрямую
     дочерним элементам svg (path/circle) — правила на
     самом svg это не перекрывали: наследование слабее
     прямого правила, иконки «не читались».

   Решение:
   - Для контролов карточки зелёный захардкожен #39FF14
     (фирменный цвет плагина): акцент товара и тема
     больше на эти кнопки не влияют.
   - Цвет иконок задаётся и на svg, И на svg path/circle
     — с !important и повышенной специфичностью.
   - Круглые кнопки «сравнить/избранное»: непрозрачный
     чёрный круг + белая обводка — читаются на любом фото.
   ===================================================== */

/* ----- 1. «В сравнение» / «В избранное»: чёрный круг, белая иконка ----- */
html body .padel-card__quick-actions .padel-card__quick-btn,
html body .padel-card__quick-actions button.padel-card__quick-btn {
        background: #000000 !important;
        border: 1px solid rgba(255, 255, 255, 0.45) !important;
        color: #ffffff !important;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.55) !important;
        text-shadow: none !important;
}

html body .padel-card__quick-actions .padel-card__quick-btn svg,
html body .padel-card__quick-actions .padel-card__quick-btn svg path,
html body .padel-card__quick-actions .padel-card__quick-btn svg circle,
html body .padel-card__quick-actions .padel-card__quick-btn svg rect,
html body .padel-card__quick-actions .padel-card__quick-btn svg line,
html body .padel-card__quick-actions .padel-card__quick-btn svg polyline {
        stroke: #ffffff !important;
        fill: none !important;
        color: #ffffff !important;
}

/* v1.12.42: фон при наведении/активации красит тема сайта —
   плагин лишь держит иконку чёрной для контраста */
html body .padel-card__quick-actions .padel-card__quick-btn:hover,
html body .padel-card__quick-actions .padel-card__quick-btn.is-active {
        color: #000000 !important;
}

html body .padel-card__quick-actions .padel-card__quick-btn:hover svg,
html body .padel-card__quick-actions .padel-card__quick-btn:hover svg path,
html body .padel-card__quick-actions .padel-card__quick-btn:hover svg circle,
html body .padel-card__quick-actions .padel-card__quick-btn:hover svg line,
html body .padel-card__quick-actions .padel-card__quick-btn:hover svg polyline {
        stroke: #000000 !important;
        fill: none !important;
        color: #000000 !important;
}

/* активное сердечко — залито чёрным на зелёном */
html body .padel-card__quick-actions .padel-card__quick-btn.is-active svg,
html body .padel-card__quick-actions .padel-card__quick-btn.is-active svg path {
        stroke: #000000 !important;
        fill: #000000 !important;
        color: #000000 !important;
}

/* ----- 2. Глаз быстрого просмотра: зелёный #39FF14 + чёрная иконка ----- */
html body .padel-card .padel-card__overlay button.padel-card__quickview--icon,
html body .padel-card .padel-card__overlay .padel-card__quickview--icon {
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45) !important;
        text-shadow: none !important;
}

html body .padel-card .padel-card__overlay .padel-card__quickview--icon svg,
html body .padel-card .padel-card__overlay .padel-card__quickview--icon svg path,
html body .padel-card .padel-card__overlay .padel-card__quickview--icon svg circle {
        stroke: #000000 !important;
        fill: none !important;
        color: #000000 !important;
}

/* зрачок — сплошной чёрный */
html body .padel-card .padel-card__overlay .padel-card__quickview--icon svg circle {
        fill: #000000 !important;
}

/* v1.12.42: hover/focus глаза красит тема сайта — правка удалена */

/* ----- 3. «В корзину» на карточке: фон/цвет красит тема сайта;
          плагин убирает только тень текста (v1.12.42) ----- */
html body .padel-card .padel-card__footer .padel-btn--primary {
        text-shadow: none !important;
}

html body .padel-card .padel-card__footer .padel-btn--primary svg,
html body .padel-card .padel-card__footer .padel-btn--primary svg path,
html body .padel-card .padel-card__footer .padel-btn--primary svg circle {
        stroke: #000000 !important;
        fill: none !important;
        color: #000000 !important;
}

/* ----- 4. «Подробнее» на фото: тёмная подложка — белый текст
          читается даже если тема убрала затемнение оверлея ----- */
html body .padel-card .padel-card__overlay .padel-btn--ghost {
        background: rgba(0, 0, 0, 0.6) !important;
        border-color: rgba(255, 255, 255, 0.4) !important;
        color: #ffffff !important;
        text-shadow: none !important;
}

/* ===== END v1.12.40 ===== */

/* =====================================================
   v1.12.41 — РОЗОВЫЙ #c36 ТЕМЫ ПРИ НАЖАТИИ: ПОЛНОЕ
   ПЕРЕКРЫТИЕ СОСТОЯНИЙ :active / :focus / :visited

   Причина: многие кнопки плагина — ссылки <a> (крошки
   «Главная / Каталог», «Подробнее», заголовки и категории
   карточек, липкая панель покупки, мобильная CTA). Плагин
   стилизовал их только в покое и :hover, а состояния
   нажатия (:active / :focus / :visited) оставил теме.
   Тема пользователя (на базе Elementor / Hello Elementor)
   красит ссылки по умолчанию в розовый #CC3366 — он и
   мелькал при каждом нажатии. В самом плагине этого цвета
   нет ни в одном файле.

   Решение: у всех интерактивных элементов плагина прописаны
   состояния нажатия в цветах плагина (с !important); системная
   подсветка тапа на мобильных отключена; клавиатурная рамка
   фокуса — фирменно-зелёная, мышиная — отсутствует.
   ===================================================== */

/* ----- 0. Розовая подсветка тапа на мобильных — отключить ----- */
html body [class*="padel-"] {
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
}

html body [class*="padel-"] a:active {
        outline: none !important;
}

/* ----- 1. Ссылки-крошки: все состояния в цвете плагина ----- */
html body .padel-breadcrumbs__link,
html body .padel-breadcrumbs__link:link,
html body .padel-breadcrumbs__link:visited,
html body .padel-breadcrumbs__link:focus,
html body .padel-breadcrumbs__link:active {
        color: var(--padel-text-muted, #888888) !important;
        text-decoration: none !important;
        outline: none !important;
}

html body .padel-breadcrumbs__link:hover {
        color: var(--padel-green, #39FF14) !important;
}

/* ----- 2. Ссылки карточек: заголовок, категория, фото ----- */
html body .padel-card__title a,
html body .padel-card__title a:link,
html body .padel-card__title a:visited,
html body .padel-card__title a:focus,
html body .padel-card__title a:active {
        color: #ffffff !important;
        text-decoration: none !important;
        outline: none !important;
}

html body .padel-card__title a:hover {
        color: var(--padel-green, #39FF14) !important;
}

html body .padel-card__cat,
html body .padel-card__cat:link,
html body .padel-card__cat:visited,
html body .padel-card__cat:focus,
html body .padel-card__cat:active {
        color: var(--padel-green, #39FF14) !important;
        text-decoration: none !important;
        outline: none !important;
}

html body .padel-card__image-link,
html body .padel-card__image-link:link,
html body .padel-card__image-link:visited,
html body .padel-card__image-link:focus,
html body .padel-card__image-link:active {
        outline: none !important;
}

/* ----- 3. Кнопки-ссылки: ghost («Подробнее») и primary (CTA) ----- */
html body a.padel-btn--ghost,
html body a.padel-btn--ghost:link,
html body a.padel-btn--ghost:visited {
        background: transparent !important;
        border-color: rgba(255, 255, 255, 0.3) !important;
        color: #ffffff !important;
        text-decoration: none !important;
}

html body .padel-btn--ghost:focus,
html body .padel-btn--ghost:active {
        background: rgba(0, 0, 0, 0.3) !important;
        border-color: var(--padel-green, #39FF14) !important;
        color: var(--padel-green, #39FF14) !important;
        text-shadow: none !important;
        outline: none !important;
}

html body a.padel-btn--primary:visited {
        background: var(--padel-green, #39FF14) !important;
        border-color: var(--padel-green, #39FF14) !important;
        color: #000000 !important;
        text-decoration: none !important;
}

html body .padel-btn--primary:not(.padel-add-to-cart):not(.padel-card__quickview--icon):focus,
html body .padel-btn--primary:not(.padel-add-to-cart):not(.padel-card__quickview--icon):active {
        background: var(--padel-green-dark, #2ACC0F) !important;
        border-color: var(--padel-green-dark, #2ACC0F) !important;
        color: #000000 !important;
        text-shadow: none !important;
        outline: none !important;
}

/* «В корзину» на карточках: v1.12.42 — фон в нажатом состоянии
   красит тема сайта, плагин оставляет только outline:none */
html body .padel-card .padel-card__footer .padel-btn--primary:focus,
html body .padel-card .padel-card__footer .padel-btn--primary:active {
        outline: none !important;
}

/* ----- 4. Быстрые круглые кнопки (сравнить/избранное): нажатие = зелёный ----- */
html body .padel-card__quick-actions .padel-card__quick-btn:focus,
html body .padel-card__quick-actions .padel-card__quick-btn:active {
        color: #000000 !important;
        outline: none !important;
}

html body .padel-card__quick-actions .padel-card__quick-btn:focus svg,
html body .padel-card__quick-actions .padel-card__quick-btn:focus svg path,
html body .padel-card__quick-actions .padel-card__quick-btn:focus svg circle,
html body .padel-card__quick-actions .padel-card__quick-btn:focus svg line,
html body .padel-card__quick-actions .padel-card__quick-btn:focus svg polyline,
html body .padel-card__quick-actions .padel-card__quick-btn:active svg,
html body .padel-card__quick-actions .padel-card__quick-btn:active svg path,
html body .padel-card__quick-actions .padel-card__quick-btn:active svg circle,
html body .padel-card__quick-actions .padel-card__quick-btn:active svg line,
html body .padel-card__quick-actions .padel-card__quick-btn:active svg polyline {
        stroke: #000000 !important;
        fill: none !important;
        color: #000000 !important;
}

/* ----- 5. Глаз быстрого просмотра: нажатие = тёмно-зелёный ----- */
html body .padel-card .padel-card__overlay .padel-card__quickview--icon:focus,
html body .padel-card .padel-card__overlay .padel-card__quickview--icon:active {
        outline: none !important;
}

/* ----- 6. Плавающие кнопки: нажатие = как наведение ----- */
html body .padel-float-cart:focus,
html body .padel-float-cart:active {
        outline: none !important;
}

html body .padel-float-cart:focus svg,
html body .padel-float-cart:active svg,
html body .padel-float-cart:focus svg path,
html body .padel-float-cart:active svg path {
        stroke: #000000 !important;
        fill: none !important;
        color: #000000 !important;
}

html body .padel-float-compare:focus,
html body .padel-float-compare:active {
        background: #39FF14 !important;
        border-color: #39FF14 !important;
        color: #000000 !important;
        outline: none !important;
}

html body .padel-float-compare:focus svg,
html body .padel-float-compare:active svg,
html body .padel-float-compare:focus svg path,
html body .padel-float-compare:active svg path {
        stroke: #000000 !important;
        fill: none !important;
        color: #000000 !important;
}

html body .padel-float-wishlist:focus,
html body .padel-float-wishlist:active {
        background: #ff4757 !important;
        border-color: #ff4757 !important;
        color: #ffffff !important;
        outline: none !important;
}

html body .padel-float-wishlist:focus svg,
html body .padel-float-wishlist:active svg,
html body .padel-float-wishlist:focus svg path,
html body .padel-float-wishlist:active svg path {
        stroke: #ffffff !important;
        fill: none !important;
        color: #ffffff !important;
}

/* ----- 7. Кнопки в крошках («Открыть отзывы» и др.): нажатие = как покой ----- */
html body .padel-breadcrumbs__review-btn:focus,
html body .padel-breadcrumbs__review-btn:active,
html body .padel-breadcrumbs__review-btn:visited {
        background: rgba(var(--padel-accent-rgb, 57, 255, 20), 0.12) !important;
        border: 1px solid rgba(var(--padel-accent-rgb, 57, 255, 20), 0.4) !important;
        color: var(--padel-accent, #39FF14) !important;
        text-shadow: none !important;
        outline: none !important;
}

html body .padel-breadcrumbs__reviews-btn:focus,
html body .padel-breadcrumbs__reviews-btn:active,
html body .padel-breadcrumbs__reviews-btn:visited {
        background: transparent !important;
        border: 1px solid rgba(255, 255, 255, 0.35) !important;
        color: #ffffff !important;
        text-shadow: none !important;
        outline: none !important;
}

/* ----- 8. Липкая панель покупки и мобильная CTA ----- */
html body .padel-sticky-buy a,
html body .padel-sticky-buy a:link,
html body .padel-sticky-buy a:visited,
html body .padel-sticky-buy a:focus,
html body .padel-sticky-buy a:active {
        color: #ffffff !important;
        text-decoration: none !important;
        outline: none !important;
}

html body .padel-sticky-buy a:hover {
        color: var(--padel-green, #39FF14) !important;
}

html body a.padel-mobile-cta,
html body a.padel-mobile-cta:link,
html body a.padel-mobile-cta:visited,
html body a.padel-mobile-cta:focus,
html body a.padel-mobile-cta:active {
        color: #000000 !important;
        text-decoration: none !important;
        outline: none !important;
}

/* ----- 9. Фокус: клавиатура — зелёная рамка, мышь — никакой ----- */
html body .padel-btn:focus-visible,
html body .padel-card__quick-btn:focus-visible,
html body .padel-card__quickview:focus-visible,
html body .padel-qty__btn:focus-visible,
html body .padel-qty__input:focus-visible,
html body .padel-cart-drawer__close:focus-visible,
html body .padel-buy__thumb:focus-visible,
html body .padel-breadcrumbs__link:focus-visible,
html body .padel-breadcrumbs__review-btn:focus-visible,
html body .padel-breadcrumbs__reviews-btn:focus-visible,
html body .padel-catalog__view-btn:focus-visible,
html body .padel-catalog__mobile-toggle:focus-visible,
html body .padel-card a:focus-visible,
html body .padel-catalog__filters input:focus-visible,
html body .padel-catalog__filters select:focus-visible,
html body .padel-sticky-buy a:focus-visible,
html body .padel-float-cart:focus-visible,
html body .padel-float-compare:focus-visible,
html body .padel-float-wishlist:focus-visible {
        outline: 2px solid #39FF14 !important;
        outline-offset: 3px !important;
}

html body .padel-btn:focus:not(:focus-visible),
html body .padel-card__quick-btn:focus:not(:focus-visible),
html body .padel-card__quickview:focus:not(:focus-visible),
html body .padel-breadcrumbs__link:focus:not(:focus-visible),
html body .padel-breadcrumbs__review-btn:focus:not(:focus-visible),
html body .padel-breadcrumbs__reviews-btn:focus:not(:focus-visible),
html body .padel-float-cart:focus:not(:focus-visible),
html body .padel-float-compare:focus:not(:focus-visible),
html body .padel-float-wishlist:focus:not(:focus-visible),
html body .padel-card a:focus:not(:focus-visible),
html body .padel-sticky-buy a:focus:not(:focus-visible) {
        outline: none !important;
}

/* ===== END v1.12.41 ===== */

/* =====================================================
   v1.12.42 — ВОЗВРАТ ЦВЕТОВ ТЕМЫ КНОПКАМ + ОТСТУП СЕТКИ
   ОТ ЗАГОЛОВКА «КУПИТЕ ТАКЖЕ»

   Пользователь: кнопки в «Купите также» и плавающая
   корзина справа внизу были оранжевыми (их красила тема
   сайта), а v1.12.39–41 стали принудительно красить их
   в зелёный. Вернуть как было.

   Решение:
   - Фон/рамку/цвет текста кнопок на карточках (глаз,
     «В корзину»), их hover/focus/active и фон плавающей
     корзины снова красит тема сайта — плагин больше не
     перебивает (правки в секциях v1.12.39–41 выше).
   - Плагин сохраняет: читаемые чёрные иконки (svg + path
     с !important), круглую форму, тени, outline:none,
     чёрные круги «сравнить/избранное».
   - PHP: пустой accent_color товара больше не даёт пустую
     переменную --padel-green (это был источник «белого»
     глаза в v1.12.39) — подменяется на #39FF14.
   - Сетка «Купите также» опущена от заголовка секции:
     десктоп 48px, мобильные 32px (тема обнуляла отступ
     заголовка — карточки липли к тексту).
   ===================================================== */

/* ----- Отступ сетки товаров от заголовка «Купите также» ----- */
html body .padel-related .padel-section-title {
        margin-bottom: 48px !important;
}

@media (max-width: 980px) {
        html body .padel-related .padel-section-title {
                margin-bottom: 32px !important;
        }
}

/* ===== END v1.12.42 ===== */

/* =====================================================
   v1.12.43 — ОКОНЧАТЕЛЬНОЕ УБИЙСТВО РОЗОВОГО #c36 +
   ВОЗВРАТ АКЦЕНТНОГО (ОРАНЖЕВОГО) ЦВЕТА КНОПКАМ

   Причина: v1.12.42 отдала фон кнопок теме («пусть
   красит тема»), но тема (Elementor kit) красит кнопки
   дефолтным розовым #CC3366, а ссылки <a> — цветом
   #CC3366. Оранжевый, который видит пользователь — это
   АКЦЕНТ ТОВАРА: карточки (content-product-card.php)
   и лендинг (single-product-card.php) задают
   var(--padel-green) = accent_color через inline-стили.

   Решение:
   - Фон кнопок снова у плагина: var(--padel-green)
     с !important → на этих товарах ОРАНЖЕВЫЙ, розовый
     теме больше не достаётся. Хвостик: в зонах без
     inline-акцента (каталог, архив) будет фирменный
     зелёный #39FF14 — как и было в оригинале.
   - .padel-float-cart оказался ССЫЛКОЙ <a> — после
     v1.12.42 стала прозрачной с розовой темой; теперь
     фон во всех состояниях ссылки (link/visited/hover/
     focus/active) — акцент товара.
   - Универсальный щит для ВСЕХ прочих ссылок плагина:
     покой белый, наведение/нажатие — акцент, все
     состояния с !important (Elementor kit красит ссылки
     через .elementor-kit-X a — специфичность выше
     одиночного класса, поэтому нужен щит).
   - Мелкие кнопки (количество, закрытие дравера, вид
     каталога, мобильный фильтр) защищены от kit-фона.
   ===================================================== */

/* ----- 1. «В корзину» на карточке: акцент товара ----- */
html body .padel-card .padel-card__footer button.padel-btn--primary,
html body .padel-card .padel-card__footer .padel-btn--primary.padel-add-to-cart {
        background: var(--padel-green, #39FF14) !important;
        border-color: var(--padel-green, #39FF14) !important;
        color: var(--padel-black, #111111) !important;
        text-decoration: none !important;
}

html body .padel-card .padel-card__footer button.padel-btn--primary:hover,
html body .padel-card .padel-card__footer button.padel-btn--primary:focus,
html body .padel-card .padel-card__footer button.padel-btn--primary:active,
html body .padel-card .padel-card__footer .padel-btn--primary.padel-add-to-cart:hover,
html body .padel-card .padel-card__footer .padel-btn--primary.padel-add-to-cart:focus,
html body .padel-card .padel-card__footer .padel-btn--primary.padel-add-to-cart:active {
        background: var(--padel-green-dark, #2ACC0F) !important;
        border-color: var(--padel-green-dark, #2ACC0F) !important;
        color: var(--padel-black, #111111) !important;
}

/* ----- 2. Глаз быстрого просмотра: акцент товара ----- */
html body .padel-card .padel-card__overlay button.padel-card__quickview--icon,
html body .padel-card .padel-card__overlay .padel-card__quickview--icon {
        background: var(--padel-green, #39FF14) !important;
        border: 2px solid var(--padel-green, #39FF14) !important;
}

html body .padel-card .padel-card__overlay button.padel-card__quickview--icon:hover,
html body .padel-card .padel-card__overlay button.padel-card__quickview--icon:focus,
html body .padel-card .padel-card__overlay button.padel-card__quickview--icon:active,
html body .padel-card .padel-card__overlay .padel-card__quickview--icon:hover,
html body .padel-card .padel-card__overlay .padel-card__quickview--icon:focus,
html body .padel-card .padel-card__overlay .padel-card__quickview--icon:active {
        background: var(--padel-green-dark, #2ACC0F) !important;
        border-color: var(--padel-green-dark, #2ACC0F) !important;
}

/* ----- 3. Плавающая корзина (это ссылка!): акцент во всех состояниях ----- */
html body a.padel-float-cart,
html body a.padel-float-cart:link,
html body a.padel-float-cart:visited,
html body a.padel-float-cart:hover,
html body a.padel-float-cart:focus,
html body a.padel-float-cart:active,
html body .padel-float-cart,
html body .padel-float-cart:link,
html body .padel-float-cart:visited {
        background: var(--padel-green, #39FF14) !important;
        color: var(--padel-black, #111111) !important;
        border: none !important;
        text-decoration: none !important;
        text-shadow: none !important;
}

html body a.padel-float-cart:hover,
html body a.padel-float-cart:focus,
html body a.padel-float-cart:active,
html body .padel-float-cart:hover,
html body .padel-float-cart:focus,
html body .padel-float-cart:active {
        background: var(--padel-green-dark, #2ACC0F) !important;
}

/* ----- 4. Круглые «сравнить/избранное»: наведение = акцент товара.
   Старые правила v1.12.39/40 конфликтовали (чёрный круг бил
   зелёный hover при равной специфичности, а v1.12.42 красила
   иконку чёрным — на чёрном круге она пропадала). ----- */
html body .padel-card .padel-card__quick-actions .padel-card__quick-btn:hover,
html body .padel-card .padel-card__quick-actions .padel-card__quick-btn:focus,
html body .padel-card .padel-card__quick-actions .padel-card__quick-btn:active,
html body .padel-card .padel-card__quick-actions .padel-card__quick-btn.is-active {
        background: var(--padel-green, #39FF14) !important;
        border-color: var(--padel-green, #39FF14) !important;
        color: #000000 !important;
}

/* ----- 5. Стрелка-скролл в герое: белая, никаких цветов темы ----- */
html body .padel-hero__scroll,
html body .padel-hero__scroll:link,
html body .padel-hero__scroll:visited,
html body .padel-hero__scroll:hover,
html body .padel-hero__scroll:focus,
html body .padel-hero__scroll:active {
        color: #ffffff !important;
        background: transparent !important;
        border-color: rgba(255, 255, 255, 0.3) !important;
        text-decoration: none !important;
        outline: none !important;
}

/* ----- 6. Нижняя навигация каталога: тема красила ссылки #c36 ----- */
html body .padel-bottom-nav__link,
html body .padel-bottom-nav__link:link,
html body .padel-bottom-nav__link:visited {
        color: var(--padel-text-muted, #999999) !important;
        text-decoration: none !important;
        outline: none !important;
}

html body .padel-bottom-nav__link.is-active,
html body .padel-bottom-nav__link:hover,
html body .padel-bottom-nav__link:focus,
html body .padel-bottom-nav__link:active {
        color: var(--padel-green, #39FF14) !important;
}

/* ----- 7. Мелкие кнопки против kit-фона #c36 ----- */
html body .padel-qty__btn,
html body .padel-qty__btn:hover,
html body .padel-qty__btn:active,
html body .padel-qty__btn:focus {
        background: transparent !important;
        color: #ffffff !important;
        outline: none !important;
}

html body .padel-qty__btn:hover {
        background: rgba(var(--padel-accent-rgb, 57, 255, 20), 0.12) !important;
        color: var(--padel-green, #39FF14) !important;
}

html body .padel-qty__input,
html body .padel-qty__input:focus {
        background: transparent !important;
        color: #ffffff !important;
}

html body .padel-cart-drawer__close,
html body .padel-cart-drawer__close:hover,
html body .padel-cart-drawer__close:focus,
html body .padel-cart-drawer__close:active {
        background: #1a1a1a !important;
        border: 1px solid rgba(255, 255, 255, 0.12) !important;
        color: #ffffff !important;
}

html body .padel-cart-drawer__close:hover {
        background: rgba(255, 71, 87, 0.2) !important;
        border-color: rgba(255, 71, 87, 0.5) !important;
}

html body .padel-catalog__view-btn,
html body .padel-catalog__view-btn:hover,
html body .padel-catalog__view-btn:focus,
html body .padel-catalog__view-btn:active {
        background: transparent !important;
        color: var(--padel-text-muted, #999999) !important;
}

html body .padel-catalog__view-btn.is-active,
html body .padel-catalog__view-btn.is-active:hover {
        background: var(--padel-green, #39FF14) !important;
        color: var(--padel-black, #111111) !important;
}

html body .padel-catalog__mobile-toggle,
html body .padel-catalog__mobile-toggle:hover,
html body .padel-catalog__mobile-toggle:focus,
html body .padel-catalog__mobile-toggle:active {
        background: #1a1a1a !important;
        border: 1px solid rgba(var(--padel-accent-rgb, 57, 255, 20), 0.3) !important;
        color: var(--padel-green, #39FF14) !important;
}

/* ----- 8. УНИВЕРСАЛЬНЫЙ ЩИТ: любая ссылка внутри зон плагина.
   Покой — белый, наведение/нажатие — акцент товара
   (var(--padel-green)). Исключены элементы со своими
   собственными цветами (крошки muted, категории зелёные,
   mobile-CTA чёрная и т.д.) — они закрыты выше. ----- */
html body [class*="padel-"] a:not(.padel-breadcrumbs__link):not(.padel-card__cat):not(.padel-mobile-cta):not(.padel-float-cart):not(.padel-bottom-nav__link):not(.padel-hero__scroll):not(.padel-breadcrumbs__review-btn):not(.padel-breadcrumbs__reviews-btn):not(.padel-btn--primary):not(.padel-btn--ghost),
html body [class*="padel-"] a:not(.padel-breadcrumbs__link):not(.padel-card__cat):not(.padel-mobile-cta):not(.padel-float-cart):not(.padel-bottom-nav__link):not(.padel-hero__scroll):not(.padel-breadcrumbs__review-btn):not(.padel-breadcrumbs__reviews-btn):not(.padel-btn--primary):not(.padel-btn--ghost):link,
html body [class*="padel-"] a:not(.padel-breadcrumbs__link):not(.padel-card__cat):not(.padel-mobile-cta):not(.padel-float-cart):not(.padel-bottom-nav__link):not(.padel-hero__scroll):not(.padel-breadcrumbs__review-btn):not(.padel-breadcrumbs__reviews-btn):not(.padel-btn--primary):not(.padel-btn--ghost):visited,
html body [class*="padel-"] a:not(.padel-breadcrumbs__link):not(.padel-card__cat):not(.padel-mobile-cta):not(.padel-float-cart):not(.padel-bottom-nav__link):not(.padel-hero__scroll):not(.padel-breadcrumbs__review-btn):not(.padel-breadcrumbs__reviews-btn):not(.padel-btn--primary):not(.padel-btn--ghost):hover,
html body [class*="padel-"] a:not(.padel-breadcrumbs__link):not(.padel-card__cat):not(.padel-mobile-cta):not(.padel-float-cart):not(.padel-bottom-nav__link):not(.padel-hero__scroll):not(.padel-breadcrumbs__review-btn):not(.padel-breadcrumbs__reviews-btn):not(.padel-btn--primary):not(.padel-btn--ghost):focus,
html body [class*="padel-"] a:not(.padel-breadcrumbs__link):not(.padel-card__cat):not(.padel-mobile-cta):not(.padel-float-cart):not(.padel-bottom-nav__link):not(.padel-hero__scroll):not(.padel-breadcrumbs__review-btn):not(.padel-breadcrumbs__reviews-btn):not(.padel-btn--primary):not(.padel-btn--ghost):active {
        color: #ffffff !important;
        text-decoration: none !important;
        text-shadow: none !important;
}

html body [class*="padel-"] a:not(.padel-breadcrumbs__link):not(.padel-card__cat):not(.padel-mobile-cta):not(.padel-float-cart):not(.padel-bottom-nav__link):not(.padel-hero__scroll):not(.padel-breadcrumbs__review-btn):not(.padel-breadcrumbs__reviews-btn):not(.padel-btn--primary):not(.padel-btn--ghost):hover,
html body [class*="padel-"] a:not(.padel-breadcrumbs__link):not(.padel-card__cat):not(.padel-mobile-cta):not(.padel-float-cart):not(.padel-bottom-nav__link):not(.padel-hero__scroll):not(.padel-breadcrumbs__review-btn):not(.padel-breadcrumbs__reviews-btn):not(.padel-btn--primary):not(.padel-btn--ghost):focus,
html body [class*="padel-"] a:not(.padel-breadcrumbs__link):not(.padel-card__cat):not(.padel-mobile-cta):not(.padel-float-cart):not(.padel-bottom-nav__link):not(.padel-hero__scroll):not(.padel-breadcrumbs__review-btn):not(.padel-breadcrumbs__reviews-btn):not(.padel-btn--primary):not(.padel-btn--ghost):active {
        color: var(--padel-green, #39FF14) !important;
}

/* Ссылки-кнопки primary/ghost (страницы корзины, чекаута и т.д.):
   фон и рамка — акцент, розовому темы хода нет */
html body a.padel-btn--primary,
html body a.padel-btn--primary:link,
html body a.padel-btn--primary:visited {
        background: var(--padel-green, #39FF14) !important;
        border-color: var(--padel-green, #39FF14) !important;
        color: var(--padel-black, #111111) !important;
        text-decoration: none !important;
}

html body a.padel-btn--primary:hover,
html body a.padel-btn--primary:focus,
html body a.padel-btn--primary:active {
        background: var(--padel-green-dark, #2ACC0F) !important;
        border-color: var(--padel-green-dark, #2ACC0F) !important;
        color: var(--padel-black, #111111) !important;
}

html body a.padel-btn--ghost:hover,
html body a.padel-btn--ghost:focus,
html body a.padel-btn--ghost:active {
        background: rgba(var(--padel-accent-rgb, 57, 255, 20), 0.1) !important;
        border-color: var(--padel-green, #39FF14) !important;
        color: var(--padel-green, #39FF14) !important;
}

/* ===== END v1.12.43 ===== */

/* =====================================================
   v1.12.44 — «КУПИТЕ ТАКЖЕ»: ЧИСТОВАЯ ДОВОДКА
   (иконки при наведении, чёрный фон, растянутые фото)

   Причины:
   1. Кнопки «сравнить/избранное» (.padel-card__quick-actions)
      БЕЗ z-index, а оверлей карточки (z-index: 3, фон
      rgba(17,17,17,0.85) — почти чёрный) при наведении
      НАКРЫВАЛ их → «иконки так и не видно при наведении»
      и «фон чёрный» — это он и есть.
   2. Секция .padel-related красилась тёмной плитой
      #1a1a1a / #000 — на странице выглядела чёрной
      вставкой.
   3. Тема пользователя ломает сетку .padel-grid
      (display/grid сбрасывается) и высоту медиа-блока →
      карточки и фото растягиваются.

   Решение (всё с !important, скоуп «Купите также»):
   - Иконки ⇄/♥ подняты НАД оверлеем (z-index 4) — во
     всех карточках плагина, включая каталог.
   - Оверлей в «Купите также» стал лёгким градиентом —
     фото просвечивает, чёрной заливки нет.
   - Фон секции прозрачный — блок сливается со страницей.
   - Сетка: принудительно 4 колонки (1200px→3, 980px→2,
     640px→1), карточка flex-колонка с фикс. рамкой.
   - Фото: строгие пропорции 4:5, object-fit: contain —
     растягивание исключено.
   ===================================================== */

/* ----- 1. Иконки ⇄/♥ и бейдж — поверх оверлея (глобально) ----- */
html body .padel-card .padel-card__quick-actions {
        z-index: 4 !important;
}

html body .padel-card .padel-card__badge {
        z-index: 4 !important;
}

/* ----- 2. Фон секции «Купите также» — прозрачный ----- */
html body .padel-related {
        background: transparent !important;
        padding: 64px 0 !important;
}

/* ----- 3. Оверлей на фото: лёгкий градиент вместо чёрной заливки ----- */
html body .padel-related .padel-card__overlay {
        background: linear-gradient(
                to top,
                rgba(0, 0, 0, 0.72) 0%,
                rgba(0, 0, 0, 0.30) 55%,
                rgba(0, 0, 0, 0.16) 100%
        ) !important;
}

/* ----- 4. Сетка: принудительный грид, тема его ломала ----- */
html body .padel-related .padel-grid {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 24px !important;
        max-width: 1400px !important;
        margin: 0 auto !important;
        padding: 0 24px !important;
        width: 100% !important;
        box-sizing: border-box !important;
}

@media (max-width: 1200px) {
        html body .padel-related .padel-grid {
                grid-template-columns: repeat(3, 1fr) !important;
        }
}

@media (max-width: 980px) {
        html body .padel-related .padel-grid {
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 16px !important;
                padding: 0 16px !important;
        }
}

@media (max-width: 640px) {
        html body .padel-related .padel-grid {
                grid-template-columns: 1fr !important;
        }
}

/* ----- 5. Карточка: компактная колонка, без растяжения ----- */
html body .padel-related .padel-card {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        background: #161616 !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 14px !important;
        overflow: hidden !important;
}

/* ----- 6. Фото: строгие пропорции 5:5 (квадрат, v1.12.47), contain ----- */
html body .padel-related .padel-card__media {
        position: relative !important;
        aspect-ratio: 5 / 5 !important;
        width: 100% !important;
        height: auto !important;
        overflow: hidden !important;
}

html body .padel-related .padel-card__image-link {
        position: absolute !important;
        inset: 0 !important;
        display: block !important;
        width: 100% !important;
        height: 100% !important;
}

html body .padel-related .padel-card__image {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        object-fit: contain !important;
        padding: 22px !important;
}

/* ===== END v1.12.44 ===== */

/* =====================================================
   v1.12.45 — ПЛАВАЮЩАЯ КОРЗИНА: ОДИН ЦВЕТ ВО ВСЕХ
   СОСТОЯНИЯХ (акцент товара) — БЕЗ ЗЕЛЁНОГО HOVER И
   БЕЗ РОЗОВОГО #c36

   Жалоба: кнопка корзины справа внизу при наведении
   мигает #c36 (тема), а затем становится зелёной.

   Причина зелёного: hover из v1.12.43 использовал
   var(--padel-green-dark, #2ACC0F) — тёмный вариант
   акцента существует только на страницах с inline-стилями
   товара; в остальных местах (и при вычислении из
   нестандартного акцента) он даёт зелёный #2ACC0F.

   Решение:
   - Покой / :hover / :focus / :active / .is-active —
     ОДИН И ТОТ ЖЕ цвет: var(--padel-green) = акцент
     товара (у пользователя — оранжевый).
   - Лёгкое затемнение на hover — через color-mix ИЗ
     ТОГО ЖЕ акцента: если браузер не поддерживает
     color-mix, декларация отбрасывается и остаётся
     чистый акцент. Зелёный #2ACC0F из кнопки корзины
     исключён полностью.
   - transition только transform/box-shadow — фон
     меняется мгновенно, никаких «переездов» цвета,
     через которые могла бы проглядывать тема.
   - Иконка — чёрная во всех состояниях.
   ===================================================== */

html body a.padel-float-cart,
html body a.padel-float-cart:link,
html body a.padel-float-cart:visited,
html body a.padel-float-cart:hover,
html body a.padel-float-cart:focus,
html body a.padel-float-cart:active,
html body .padel-float-cart,
html body .padel-float-cart.is-active {
        background: var(--padel-green, #39FF14) !important;
        background-color: var(--padel-green, #39FF14) !important;
        color: #111111 !important;
        border: none !important;
        outline: none !important;
        text-decoration: none !important;
        text-shadow: none !important;
        box-shadow: 0 8px 24px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.4) !important;
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

html body a.padel-float-cart:hover,
html body a.padel-float-cart:focus,
html body a.padel-float-cart:active {
        background: color-mix(in srgb, var(--padel-green, #39FF14) 82%, #000000) !important;
        background-color: color-mix(in srgb, var(--padel-green, #39FF14) 82%, #000000) !important;
}

html body a.padel-float-cart svg,
html body a.padel-float-cart svg path,
html body a.padel-float-cart svg circle,
html body a.padel-float-cart:hover svg,
html body a.padel-float-cart:hover svg path,
html body a.padel-float-cart:hover svg circle,
html body a.padel-float-cart:focus svg,
html body a.padel-float-cart:focus svg path,
html body a.padel-float-cart:focus svg circle,
html body a.padel-float-cart:active svg,
html body a.padel-float-cart:active svg path,
html body a.padel-float-cart:active svg circle,
html body .padel-float-cart svg,
html body .padel-float-cart svg path,
html body .padel-float-cart svg circle {
        color: #111111 !important;
        stroke: #111111 !important;
        fill: none !important;
}

/* ===== END v1.12.45 ===== */

/* =====================================================
   v1.12.46 — КНОПКИ «СРАВНИТЬ/ИЗБРАННОЕ» + ЧЁРНЫЙ ФОН
   =====================================================

   Причины:
   1. Кнопки ⇄/♥ (.padel-card__quick-actions) в базе имеют
      opacity: 0 и появляются ТОЛЬКО при наведении на
      карточку. На телефоне наведения нет → «кнопок нет»;
      на десктопе 36–38px слишком мелкие → «очень мелкие».
   2. Фон страниц красился var(--padel-bg) (#111 и тёмно-
      серые оттенки) — пользователь требует чистый чёрный.

   Решение:
   - Кнопки ⇄/♥ ВИДНЫ ВСЕГДА (не только при наведении) —
     на десктопе, планшете и телефоне.
   - Размер увеличен: 46px (иконка 24px), на мобильных
     42px (иконка 22px). Цвета не тронуты: чёрный круг,
     белая иконка, акцент товара при наведении (v1.12.43).
   - .padel-single / .padel-archive / .padel-grid — фон
     #000000 (чистый чёрный) во всех режимах темы.
   ===================================================== */

/* ----- 1. Кнопки ⇄/♥ видны ВСЕГДА, не только при наведении ----- */
html body .padel-card .padel-card__quick-actions,
html body .padel-card:hover .padel-card__quick-actions,
html body .padel-card:focus-within .padel-card__quick-actions {
        display: flex !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translateX(0) !important;
        z-index: 6 !important;
        top: 12px !important;
        right: 12px !important;
        gap: 10px !important;
}

/* ----- 2. Крупнее: 46px, иконка 24px (было 36–38px / 20px).
   Только размеры — цвета остаются у v1.12.43 (чёрный круг,
   белая иконка, акцент при наведении/активации). ----- */
html body .padel-card__quick-actions .padel-card__quick-btn,
html body .padel-card__quick-actions button.padel-card__quick-btn {
        width: 46px !important;
        height: 46px !important;
        min-width: 46px !important;
        min-height: 46px !important;
        padding: 0 !important;
        border-radius: 50% !important;
        border-width: 1.5px !important;
        cursor: pointer !important;
        -webkit-appearance: none !important;
        appearance: none !important;
        transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease !important;
}

html body .padel-card__quick-actions .padel-card__quick-btn svg {
        width: 24px !important;
        height: 24px !important;
        min-width: 24px !important;
        min-height: 24px !important;
        display: block !important;
}

/* ----- 3. Мобильные/планшеты: 42px, иконка 22px, тоже видны всегда ----- */
@media (max-width: 980px) {
        html body .padel-card .padel-card__quick-actions {
                opacity: 1 !important;
                visibility: visible !important;
                transform: translateX(0) !important;
                top: 10px !important;
                right: 10px !important;
                gap: 8px !important;
        }

        html body .padel-card__quick-actions .padel-card__quick-btn,
        html body .padel-card__quick-actions button.padel-card__quick-btn {
                width: 42px !important;
                height: 42px !important;
                min-width: 42px !important;
                min-height: 42px !important;
        }

        html body .padel-card__quick-actions .padel-card__quick-btn svg {
                width: 22px !important;
                height: 22px !important;
                min-width: 22px !important;
                min-height: 22px !important;
        }
}

/* ----- 4. Чёрный фон страниц: чистый #000000 ----- */
html body .padel-single,
html body .padel-archive,
html body .padel-grid {
        background: #000000 !important;
}

/* ===== END v1.12.46 ===== */

/* =====================================================
   v1.12.47 — ПЛАВАЮЩАЯ КОРЗИНА: КОНЕЦ ЗЕЛЁНОГО HOVER
   И РОЗОВОГО #c36 НАВСЕГДА + ФОТО «КУПИТЕ ТАКЖЕ» 5:5

   Причины остаточного зелёного:
   1. Hover v1.12.45 использовал color-mix() — в браузерах
      БЕЗ поддержки color-mix декларация отбрасывается
      целиком, и в игру входит СТАРОЕ правило v1.12.43
      var(--padel-green-dark, #2ACC0F) → зелёный #2ACC0F.
   2. На страницах БЕЗ товарного акцента (каталог, архив,
      главная) --padel-green-dark = #2ACC0F из :root.
   Причина розового #c36: переходы transition: all в базе
   и подсветка тапа на мобильных дают «мигание» цветов
   темы в промежуточных состояниях.

   Решение:
   - --padel-green-dark ГЛОБАЛЬНО превращён в «тот же
     акцент, чуть темнее» (color-mix с деградацией до
     чистого акцента) — ни одно правило плагина больше
     не может дать #2ACC0F на кнопках с акцентом.
   - Hover/фокус/нажатие корзины: ТОТ ЖЕ акцент + тёмная
     вуаль через background-image (работает во ВСЕХ
     браузерах, не зависит от color-mix).
   - transition у корзины только opacity/transform —
     фон и цвет меняются мгновенно, «переездов» нет.
   - -webkit-tap-highlight-color: transparent — убита
     мобильная подсветка тапа.
   - aspect-ratio медиа «Купите также»: 4:5 → 5:5.
   ===================================================== */

/* ----- 1. Глобально: green-dark = тёмный вариант АКЦЕНТА (не #2ACC0F).
   Две декларации: вторая (color-mix) применяется только там,
   где браузер умеет color-mix; иначе работает первая. ----- */
html body,
html body.padel-pro-dark,
html body.padel-pro-light,
html body.padel-pro-auto {
        --padel-green-dark: var(--padel-green, #39FF14) !important;
        --padel-green-dark: color-mix(in srgb, var(--padel-green, #39FF14) 82%, #000000) !important;
}

/* ----- 2. Корзина (ссылка!): акцент во ВСЕХ состояниях, без переходов цвета ----- */
html body a.padel-float-cart,
html body a.padel-float-cart:link,
html body a.padel-float-cart:visited,
html body a.padel-float-cart:hover,
html body a.padel-float-cart:focus,
html body a.padel-float-cart:focus-visible,
html body a.padel-float-cart:active,
html body .padel-float-cart,
html body .padel-float-cart.is-active,
html body .padel-float-cart.is-bump,
html body .padel-float-cart.is-pulse {
        background: var(--padel-green, #39FF14) !important;
        background-color: var(--padel-green, #39FF14) !important;
        background-image: none !important;
        color: #111111 !important;
        border: none !important;
        outline: none !important;
        text-decoration: none !important;
        text-shadow: none !important;
        -webkit-tap-highlight-color: transparent !important;
        --padel-green-dark: var(--padel-green, #39FF14) !important;
        --padel-green-dark: color-mix(in srgb, var(--padel-green, #39FF14) 82%, #000000) !important;
        transition: opacity 0.25s ease, transform 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
        box-shadow: 0 8px 24px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.4) !important;
}

/* ----- 3. Hover/фокус/нажатие: ТОТ ЖЕ акцент + вуаль затемнения.
   Вуаль через background-image — универсально, без color-mix:
   оранжевый становится тёмно-оранжевым, зелёного и розового нет. ----- */
html body a.padel-float-cart:hover,
html body a.padel-float-cart:focus,
html body a.padel-float-cart:focus-visible,
html body a.padel-float-cart:active {
        background: var(--padel-green, #39FF14) !important;
        background-color: var(--padel-green, #39FF14) !important;
        background-image: linear-gradient(rgba(0, 0, 0, 0.22), rgba(0, 0, 0, 0.22)) !important;
        background-origin: border-box !important;
        color: #111111 !important;
}

/* ----- 4. Иконка корзины — чёрная во всех состояниях ----- */
html body a.padel-float-cart svg,
html body a.padel-float-cart:hover svg,
html body a.padel-float-cart:focus svg,
html body a.padel-float-cart:focus-visible svg,
html body a.padel-float-cart:active svg,
html body a.padel-float-cart svg path,
html body a.padel-float-cart:hover svg path,
html body a.padel-float-cart:focus svg path,
html body a.padel-float-cart:active svg path,
html body a.padel-float-cart svg circle,
html body a.padel-float-cart:hover svg circle {
        color: #111111 !important;
        stroke: #111111 !important;
        fill: none !important;
}

/* ----- 5. Основные кнопки «В корзину»/CTA: та же вуаль на hover
   (зелёный green-dark уже исключён правилом 1) ----- */
html body button.padel-btn--primary:hover,
html body button.padel-btn--primary:focus,
html body button.padel-btn--primary:active,
html body a.padel-btn--primary:hover,
html body a.padel-btn--primary:focus,
html body a.padel-btn--primary:active {
        background-image: linear-gradient(rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0.18)) !important;
}

/* ----- 6. Мобильная подсветка тапа — прозрачна для всех элементов плагина ----- */
html body [class*="padel-"] {
        -webkit-tap-highlight-color: transparent !important;
}

/* ===== END v1.12.47 ===== */

/* =====================================================
   v1.12.48 — МОБИЛЬНАЯ «В КОРЗИНУ»: ПРОСТО ИКОНКА СПРАВА

   Было: на мобильных (≤640px) плавающая кнопка «В корзину»
   (появляется при прокрутке вниз) — полоса на всю ширину
   с иконкой и текстом.
   Стало: компактная КРУГЛАЯ кнопка-иконка (56px) справа,
   текст скрыт. Над нижней навигацией, если она включена.
   Вспышка «добавлено» (#00d97e) заменена на акцент товара
   (зелёная вспышка убрана по той же доктрине, что и в
   v1.12.47). Десктоп не тронут: пилюля с иконкой и текстом.
   ===================================================== */

/* ----- 1. Мобильные: круглая иконка справа вместо полосы ----- */
@media (max-width: 640px) {
        html body .padel-float-add-btn,
        html body .padel-float-add-btn.is-visible {
                left: auto !important;
                right: 16px !important;
                width: 56px !important;
                min-width: 56px !important;
                height: 56px !important;
                padding: 0 !important;
                gap: 0 !important;
                border-radius: 50% !important;
                font-size: 0 !important;
        }

        html body .padel-float-add-btn .padel-float-add-btn__text {
                display: none !important;
        }

        html body .padel-float-add-btn svg {
                width: 24px !important;
                height: 24px !important;
        }
}

/* ----- 2. Когда включена нижняя навигация — кнопка над ней ----- */
@media (max-width: 768px) {
        html body.has-bottom-nav .padel-float-add-btn {
                bottom: 76px !important;
        }
}

/* ----- 3. «Добавлено»: акцент + лёгкая вуаль вместо зелёной вспышки ----- */
html body .padel-float-add-btn.is-added {
        background: var(--padel-green, #39FF14) !important;
        background-color: var(--padel-green, #39FF14) !important;
        background-image: linear-gradient(rgba(0, 0, 0, 0.22), rgba(0, 0, 0, 0.22)) !important;
        color: #111111 !important;
}

/* ===== END v1.12.48 ===== */

/* =====================================================
   v1.12.49 — ФИНАЛЬНЫЙ ЩИТ ОТ #c36: ПЛАВАЮЩАЯ «В КОРЗИНУ»

   Причина: .padel-float-add-btn — единственная крупная
   кнопка плагина БЕЗ !important-щита цветов (щиты
   v1.12.43/47 покрывали только .padel-btn--primary и
   ссылку a.padel-float-cart, а у этой кнопки класса
   padel-btn--primary НЕТ). Тема (Elementor kit) красила
   её при наведении/нажатии/фокусе своим розовым #CC3366.
   Плавающие «сравнить/избранное» — последние незащищённые
   ссылки, закрыты заранее той же техникой (цвета своих
   ролей сохранены: сравнить — акцент, избранное — красный).
   ===================================================== */

/* ----- 1. «В корзину»: акцент во ВСЕХ состояниях ----- */
html body button.padel-float-add-btn,
html body .padel-float-add-btn,
html body .padel-float-add-btn.is-visible,
html body .padel-float-add-btn.is-loading {
        background: var(--padel-green, #39FF14) !important;
        background-color: var(--padel-green, #39FF14) !important;
        background-image: none !important;
        color: #111111 !important;
        border: none !important;
        text-shadow: none !important;
        -webkit-tap-highlight-color: transparent !important;
        transition: opacity 0.3s ease, transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s ease !important;
}

/* ----- 2. Hover/фокус/нажатие: ТОТ ЖЕ акцент + вуаль затемнения ----- */
html body button.padel-float-add-btn:hover,
html body .padel-float-add-btn:hover,
html body .padel-float-add-btn:focus,
html body .padel-float-add-btn:focus-visible,
html body .padel-float-add-btn:active {
        background: var(--padel-green, #39FF14) !important;
        background-color: var(--padel-green, #39FF14) !important;
        background-image: linear-gradient(rgba(0, 0, 0, 0.22), rgba(0, 0, 0, 0.22)) !important;
        background-origin: border-box !important;
        color: #111111 !important;
}

/* ----- 3. Иконка — чёрная во всех состояниях ----- */
html body .padel-float-add-btn svg,
html body .padel-float-add-btn:hover svg,
html body .padel-float-add-btn:focus svg,
html body .padel-float-add-btn:focus-visible svg,
html body .padel-float-add-btn:active svg,
html body .padel-float-add-btn svg path,
html body .padel-float-add-btn:hover svg path,
html body .padel-float-add-btn:active svg path,
html body .padel-float-add-btn svg circle,
html body .padel-float-add-btn:hover svg circle {
        color: #111111 !important;
        stroke: #111111 !important;
        fill: none !important;
}

/* ----- 4. Плавающие «сравнить/избранное»: щит заранее ----- */
html body a.padel-float-compare,
html body a.padel-float-wishlist,
html body .padel-float-compare,
html body .padel-float-wishlist {
        background: var(--padel-black-2, #1a1a1a) !important;
        background-color: var(--padel-black-2, #1a1a1a) !important;
        text-decoration: none !important;
        text-shadow: none !important;
        -webkit-tap-highlight-color: transparent !important;
        transition: opacity 0.3s ease, transform 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

html body a.padel-float-compare,
html body .padel-float-compare {
        color: var(--padel-green, #39FF14) !important;
        border: 1px solid var(--padel-green, #39FF14) !important;
}

html body a.padel-float-wishlist,
html body .padel-float-wishlist {
        color: #ff4757 !important;
        border: 1px solid #ff4757 !important;
}

html body a.padel-float-compare:hover,
html body a.padel-float-compare:focus,
html body a.padel-float-compare:active,
html body .padel-float-compare:hover,
html body .padel-float-compare:active {
        background: var(--padel-green, #39FF14) !important;
        background-color: var(--padel-green, #39FF14) !important;
        color: #111111 !important;
        border-color: var(--padel-green, #39FF14) !important;
}

html body a.padel-float-wishlist:hover,
html body a.padel-float-wishlist:focus,
html body a.padel-float-wishlist:active,
html body .padel-float-wishlist:hover,
html body .padel-float-wishlist:active {
        background: #ff4757 !important;
        background-color: #ff4757 !important;
        color: #ffffff !important;
        border-color: #ff4757 !important;
}

/* ===== END v1.12.49 ===== */

/* =====================================================
   v1.12.50 — ЗАГОЛОВКИ СЕКЦИЙ: ДИСПЛЕЙНАЯ КИРИЛЛИЦА

   Причина «некрасивого шрифта» в «Описание / Характеристики /
   Почему выбирают эту модель / Галерея / Купите также /
   Частые вопросы»: Bebas Neue (дисплейный шрифт дизайна)
   НЕ СОДЕРЖИТ КИРИЛЛИЦЫ — русские заголовки откатывались
   на Inter или шрифт темы и выглядели плоско, не в стиле
   сжатых капс-заголовков плагина.

   Решение:
   - В стек --padel-font-display добавлен Oswald — сжатый
     дисплейный шрифт с ПОЛНОЙ кириллицей (зрительный
     аналог Bebas Neue для русского). Латиница/цифры
     остаются в Bebas Neue, кириллица рендерится Oswald'ом.
     Изменение действует на ВСЕ 61 использование
     дисплейного шрифта (кнопки, бейджи, цены-заголовки).
   - Заголовки секций закрыты щитом: тема больше не может
     подменить шрифт/цвет; капс, трекинг 1px, высота 1.15.
   - Акцентная полоса под заголовком со скошенными краями
     (спортивная пластика) и щитом цвета.
   ===================================================== */

/* ----- 1. Щит шрифта и цвета заголовков секций ----- */
html body .padel-section-title {
        font-family: var(--padel-font-display) !important;
        color: #ffffff !important;
        font-weight: 700 !important;
        letter-spacing: 1px !important;
        line-height: 1.15 !important;
        text-transform: uppercase !important;
        text-shadow: none !important;
}

/* ----- 2. Акцентная полоса: скошенная, со свечением акцента ----- */
html body .padel-section-title::after {
        width: 72px !important;
        height: 4px !important;
        background: var(--padel-green) !important;
        box-shadow: 0 0 14px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.6) !important;
        transform: skewX(-24deg) !important;
        border-radius: 1px !important;
        margin: 16px auto 0 !important;
}

/* ----- 3. Дисплейный шрифт для кириллицы в кнопках плагина
   (тема могла подменять font-family у button) ----- */
html body button[class*="padel-btn"],
html body a.padel-btn,
html body .padel-btn {
        font-family: var(--padel-font-display) !important;
}

/* ===== END v1.12.50 ===== */

/* ============================================================
   v1.13.1 — SPEED: мгновенный отклик кнопок «Купить»/«В корзину»
   ============================================================ */

/* ----- 1. Спиннер прямо в кнопке: обратная связь с первого кадра ----- */
@keyframes padel-btn-spin {
        to { transform: rotate(360deg); }
}

html body .padel-add-to-cart.is-loading {
        opacity: 0.88 !important;
        pointer-events: none !important;
}

html body .padel-add-to-cart.is-loading::before {
        content: '' !important;
        display: inline-block !important;
        width: 14px !important;
        height: 14px !important;
        margin-right: 9px !important;
        border: 2px solid rgba(0, 0, 0, 0.28) !important;
        border-top-color: currentColor !important;
        border-radius: 50% !important;
        animation: padel-btn-spin 0.55s linear infinite !important;
        flex-shrink: 0;
}

html body .padel-float-add-btn.is-loading svg,
html body .padel-float-cart.is-loading svg {
        animation: padel-btn-spin 0.6s linear infinite !important;
}

/* ----- 2. Быстрая реакция: убираем «тормозящие» transition: all 0.35s -----
   Только opacity/transform/box-shadow — фон/цвет не анимируются (доктрина без
   цветовых переходов: никаких миганий между состояниями). */
html body .padel-add-to-cart,
html body .padel-btn {
        transition: opacity 0.15s ease, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.2s ease !important;
}

/* ----- 3. Drawer быстрее: скольжение 0.4s → 0.26s ----- */
html body .padel-cart-drawer {
        transition: transform 0.26s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

html body .padel-drawer-overlay {
        transition: opacity 0.2s ease !important;
}

/* ----- 4. Тост появляется шустрее (0.3s → 0.18s) ----- */
html body .padel-toast {
        transition: opacity 0.18s ease, transform 0.18s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* ===== END v1.13.1 ===== */

/* ============================================================
   v1.13.4 — состояния «уже добавлено»: иконки избранного/сравнения
   после перезагрузки, кнопка «В корзине», кнопка «Удалить из избранного»
   ============================================================ */

/* ----- 1. «В корзине» — постоянное состояние кнопки (не вспышка) ----- */
html body .padel-add-to-cart.is-in-cart,
html body .padel-card .padel-card__footer button.padel-add-to-cart.is-in-cart,
html body .padel-card .padel-card__footer .padel-add-to-cart.is-in-cart {
        background: rgba(57, 255, 20, 0.12) !important;
        border-color: var(--padel-green, #39FF14) !important;
        color: var(--padel-green, #39FF14) !important;
        box-shadow: inset 0 0 0 1.5px var(--padel-green, #39FF14) !important;
        text-decoration: none !important;
}

html body .padel-add-to-cart.is-in-cart:hover,
html body .padel-add-to-cart.is-in-cart:focus,
html body .padel-card .padel-card__footer button.padel-add-to-cart.is-in-cart:hover,
html body .padel-card .padel-card__footer .padel-add-to-cart.is-in-cart:hover {
        background: rgba(57, 255, 20, 0.2) !important;
        border-color: var(--padel-green, #39FF14) !important;
        color: var(--padel-green, #39FF14) !important;
}

html body .padel-add-to-cart.is-in-cart .padel-add-to-cart__check {
        display: inline-block;
        width: 14px;
        height: 14px;
        margin-right: 7px;
        vertical-align: -2px;
}

/* Вспышка is-added поверх is-in-cart — без второй галочки ::after */
html body .padel-add-to-cart.is-in-cart.is-added::after {
        content: '' !important;
}

/* ----- 2. «Удалить из избранного» — явная кнопка на странице избранного ----- */
html body .padel-wishlist-remove {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        width: 100% !important;
        margin-top: 10px !important;
        padding: 10px 14px !important;
        background: transparent !important;
        border: 1px solid rgba(255, 71, 87, 0.45) !important;
        border-radius: 10px !important;
        color: #ff4757 !important;
        font-family: 'Inter', Arial, sans-serif !important;
        font-size: 12px !important;
        font-weight: 700 !important;
        letter-spacing: 1px !important;
        text-transform: uppercase !important;
        line-height: 1 !important;
        cursor: pointer !important;
        transition: opacity 0.15s ease, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.2s ease !important;
}

html body .padel-wishlist-remove:hover,
html body .padel-wishlist-remove:focus {
        opacity: 0.85 !important;
        outline: none !important;
}

html body .padel-wishlist-remove:disabled {
        opacity: 0.5 !important;
        cursor: default !important;
}

/* ===== END v1.13.4 ===== */

/* ============================================================
   v1.13.5 — «В корзине»: чёрный фон вместо зелёного;
   блокировка иконок на время запроса (is-busy)
   ============================================================ */

/* ----- 1. «В корзине» — чёрный фон, белый текст (было зелёным) ----- */
html body .padel-add-to-cart.is-in-cart,
html body .padel-card .padel-card__footer button.padel-add-to-cart.is-in-cart,
html body .padel-card .padel-card__footer .padel-add-to-cart.is-in-cart {
        background: #000000 !important;
        border-color: #000000 !important;
        color: #ffffff !important;
        box-shadow: none !important;
        text-decoration: none !important;
}

html body .padel-add-to-cart.is-in-cart:hover,
html body .padel-add-to-cart.is-in-cart:focus,
html body .padel-card .padel-card__footer button.padel-add-to-cart.is-in-cart:hover,
html body .padel-card .padel-card__footer .padel-add-to-cart.is-in-cart:hover {
        background: #1d1d1f !important;
        border-color: #1d1d1f !important;
        color: #ffffff !important;
}

/* ----- 2. Иконки сравнения/избранного на время запроса ----- */
html body .padel-card__quick-btn.is-busy {
        opacity: 0.55 !important;
        pointer-events: none !important;
}

/* ===== END v1.13.5 ===== */

/* ============================================================
   v1.13.6 — кнопки «Оставить отзыв» и «Открыть отзывы» переехали
   в плавающий блок рядом с кнопкой «В корзину» (на ПК — иконки)
   ============================================================ */

/* ----- 1. Контейнер: появляется/скрывается целиком при прокрутке ----- */
html body .padel-float-actions {
        position: fixed;
        bottom: 20px;
        right: 20px;
        z-index: 1000;
        display: flex;
        align-items: center;
        gap: 10px;
        opacity: 0;
        transform: translateY(20px) scale(0.9);
        pointer-events: none;
        transition: opacity 0.3s ease, transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

html body .padel-float-actions.is-visible {
        opacity: 1;
        transform: translateY(0) scale(1);
        pointer-events: auto;
}

/* Кнопка корзины больше не позиционируется сама — живёт в контейнере */
html body .padel-float-actions .padel-float-add-btn {
        position: static;
        opacity: 1;
        transform: none;
        pointer-events: auto;
}

html body .padel-float-actions .padel-float-add-btn:hover {
        transform: translateY(-3px) scale(1.03);
}

html body .padel-float-actions .padel-float-add-btn:active {
        transform: translateY(0) scale(0.96);
}

html body .padel-float-actions .padel-float-add-btn.is-loading {
        opacity: 0.7;
        pointer-events: none;
}

html body .padel-float-actions .padel-float-add-btn.is-added {
        opacity: 1;
        pointer-events: auto;
}

/* ----- 2. Круглые иконки отзывов (ПК и мобильные) ----- */
html body .padel-float-icon-btn {
        width: 48px;
        height: 48px;
        flex-shrink: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        background: #0d0d0f;
        color: #ffffff;
        border: 1px solid rgba(255, 255, 255, 0.18);
        cursor: pointer;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
        transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s, color 0.15s ease, border-color 0.15s ease;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        padding: 0;
}

html body .padel-float-icon-btn:hover,
html body .padel-float-icon-btn:focus-visible {
        transform: translateY(-3px);
        border-color: var(--padel-green, #39FF14);
        color: var(--padel-green, #39FF14);
        box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5), 0 0 20px rgba(var(--padel-accent-rgb, 57, 255, 20), 0.45);
        outline: none;
}

html body .padel-float-icon-btn:active {
        transform: translateY(0) scale(0.94);
}

/* ----- 3. Мобильные: зелёная кнопка на всю ширину, иконки в ряд над ней ----- */
@media (max-width: 640px) {
        html body .padel-float-actions {
                left: 16px;
                right: 16px;
                bottom: 16px;
                flex-wrap: wrap;
                justify-content: flex-end;
                gap: 8px;
        }

        html body .padel-float-actions .padel-float-add-btn {
                width: 100%;
        }

        html body .padel-float-icon-btn {
                width: 44px;
                height: 44px;
        }
}

/* ===== END v1.13.6 ===== */

/* ============================================================
   v1.13.7 — ФИКС: плавающая «В корзину» снова видна на ПК.
   Причина пропажи: правило v1.12.7 (min-width: 641px)
   .padel-float-add-btn:not(.is-visible) { display: none } —
   после переезда кнопок отзывов в контейнер is-visible ставился
   только контейнеру, и кнопка навсегда получала display:none.
   ============================================================ */

/* Кнопка всегда отображается внутри контейнера —
   видимость блока целиком управляет прозрачностью контейнера */
html body .padel-float-actions .padel-float-add-btn {
        display: inline-flex !important;
}

/* Страховка от смешанного кэша: контейнер раскрывается, если is-visible
   стоит на нём ИЛИ на самой кнопке (старый закэшированный JS красит
   только кнопку) */
html body .padel-float-actions.is-visible,
html body .padel-float-actions:has(.padel-float-add-btn.is-visible) {
        opacity: 1;
        transform: translateY(0) scale(1);
        pointer-events: auto;
}

/* Нижняя навигация: поднимаем весь блок целиком
   (раньше поднималась только сама кнопка — v1.12.48) */
@media (max-width: 768px) {
        html body.has-bottom-nav .padel-float-actions {
                bottom: 76px !important;
        }
}

/* ===== END v1.13.7 ===== */

/* ============================================================
   v1.13.8 — «В корзине»: белая обводка кнопки; повторный клик
   по кнопке удаляет товар из корзины, и она снова становится
   «В корзину» (логика тоггла — в frontend.js, v1.13.8)
   ============================================================ */

/* ----- 1. Белая обводка в состоянии «В корзине» (фон остаётся чёрным) ----- */
html body .padel-add-to-cart.is-in-cart,
html body .padel-card .padel-card__footer button.padel-add-to-cart.is-in-cart,
html body .padel-card .padel-card__footer .padel-add-to-cart.is-in-cart {
        background: #000000 !important;
        border-color: #ffffff !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px #ffffff, 0 4px 16px rgba(0, 0, 0, 0.28) !important;
        text-decoration: none !important;
}

/* Ховер: фон чуть светлеет, обводка светится — намёк, что кнопка активна и нажатие уберёт товар */
html body .padel-add-to-cart.is-in-cart:hover,
html body .padel-add-to-cart.is-in-cart:focus,
html body .padel-card .padel-card__footer button.padel-add-to-cart.is-in-cart:hover,
html body .padel-card .padel-card__footer .padel-add-to-cart.is-in-cart:hover {
        background: #1d1d1f !important;
        border-color: #ffffff !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px #ffffff, 0 0 16px rgba(255, 255, 255, 0.28) !important;
}

/* ----- 2. На время запроса удаления кнопка гаснет (спиннер уже есть от is-loading) ----- */
html body .padel-add-to-cart.is-loading {
        opacity: 0.6 !important;
        pointer-events: none !important;
}

/* ===== END v1.13.8 ===== */

/* ============================================================
   v1.13.9 — Плавающая кнопка «В корзину» (#padel-float-add):
   состояние «В корзине» — чёрный фон + белая обводка 2px
   (кольцо box-shadow, без сдвига layout), повторный клик
   удаляет товар (логика тоггла — в frontend.js, v1.13.9).
   Раньше кнопка не менялась после добавления вовсе.
   ============================================================ */

html body .padel-float-add-btn.is-in-cart {
        background: #000000 !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 2px #ffffff, 0 8px 24px rgba(0, 0, 0, 0.4) !important;
}

html body .padel-float-add-btn.is-in-cart:hover {
        background: #1d1d1f !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 2px #ffffff, 0 0 22px rgba(255, 255, 255, 0.3) !important;
}

/* Галочка «В корзине» — под размер иконки плавающей кнопки */
html body .padel-float-add-btn.is-in-cart .padel-add-to-cart__check {
        width: 20px;
        height: 20px;
}

/* ===== END v1.13.9 ===== */

/* ============================================================
   v1.13.10 — Кнопка «Продолжить покупки» в корзине:
   1) клик теперь всегда закрывает окно (делегированный
      обработчик в frontend.js — раньше кнопка не работала
      вовсе, т.к. перерисовывалась при каждом открытии);
   2) стили-щит: темы (Elementor #c36) больше не подкрашивают
      кнопку своим розовым цветом при hover/active/focus.
   ============================================================ */

html body .padel-cart-drawer__continue,
html body .padel-cart-drawer__continue:hover,
html body .padel-cart-drawer__continue:focus,
html body .padel-cart-drawer__continue:active {
        display: block !important;
        width: 100% !important;
        margin-top: 10px !important;
        padding: 11px 10px !important;
        background: transparent !important;
        border: 1px solid rgba(255, 255, 255, 0.28) !important;
        border-radius: 10px !important;
        color: rgba(255, 255, 255, 0.75) !important;
        font-family: 'Inter', Arial, sans-serif !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        letter-spacing: 0.6px !important;
        text-transform: uppercase !important;
        line-height: 1.2 !important;
        text-decoration: none !important;
        outline: none !important;
        box-shadow: none !important;
        cursor: pointer !important;
}

html body .padel-cart-drawer__continue:hover,
html body .padel-cart-drawer__continue:focus {
        border-color: #ffffff !important;
        color: #ffffff !important;
        background: rgba(255, 255, 255, 0.07) !important;
}

html body .padel-cart-drawer__continue:active {
        transform: scale(0.98) !important;
}

/* ===== END v1.13.10 ===== */


/* ============================================================
   v1.13.13 — щит от тем для иконок отзывов и галочки «В корзине»
   1) иконки «Оставить отзыв»/«Открыть отзывы»: при наведении темы
      (Elementor #c36) больше не подкрашивают их — база белая,
      hover неоново-зелёный, svg stroke/fill зафиксированы;
   2) галочка в состоянии «В корзине» — всегда белая (fill none,
      stroke #fff), темы не могут перекрасить её в чёрный.
   ============================================================ */

/* ----- 1. Круглые иконки отзывов — цвет во всех состояниях ----- */
html body .padel-float-icon-btn,
html body .padel-float-icon-btn:hover,
html body .padel-float-icon-btn:focus,
html body .padel-float-icon-btn:focus-visible,
html body .padel-float-icon-btn:active {
        background: #0d0d0f !important;
        color: #ffffff !important;
        border-color: rgba(255, 255, 255, 0.18) !important;
        text-decoration: none !important;
        outline: none !important;
}

html body .padel-float-icon-btn:hover,
html body .padel-float-icon-btn:focus-visible,
html body .padel-float-icon-btn:active {
        color: var(--padel-green, #39FF14) !important;
        border-color: var(--padel-green, #39FF14) !important;
}

html body .padel-float-icon-btn svg,
html body .padel-float-icon-btn svg path,
html body .padel-float-icon-btn svg polygon {
        stroke: currentColor !important;
        fill: none !important;
        color: inherit !important;
}

/* ----- 2. Галочка «В корзине» — всегда белая ----- */
html body .padel-add-to-cart.is-in-cart svg,
html body .padel-add-to-cart.is-in-cart svg path,
html body .padel-float-add-btn.is-in-cart svg,
html body .padel-float-add-btn.is-in-cart svg path {
        stroke: #ffffff !important;
        fill: none !important;
        color: #ffffff !important;
}

/* ===== END v1.13.13 ===== */


/* ============================================================
   v1.13.14 — «Продолжить покупки» в окне корзины: простой текст
   Была ghost-кнопка с рамкой (v1.13.10) — теперь обычная текстовая
   ссылка: без рамки, фона и скруглений; при наведении — подчёркивание.
   Щит от тем (Elementor #c36) сохранён во всех состояниях.
   ============================================================ */

html body .padel-cart-drawer__continue,
html body .padel-cart-drawer__continue:hover,
html body .padel-cart-drawer__continue:focus,
html body .padel-cart-drawer__continue:active {
        display: block !important;
        width: 100% !important;
        margin-top: 12px !important;
        padding: 6px 4px !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        color: rgba(255, 255, 255, 0.72) !important;
        font-family: 'Inter', Arial, sans-serif !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        letter-spacing: normal !important;
        text-transform: none !important;
        line-height: 1.45 !important;
        text-decoration: none !important;
        text-align: center !important;
        outline: none !important;
        cursor: pointer !important;
}

html body .padel-cart-drawer__continue:hover,
html body .padel-cart-drawer__continue:focus {
        color: #ffffff !important;
        background: transparent !important;
        border: 0 !important;
        text-decoration: underline !important;
        text-underline-offset: 3px !important;
        text-decoration-thickness: 1px !important;
}

html body .padel-cart-drawer__continue:active {
        transform: none !important;
        color: #ffffff !important;
        text-decoration: underline !important;
}

/* ===== END v1.13.14 ===== */


/* ============================================================
   v1.13.15 — «Купите также»/карточки: белая галочка «В корзине»
   и понятный серый фон hover
   1) правило v1.12.40 красило svg кнопки карточки в чёрный
      (stroke #000 !important, специфичность (0,3,4) выше щита
      v1.13.13) — из-за этого галочка «В корзине» на карточках
      была чёрной. Перебиваем селектором (0,5,4) и поздней позицией;
   2) hover «В корзине» #1d1d1f (почти неотличим от чёрного)
      заменён на нейтральный серый #3a3a3d — карточки и плавающая
      кнопка внизу справа.
   ============================================================ */

/* ----- 1. Галочка «В корзине» — всегда белая (сильнее v1.12.40) ----- */
html body .padel-card .padel-card__footer .padel-btn--primary.padel-add-to-cart.is-in-cart svg,
html body .padel-card .padel-card__footer .padel-btn--primary.padel-add-to-cart.is-in-cart svg path,
html body .padel-card .padel-card__footer .padel-add-to-cart.is-in-cart svg,
html body .padel-card .padel-card__footer .padel-add-to-cart.is-in-cart svg path,
html body .padel-add-to-cart.is-in-cart svg,
html body .padel-add-to-cart.is-in-cart svg path,
html body .padel-float-add-btn.is-in-cart svg,
html body .padel-float-add-btn.is-in-cart svg path {
        stroke: #ffffff !important;
        fill: none !important;
        color: #ffffff !important;
}

/* ----- 2. Hover «В корзине» — нейтральный серый вместо #1d1d1f ----- */
html body .padel-add-to-cart.is-in-cart:hover,
html body .padel-add-to-cart.is-in-cart:focus,
html body .padel-card .padel-card__footer button.padel-add-to-cart.is-in-cart:hover,
html body .padel-card .padel-card__footer .padel-add-to-cart.is-in-cart:hover {
        background: #3a3a3d !important;
        border-color: #ffffff !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px #ffffff, 0 0 16px rgba(255, 255, 255, 0.28) !important;
}

html body .padel-float-add-btn.is-in-cart:hover {
        background: #3a3a3d !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 2px #ffffff, 0 0 22px rgba(255, 255, 255, 0.3) !important;
}

/* ===== END v1.13.15 ===== */

/* =====================================================
   v1.13.21 — Шильдики «Сегодня уже купили N шт» и
   «Экспресс доставка …» одинаковой высоты
   Причина: разный padding (8px/16px против 12px/18px),
   кегль (0.85 против 0.95rem) и контент (точка 8px против
   svg 18px) давали пилюли разной высоты (~40px против ~50px).
   Решение: единые кегль, межстрочный интервал и вертикальные
   отступы на десктопе; на мобильных выровнены кегль и
   вертикальные отступы (горизонтальные отступы полноширинного
   режима из v1.12.x не тронуты).
   ===================================================== */

.padel-live-purchase,
.padel-delivery {
        font-size: 0.9rem;
        line-height: 1.4;
        padding: 10px 18px;
}

@media (max-width: 640px) {
        .padel-live-purchase,
        .padel-delivery {
                font-size: 0.8rem !important;
                line-height: 1.4 !important;
                padding-top: 8px !important;
                padding-bottom: 8px !important;
        }
}

/* ===== END v1.13.21 ===== */

/* =====================================================
   v1.13.22 — Шильдики «Сегодня уже купили N шт» и
   «Экспресс доставка …»: жёсткая гарантия одинаковой
   высоты (пользователь видел доставку «чуть выше»).
   Причины остаточной разницы: (1) тема/Elementor могли
   перебивать кегль/межстрочный у одного из бейджей —
   теперь кегль и line-height залочены !important у
   обоих (включая темы dark/light/auto); (2) svg-иконка
   грузовика (18px) могла растягиваться правилами темы —
   размер залочен 18px (десктоп) / 14px (мобайл);
   (3) добавлен одинаковый min-height пилюли как страховка.
   ===================================================== */

.padel-live-purchase,
.padel-delivery,
body.padel-pro-dark .padel-live-purchase,
body.padel-pro-dark .padel-delivery,
body.padel-pro-light .padel-live-purchase,
body.padel-pro-light .padel-delivery,
body.padel-pro-auto .padel-live-purchase,
body.padel-pro-auto .padel-delivery {
        font-size: 0.9rem !important;
        line-height: 1.4 !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
        min-height: 42px !important;
        box-sizing: border-box !important;
        align-items: center !important;
}

.padel-delivery svg {
        width: 18px !important;
        height: 18px !important;
        flex-shrink: 0 !important;
}

@media (max-width: 640px) {
        .padel-live-purchase,
        .padel-delivery,
        body.padel-pro-dark .padel-live-purchase,
        body.padel-pro-dark .padel-delivery,
        body.padel-pro-light .padel-live-purchase,
        body.padel-pro-light .padel-delivery,
        body.padel-pro-auto .padel-live-purchase,
        body.padel-pro-auto .padel-delivery {
                font-size: 0.8rem !important;
                line-height: 1.4 !important;
                padding-top: 8px !important;
                padding-bottom: 8px !important;
                min-height: 36px !important;
        }

        .padel-delivery svg {
                width: 14px !important;
                height: 14px !important;
        }
}

/* ===== END v1.13.22 ===== */

/* =====================================================
   v1.13.23 — Поле количества [− N +]: ровные иконки
   и высота по соседним кнопкам
   Причины «кривизны»: (1) символы −/+ рисовались шрифтом
   темы и выглядели неопрятно (разная оптическая высота,
   смещение базовой линии, разный кегль у тем); (2) на
   десктопе пилюля степпера (48px) была ниже соседних
   CTA-кнопок (~54px) — поле выглядело перекошенным в ряду
   .padel-buy__actions и в sticky-панели.
   Решение: (1) в шаблонах текстовые −/+ заменены на SVG
   (stroke: currentColor — перекрашивается hover'ом как
   раньше); (2) на десктопе степпер тянется по высоте
   рядом с кнопками (align-self: stretch), кнопки −/+ 44px,
   поле числа 56px; (3) всем кнопкам степперов задано
   flex-центрирование, иконки залочены 16px (товар) /
   14px (корзина и drawer).
   ===================================================== */

.padel-qty__btn,
.padel-qty-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
}

.padel-qty__btn svg,
.padel-qty-btn svg {
        display: block;
        width: 16px;
        height: 16px;
}

.padel-cart-item__qty .padel-qty-btn svg,
.padel-cart-drawer-item__qty .padel-qty-btn svg {
        width: 14px;
        height: 14px;
}

.padel-qty__input,
.padel-qty-input {
        font-variant-numeric: tabular-nums;
}

@media (min-width: 641px) {
        .padel-buy__actions .padel-qty,
        .padel-sticky-buy__actions .padel-qty {
                height: auto !important;
                align-self: stretch !important;
        }

        .padel-buy__actions .padel-qty__btn,
        .padel-sticky-buy__actions .padel-qty__btn {
                height: auto !important;
                align-self: stretch !important;
                width: 44px !important;
                flex: 0 0 44px !important;
        }

        .padel-buy__actions .padel-qty__input,
        .padel-sticky-buy__actions .padel-qty__input {
                height: auto !important;
                align-self: stretch !important;
                width: 56px !important;
                flex: 0 0 56px !important;
        }
}

/* ===== END v1.13.23 ===== */

/* =====================================================
   v1.13.24 — Белая коробка вокруг числа в поле количества.
   Причина: тема/браузер перекрашивали родной
   <input type="number"> (белый фон, тёмный текст,
   скругления) поверх тёмной пилюли степпера — поле
   выглядело белой коробкой, вставшей криво внутри [− N +].
   Решение: (1) color-scheme: dark — нативный рендер
   контролов в тёмной схеме; (2) ультра-специфичные поздние
   правила на базу и фокус; (3) дублирующий инлайн-щит в
   JS (applyQtyInputShield) — при загрузке и после каждой
   перерисовки корзины.
   ===================================================== */

.padel-qty,
.padel-cart-item__qty,
.padel-cart-drawer-item__qty {
        color-scheme: dark;
}

html body #padel-qty-stepper .padel-qty__input,
html body .padel-qty .padel-qty__input,
html body .padel-cart-item__qty .padel-qty-input,
html body .padel-cart-drawer-item__qty .padel-qty-input {
        background: transparent !important;
        background-color: transparent !important;
        color: #ffffff !important;
        border: 0 !important;
        border-left: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        outline: none !important;
        padding: 0 !important;
        min-height: 0 !important;
        -webkit-appearance: none !important;
        -moz-appearance: textfield !important;
        appearance: none !important;
        -webkit-tap-highlight-color: transparent !important;
}

html body #padel-qty-stepper .padel-qty__input:focus,
html body .padel-qty .padel-qty__input:focus,
html body .padel-cart-item__qty .padel-qty-input:focus,
html body .padel-cart-drawer-item__qty .padel-qty-input:focus,
html body #padel-qty-stepper .padel-qty__input:focus-visible,
html body .padel-qty .padel-qty__input:focus-visible,
html body .padel-cart-item__qty .padel-qty-input:focus-visible,
html body .padel-cart-drawer-item__qty .padel-qty-input:focus-visible {
        background: transparent !important;
        background-color: transparent !important;
        color: #ffffff !important;
        border-left-color: var(--padel-green, #39ff14) !important;
        border-right-color: var(--padel-green, #39ff14) !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        outline: none !important;
}

/* ===== END v1.13.24 ===== */

/* =====================================================
   v1.13.25 — Окно корзины: чёрный фон, шире и выше.
   Причина: окно было на фоне var(--padel-black-2) = #1a1a1a
   (визуально серый), 560px × min(80vh, 700px).
   Решение: фон чистый чёрный #000 (окно и футер, включая
   темы dark/light/auto), десктоп 720px × min(90vh, 860px),
   мобайл max-height 92vh (ширина «на всю ширину с
   отступами» из v1.12.x сохранена).
   ===================================================== */

body.padel-pro-dark .padel-cart-drawer,
body.padel-pro-light .padel-cart-drawer,
body.padel-pro-auto .padel-cart-drawer,
.padel-cart-drawer {
        background: #000000 !important;
        background-color: #000000 !important;
}

.padel-cart-drawer__footer {
        background: #000000 !important;
        background-color: #000000 !important;
}

.padel-cart-drawer {
        width: min(720px, calc(100% - 32px)) !important;
        max-height: min(90vh, 860px) !important;
}

@media (max-width: 640px) {
        .padel-cart-drawer {
                max-height: 92vh !important;
        }
}

/* ===== END v1.13.25 ===== */

/* =====================================================
   v1.13.26 — Окно корзины, доработка:
   1) «Серединка» окна оставалась серой — миниатюры товаров
      .padel-cart-drawer-item__thumb были var(--padel-black-2)
      = #1a1a1a → всё внутреннее пространство приведено к
      чёрному #000 (тело, элементы, миниатюры, empty/loading).
   2) Кнопка «Оформить заказ» была огромной (padel-btn--xl:
      padding 22px 48px, кегль 17px, лочился темой 6806) →
      компактные края: padding 14px 24px, кегль 14px.
   3) Крестик закрытия окна не было видно (фон #222 и
      граница 0.08–0.12 альфы на чёрном) → яркая белая
      иконка + заметная граница 0.4, hover красный.
   4) Крестик удаления товара под карточкой не было видно
      (иконка var(--padel-gray-dark) на чёрном) → белый
      крестик в красной окружности, hover заливка красным.
   ===================================================== */

/* --- 1. Серединка окна — чёрная --- */
.padel-cart-drawer__body,
.padel-cart-drawer__loading,
.padel-cart-drawer__empty,
.padel-cart-drawer-item,
.padel-cart-drawer-item__thumb {
        background: #000000 !important;
        background-color: #000000 !important;
}

/* --- 2. Кнопка «Оформить заказ» — компактнее --- */
html body .padel-cart-drawer__footer .padel-btn--xl,
html body .padel-cart-drawer__footer .padel-btn--primary {
        padding: 14px 24px !important;
        font-size: 14px !important;
        letter-spacing: 1px !important;
}

/* --- 3. Крестик закрытия окна — видимый --- */
html body .padel-cart-drawer__close {
        background: #1a1a1a !important;
        border: 1px solid rgba(255, 255, 255, 0.4) !important;
        color: #ffffff !important;
}

html body .padel-cart-drawer__close svg {
        stroke: #ffffff !important;
}

html body .padel-cart-drawer__close:hover,
html body .padel-cart-drawer__close:focus {
        background: rgba(255, 71, 87, 0.25) !important;
        border-color: rgba(255, 71, 87, 0.6) !important;
        color: #ff4757 !important;
}

html body .padel-cart-drawer__close:hover svg,
html body .padel-cart-drawer__close:focus svg {
        stroke: #ff4757 !important;
}

/* --- 4. Крестик удаления товара — видимый --- */
html body .padel-cart-drawer-item__remove,
html body .padel-cart-item__remove {
        width: 28px !important;
        height: 28px !important;
        background: rgba(255, 71, 87, 0.12) !important;
        border: 1px solid rgba(255, 71, 87, 0.5) !important;
        border-radius: 50% !important;
        color: #ffffff !important;
}

html body .padel-cart-drawer-item__remove svg,
html body .padel-cart-item__remove svg {
        stroke: #ffffff !important;
}

html body .padel-cart-drawer-item__remove:hover,
html body .padel-cart-item__remove:hover {
        background: rgba(255, 71, 87, 0.35) !important;
        color: #ff4757 !important;
}

html body .padel-cart-drawer-item__remove:hover svg,
html body .padel-cart-item__remove:hover svg {
        stroke: #ff4757 !important;
}

/* ===== END v1.13.26 ===== */

/* =====================================================
   v1.13.27 — Окно корзины, финальный щит видимости:
   1) Крестик закрытия окна: тема перебивала даже
      «html body + !important» → базовый вид залочен
      ИНЛАЙН в разметке (includes/class-cart.php), здесь
      дублирующий слой; белый цвет крестика зашит в SVG
      атрибутом stroke="#ffffff" (вместо currentColor).
   2) Кнопка удаления товара: круг-крестик заменён на
      текстовую ссылку «Удалить товар» — белая, при
      наведении подчёркивается (CSS + JS-страховка).
   ===================================================== */

/* --- 1. Крестик закрытия — дубль инлайнового щита --- */
html body .padel-cart-drawer__close {
        width: 38px !important;
        height: 38px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: rgba(255, 255, 255, 0.08) !important;
        border: 1.5px solid #ffffff !important;
        border-radius: 50% !important;
        color: #ffffff !important;
        padding: 0 !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
}

html body .padel-cart-drawer__close svg,
html body .padel-cart-drawer__close svg path {
        stroke: #ffffff !important;
}

/* --- 2. Удаление товара — текстовая ссылка «Удалить товар» --- */
html body .padel-cart-drawer-item__remove,
html body .padel-cart-item__remove {
        width: auto !important;
        height: auto !important;
        min-width: 0 !important;
        min-height: 0 !important;
        background: none !important;
        border: 0 !important;
        border-radius: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        color: #ffffff !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        line-height: 1.5 !important;
        font-family: inherit !important;
        text-transform: none !important;
        letter-spacing: normal !important;
        text-decoration: none !important;
        box-shadow: none !important;
        outline: none !important;
        display: inline-block !important;
        cursor: pointer !important;
        opacity: 1 !important;
        visibility: visible !important;
        transition: none !important;
        transform: none !important;
}

html body .padel-cart-drawer-item__remove:hover,
html body .padel-cart-item__remove:hover {
        color: #ffffff !important;
        background: none !important;
        border: 0 !important;
        text-decoration: underline !important;
        transform: none !important;
}

/* Позиция ссылки в сетке карточки drawer: десктоп — отдельной
   строкой под карточкой («под карточкой товара»); мобайл —
   под subtotal в колонке информации. */
.padel-cart-drawer-item__remove {
        grid-column: 1 / -1;
        justify-self: start;
}

@media (max-width: 480px) {
        .padel-cart-drawer-item__remove {
                grid-column: 2;
                grid-row: auto;
                justify-self: start;
                margin-top: 2px !important;
                font-size: 12px !important;
        }
}

/* ===== END v1.13.27 ===== */

/* =====================================================
   v1.13.29 — Бейдж типа товара в hero: показывается и
   для «Ракетка» (раньше скрывался условием
   'racket' !== $product_type — у ракеток бейджа не было,
   тогда как у кроссовок мигал «Кроссовки»).
   Цветовая схема «Ракетка» — фирменная зелёная.
   ===================================================== */
.padel-badge--type-racket {
        background: rgba(57, 255, 20, 0.12);
        border-color: var(--padel-green);
        color: var(--padel-green);
}

.padel-badge--type-racket::before {
        background: var(--padel-green);
        box-shadow: 0 0 8px var(--padel-green);
}

/* ===== END v1.13.29 ===== */

/* ===== v1.13.30 — Бейдж «Ракетка» в hero: фон убран полностью ===== */
html body .padel-badge--type-racket {
        background: transparent !important;
        background-color: transparent !important;
}

/* ===== END v1.13.30 ===== */

/* ===== v1.13.32 — Личный кабинет: кнопки действий в шапке (Разместить товар / Выйти) ===== */
.padel-account__header-actions {
        display: flex;
        align-items: center;
        gap: 10px;
        flex-wrap: wrap;
}

@media (max-width: 640px) {
        .padel-account__header-actions {
                width: 100%;
        }
        .padel-account__header-actions .padel-btn {
                flex: 1 1 auto;
        }
}

/* ===== END v1.13.32 ===== */

/* ===== v1.13.33 — Секция «Хиты продаж»: светлая, как на эталонном скрине =====
   Заголовок слева — капсом, «Смотреть все →» справа серым;
   ряд компактных светлых карточек: бренд серым мелко, модель, цена жирным
   влево + квадратная зелёная кнопка корзины вправо, сердечко в углу медиа.
   Секция перекрывает тёмную тему плагина ТОЛЬКО внутри .padel-hits. */

.padel-hits {
        --hits-accent: #C6FF00;
        --hits-bg: #ffffff;
        --hits-text: #111111;
        --hits-muted: #6b6b6b;
        --hits-card-bg: #ffffff;
        background: var(--hits-bg);
        color: var(--hits-text);
        border-radius: 14px;
        padding: 28px clamp(16px, 3vw, 36px) 32px;
        margin: 32px 0;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.35);
}

.padel-hits__head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        margin: 0 0 20px;
}

.padel-hits__title {
        margin: 0;
        font-family: var(--padel-font-display, 'Inter', sans-serif);
        font-size: clamp(18px, 2.2vw, 24px);
        font-weight: 900;
        letter-spacing: 0.02em;
        text-transform: uppercase;
        color: var(--hits-text) !important;
}

.padel-hits__all {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        color: var(--hits-muted) !important;
        font-size: 14px;
        font-weight: 600;
        text-decoration: none;
        white-space: nowrap;
}

.padel-hits__all:hover {
        color: var(--hits-accent) !important;
}

.padel-hits__all svg {
        transition: transform 0.2s ease;
}

.padel-hits__all:hover svg {
        transform: translateX(4px);
}

.padel-hits__row {
        display: grid;
        grid-template-columns: repeat(6, minmax(0, 1fr));
        gap: 14px;
}

@media (max-width: 1200px) {
        .padel-hits__row { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
        .padel-hits__row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
        .padel-hits__row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .padel-hits { padding: 20px 14px 24px; }
        .padel-hits__head { flex-wrap: wrap; }
}

/* --- Карточка внутри секции: светлая тема --- */

/* Фон карточки отдельно от фона секции: на тёмной секции карточки остаются светлыми,
   текст внутри них — всегда тёмный (иначе текст сливается). Цвет текста карточки
   привязан к фону карточки, а не к фону секции.
   v1.13.45: фон карточки (--hits-card-bg) и области фото (--hits-media-bg) —
   настройки из админки / атрибуты card_bg и media_bg шорткода.
   Специфичность html body — выше тёмных щитов темы (v1.12.42+). */
html body .padel-hits .padel-card {
        --hits-text: #111111;
        --hits-muted: #8a8a8a;
        background: var(--hits-card-bg, #ffffff) !important;
        border: 1px solid var(--hits-border-color, #ececec);
        border-radius: 10px;
        overflow: hidden;
        box-shadow: none !important;
        color: var(--hits-text);
        display: flex;
        flex-direction: column;
}

html body .padel-hits .padel-card:hover {
        border-color: var(--hits-border-color, #d9d9d9);
        filter: brightness(0.97);
}

/* Медиа: фон области фото — настройка (дефолт светло-серый) */
html body .padel-hits .padel-card__media {
        background: var(--hits-media-bg, #fafafa) !important;
        aspect-ratio: 1 / 1;
        position: relative;
}

.padel-hits .padel-card__media .padel-card__image-link {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 10px;
}

.padel-hits .padel-card__media img.padel-card__image {
        width: 100%;
        height: 100%;
        object-fit: contain;
        mix-blend-mode: multiply;
}

/* Нет фото — серый силуэт ракетки по центру (как на скрине — товары без фото) */
.padel-hits .padel-card__media:not(:has(> .padel-card__image-link))::after {
        content: '';
        position: absolute;
        inset: 0;
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 150' fill='%23d9d9d9'><ellipse cx='50' cy='50' rx='28' ry='45' stroke='%23bdbdbd' stroke-width='3' fill='none'/><ellipse cx='50' cy='50' rx='15' ry='32' stroke='%23d9d9d9' stroke-width='2' fill='none'/><line x1='50' y1='95' x2='50' y2='135' stroke='%23bdbdbd' stroke-width='6' stroke-linecap='round'/><circle cx='50' cy='143' r='5' fill='%23d9d9d9'/></svg>");
        background-repeat: no-repeat;
        background-position: center 55%;
        background-size: 62% auto;
        opacity: 0.9;
}

/* Оверлей и quick-action кнопки «Подробнее/глаз» в светлой секции не нужны */
.padel-hits .padel-card__overlay,
.padel-hits .padel-card__quick-actions .padel-compare-btn {
        display: none !important;
}

/* Сердечко — серый контур в правом верхнем углу медиа */
.padel-hits .padel-card__quick-actions {
        position: absolute;
        top: 8px;
        right: 8px;
        z-index: 3;
        display: flex;
        flex-direction: column;
        gap: 6px;
}html body .padel-hits .padel-card__quick-actions button.padel-card__quick-btn {
        width: 28px;
        height: 28px;
        border: 0 !important;
        background: transparent !important;
        background-color: transparent !important;
        color: var(--hits-muted) !important;
        padding: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
}

html body .padel-hits .padel-card__quick-actions button.padel-card__quick-btn:hover {
        color: var(--hits-accent) !important;
        background: transparent !important;
        background-color: transparent !important;
}

html body .padel-hits .padel-card__quick-actions button.padel-card__quick-btn svg {
        stroke: currentColor !important;
}

.padel-hits .padel-card__quick-btn svg {
        width: 18px;
        height: 18px;
        stroke: currentColor;
}

/* Тело карточки: бренд-срок серым, модель, цена + кнопка корзины */
html body .padel-hits .padel-card__body {
        padding: 10px 12px 12px;
        display: flex;
        flex-direction: column;
        gap: 4px;
        background: var(--hits-card-bg, #ffffff) !important;
}

.padel-hits .padel-card__cats,
.padel-hits .padel-card__rating,
.padel-hits .padel-card__reviews,
.padel-hits .padel-card__old-price,
.padel-hits .padel-card .padel-badge {
        display: none !important;
}

/* Название: JS разбивает первое слово на бренд, остальное — модель.
   До JS-обработки выглядит как обычное название. */
.padel-hits .padel-card__title {
        margin: 0;
        font-family: var(--padel-font-ui, 'Inter', sans-serif);
        font-size: 12px;
        font-weight: 500;
        color: var(--hits-muted) !important;
        line-height: 1.35;
        text-transform: none;
        letter-spacing: 0;
        order: 1;
}

.padel-hits .padel-card__title a {
        color: inherit !important;
        text-decoration: none;
        display: block;
}

.padel-hits .padel-card__title {
        color: var(--hits-muted) !important;
}

.padel-hits .padel-hit-model {
        color: var(--hits-name-color, var(--hits-text)) !important;
}

.padel-hits .padel-card__title .padel-hit-brand {
        display: block;
        color: var(--hits-muted);
        font-weight: 500;
        font-size: 11.5px;
}

.padel-hits .padel-card__title .padel-hit-model {
        display: block;
        /* v1.13.47: свой цвет модели товара (пусто = цвет текста карточки) */
        color: var(--hits-name-color, var(--hits-text));
        font-weight: 600;
        font-size: 12px;
        margin-top: 1px;
}

/* Цена + кнопка корзины в строку */
.padel-hits .padel-card__footer {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
        margin-top: 2px;
        order: 2;
}

.padel-hits .padel-card__price-block {
        display: flex;
        flex-direction: column;
}

.padel-hits .padel-card__price {
        font-family: var(--padel-font-ui, 'Inter', sans-serif);
        font-size: 15px;
        font-weight: 800;
        /* v1.13.47: свой цвет цены (пусто = цвет текста карточки) */
        color: var(--hits-price-color, var(--hits-text)) !important;
        -webkit-text-fill-color: var(--hits-price-color, var(--hits-text));
        letter-spacing: 0;
        white-space: nowrap;
}

/* Квадратная зелёная кнопка корзины с иконкой.
   Специфичность выше правил v1.12.42 (html body .padel-card ...),
   иначе фон/цвет текста перебиваются фирменными щитами. */
html body .padel-hits .padel-card .padel-card__footer button.padel-add-to-cart {
        width: 34px;
        height: 34px;
        min-width: 34px;
        padding: 0 !important;
        border-radius: 6px !important;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 0 !important;
        line-height: 0 !important;
        color: transparent !important;
        border: 0 !important;
        background: var(--hits-accent) !important;
        border-color: var(--hits-accent) !important;
        box-shadow: none !important;
        flex: 0 0 auto;
        overflow: hidden;
}

html body .padel-hits .padel-card .padel-card__footer button.padel-add-to-cart:hover,
html body .padel-hits .padel-card .padel-card__footer button.padel-add-to-cart:focus,
html body .padel-hits .padel-card .padel-card__footer button.padel-add-to-cart:active {
        background: var(--hits-accent-hover, #b3e600) !important;
        border-color: var(--hits-accent-hover, #b3e600) !important;
        color: transparent !important;
}

/* Текст внутри кнопки скрыт полностью */
html body .padel-hits .padel-card .padel-card__footer button.padel-add-to-cart:not(:empty) {
        font-size: 0 !important;
}

html body .padel-hits .padel-card .padel-card__footer button.padel-add-to-cart > *:not(svg) {
        display: none !important;
}

/* === v1.13.34: иконка — инлайн-SVG (вставляется JS-ом), data-uri fallback убран === */
html body .padel-hits .padel-card .padel-card__footer button.padel-add-to-cart::before {
        content: none;
}

html body .padel-hits .padel-card .padel-card__footer button.padel-add-to-cart .padel-hit-cart-icon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
}

html body .padel-hits .padel-card .padel-card__footer button.padel-add-to-cart .padel-hit-cart-icon svg {
        display: block;
        width: 18px;
        height: 18px;
}

/* === v1.13.34: атрибуты bg/accent/text/btn секции ===
   Цвета берутся из CSS-переменных секции (--hits-bg/--hits-text/--hits-muted/--hits-accent).
   Цвет иконки корзины должен контрастировать с accent: подбирается в шорткоде
   (тёмный на светлом акценте, светлый на тёмном) через --hits-btn-icon. */

/* Режим btn="text": обычная кнопка с текстом вместо квадратной иконки */
html body .padel-hits.padel-hits--text-btn .padel-card .padel-card__footer button.padel-add-to-cart {
        width: auto;
        min-width: 0;
        height: auto;
        padding: 9px 14px !important;
        border-radius: 7px !important;
        font-size: 13px !important;
        line-height: 1.2 !important;
        text-indent: 0 !important;
        overflow: visible;
        font-weight: 700;
        white-space: nowrap;
        max-width: 100%;
}

/* Не даём кнопке вылезать за узкую карточку */
html body .padel-hits .padel-card .padel-card__footer {
        min-width: 0;
        flex-wrap: wrap;
}

html body .padel-hits.padel-hits--text-btn .padel-card .padel-card__footer button.padel-add-to-cart .padel-hit-cart-icon::before,
html body .padel-hits.padel-hits--text-btn .padel-card .padel-card__footer button.padel-add-to-cart > span:not(.padel-hit-cart-icon) {
        font-size: 13px !important;
}

html body .padel-hits.padel-hits--text-btn .padel-card .padel-card__footer button.padel-add-to-cart .padel-hit-cart-icon {
        display: none !important;
}

html body .padel-hits.padel-hits--text-btn .padel-card .padel-card__footer button.padel-add-to-cart {
        color: var(--hits-text) !important;
}

html body .padel-hits.padel-hits--text-btn .padel-card .padel-card__footer button.padel-add-to-cart:hover,
html body .padel-hits.padel-hits--text-btn .padel-card .padel-card__footer button.padel-add-to-cart:focus,
html body .padel-hits.padel-hits--text-btn .padel-card .padel-card__footer button.padel-add-to-cart:active {
        color: var(--hits-text) !important;
        filter: brightness(0.93);
}

/* ===== END v1.13.33 ===== */

/* ===== v1.13.48 — Блоки-подборки [product_showcase] как на скрине 2.PNG =====
   Сетка 2×2 светлых блоков: заголовок капсом + «Смотреть все →» справа,
   под ними ряд из 4 картинок товара (квадрат, object-contain, прозрачный фон png),
   под каждой — подпись (бренд). Каждая картинка — отдельная ссылка. */

.padel-showcase--products {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
        margin: 32px 0;
}

.padel-showcase__product-block {
        background: #ffffff;
        border-radius: 14px;
        padding: 18px clamp(14px, 2vw, 24px) 16px;
        box-shadow: 0 6px 24px rgba(0, 0, 0, 0.18);
}

.padel-showcase__head {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 12px;
        margin: 0 0 12px;
}

html body .padel-showcase__title {
        margin: 0;
        font-family: var(--padel-font-display, 'Inter', sans-serif);
        font-size: clamp(15px, 1.6vw, 20px);
        font-weight: 900;
        letter-spacing: 0.02em;
        text-transform: uppercase;
        color: var(--show-title-color, #111111) !important;
}

html body .padel-showcase__all {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        color: #6b6b6b !important;
        font-size: 13px;
        font-weight: 600;
        text-decoration: none;
        white-space: nowrap;
}

html body .padel-showcase__all:hover { color: #111111 !important; }
html body .padel-showcase__all svg { transition: transform 0.2s ease; }
html body .padel-showcase__all:hover svg { transform: translateX(3px); }

/* Ряд 4 картинок: квадрат, картинка вписана, подпись-бренд под ней */
.padel-showcase__images {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 10px;
}

.padel-showcase__item {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-decoration: none;
}

.padel-showcase__item img {
        width: 100%;
        aspect-ratio: 1 / 1;
        object-fit: contain;
        border-radius: 8px;
        background: #ffffff;
        transition: transform 0.2s ease;
}

html body .padel-showcase__item:hover img { transform: translateY(-3px); }

html body .padel-showcase__item-label {
        margin-top: 6px;
        font-family: var(--padel-font-display, 'Inter', sans-serif);
        font-size: 12px;
        font-weight: 800;
        font-style: italic;
        letter-spacing: 0.03em;
        color: #111111;
        text-align: center;
        line-height: 1.2;
}

/* Мобильные брейкпоинты showcase */
@media (max-width: 900px) {
        .padel-showcase--products { grid-template-columns: 1fr; gap: 14px; margin: 24px 0; }
        .padel-showcase__product-block { padding: 14px 12px 12px; }
}

@media (max-width: 640px) {
        .padel-showcase__images { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 8px; }
        .padel-showcase__head { flex-wrap: wrap; gap: 4px 12px; }
        html body .padel-showcase__title { font-size: 15px; }
}

/* ===== END v1.13.48 — Блоки-подборки ===== */

/* Блок сам несёт класс .padel-hits — светлая тема карточек работает как есть. */
.padel-showcase__block {
        margin: 0;
        padding: 20px clamp(14px, 2vw, 24px) 22px;
        box-shadow: none;
        border-radius: 12px;
}

/* Заголовок и ссылка внутри блока берут цвета из CSS-переменных секции
   (--hits-text = цвет заголовка, --hits-muted = цвет «Смотреть все», задаётся блоку инлайном).
   Специфичность html body — выше тёмных щитов темы (v1.12.42+). */
html body .padel-showcase .padel-hits__title { color: var(--hits-text) !important; }

html body .padel-showcase .padel-hits__all { color: var(--hits-muted) !important; }

html body .padel-showcase .padel-hits__all:hover { color: var(--hits-accent) !important; }

/* Ряд товаров: до 4 в строку, компактный вертикальный ритм */
.padel-showcase .padel-hits__row {
        gap: 12px;
}

/* Подряд товаров: логотипы брендов (текст или картинка) */
.padel-showcase__brands {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 10px 24px;
        margin-top: 16px;
        padding-top: 12px;
        border-top: 1px solid rgba(0, 0, 0, 0.07);
}

.padel-showcase__brand {
        font-family: var(--padel-font-display, 'Inter', sans-serif);
        font-size: 15px;
        font-weight: 800;
        font-style: italic;
        letter-spacing: 0.04em;
        color: #111111;
        text-transform: none;
        white-space: nowrap;
}

.padel-showcase__brand-img {
        height: 22px;
        width: auto;
        max-width: 90px;
        object-fit: contain;
        filter: grayscale(1);
        opacity: 0.85;
}

/* ===== END v1.13.41 — Блоки-подборки ===== */

/* ===== v1.13.48 — Мобильная адаптация всего плагина =====
   Единый блок мобильных доработок (не ломает существующие @media выше — грузится последним). */

/* Никаких горизонтальных прокруток от внутрисекционных сеток */
.padel-hits,
.padel-showcase--products,
.padel-tiles,
.padel-grid {
        max-width: 100%;
        overflow-x: clip;
}

@media (max-width: 640px) {
        /* Плотнее отступы светлых секций */
        .padel-hits { padding: 20px 14px 24px; border-radius: 12px; margin: 22px 0; }

        /* Кнопка корзины — тапабельный размер 40px */
        html body .padel-hits .padel-card .padel-card__footer button.padel-add-to-cart {
                width: 40px;
                height: 40px;
                min-width: 40px;
        }

        /* Цена чуть крупнее на узких экранах — читаемость */
        .padel-hits .padel-card__price { font-size: 14px; }

        /* Название/бренд — плотнее строка */
        .padel-hits .padel-card__body { padding: 8px 10px 10px; gap: 2px; }

        /* Сердечко — не перекрывает фото на малых карточках */
        .padel-hits .padel-card__quick-actions { top: 6px; right: 6px; }
        html body .padel-hits .padel-card__quick-actions button.padel-card__quick-btn { width: 30px; height: 30px; }

        /* Плитки-категории: название и «Смотреть все» не наезжают друг на друга */
        .padel-tile__overlay { padding: 10px 10px 14px; }
        .padel-tile:first-child .padel-tile__overlay { padding-top: 36px; }

        /* Заголовку секции — компактный кегль */
        .padel-tiles__section-title { font-size: 18px; margin-bottom: 12px; }

        /* Сетка карточек каталога: 2 колонки максимум уже есть, масло — холод ГЭП */
        .padel-grid { gap: 10px; }

        /* Окно корзины не шире экрана */
        .padel-cart-popup { width: min(96vw, 420px); }
}

/* Очень узкие (консервативный fallback) */
@media (max-width: 380px) {
        .padel-hits__row,
        .padel-tiles__row { gap: 8px; }
        .padel-showcase__images { gap: 8px 6px; }
}

/* Сенсорные экраны: никакого hover-трансформ-дрожания */
@media (hover: none) {
        .padel-tile:hover,
        .padel-showcase__tile:hover,
        html body .padel-showcase__item:hover img,
        html body .padel-hits .padel-card:hover { transform: none; }
}

/* ===== END v1.13.48 — Мобильная адаптация ===== */

/* ===== v1.13.36 — Плитки-категории: тёмные, фото-cover, капс-название + зелёное «Смотреть все» ===== */

.padel-tiles {
        margin: 32px 0;
}

/* v1.13.38: картинка поверх фона секции (если задана через настройку/атрибут bg_img) */
.padel-tiles[style*="--tiles-bg-img"] {
        position: relative;
        padding: 20px clamp(12px, 2vw, 24px);
        border-radius: 14px;
        overflow: hidden;
}

.padel-tiles[style*="--tiles-bg-img"]::before {
        content: '';
        position: absolute;
        inset: 0;
        z-index: 0;
        background-image:
                linear-gradient(180deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.35) 60%, rgba(0,0,0,0.65) 100%),
                var(--tiles-bg-img);
        background-size: cover;
        background-position: center;
}

/* Контент секции — над фоновой картинкой */
.padel-tiles[style*="--tiles-bg-img"] .padel-tiles__section-title,
.padel-tiles[style*="--tiles-bg-img"] .padel-tiles__row {
        position: relative;
        z-index: 1;
}

.padel-tiles__section-title {
        margin: 0 0 18px;
        font-family: var(--padel-font-display, 'Inter', sans-serif);
        font-size: clamp(20px, 2.4vw, 28px);
        font-weight: 900;
        letter-spacing: 0.02em;
        text-transform: uppercase;
        color: var(--tile-name-color, var(--padel-white, #fff));
}

.padel-tiles__row {
        display: grid;
        grid-template-columns: repeat(6, minmax(0, 1fr));
        gap: 12px;
}

@media (max-width: 1200px) {
        .padel-tiles__row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
        .padel-tiles__row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.padel-tile {
        position: relative;
        display: flex;
        align-items: flex-end;
        width: 100%;
        aspect-ratio: 3 / 4;
        border-radius: 10px;
        overflow: hidden;
        background: var(--tile-bg, #181818) center / cover no-repeat;
        /* v1.13.40: слои сверху вниз — затемнение, картинка наложения, фон-картинка плитки */
        background-image:
                linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,0.72) 100%),
                var(--tile-img, none),
                var(--tile-bg-img, none);
        text-decoration: none;
        transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.padel-tile:hover {
        transform: translateY(-4px);
        box-shadow: 0 12px 30px rgba(0, 0, 0, 0.5);
        text-decoration: none;
}

.padel-tile__overlay {
        position: relative;
        z-index: 2;
        padding: 14px 14px 22px;
        width: 100%;
}

/* Первая плитка с бейджем: название опущено ниже бейджа */
.padel-tile:first-child .padel-tile__overlay {
        padding-top: 40px;
}

/* Бейдж поверх мини-планшетов, не перекрывает имя */
.padel-tile__badge {
        position: absolute;
        top: 10px;
        left: 10px;
        z-index: 2;
        padding: 5px 10px;
        font-size: 10px;
}

.padel-tile__name {
        display: block;
        font-family: var(--padel-font-display, 'Inter', sans-serif);
        font-size: clamp(12px, 1.3vw, var(--tile-name-size, 16px));
        font-weight: 900;
        letter-spacing: 0.04em;
        text-transform: uppercase;
        color: var(--tile-name-color, #ffffff);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        margin: 0 0 7px;
}

.padel-tile__all {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        color: var(--tile-accent, #C6FF00);
        font-size: 11px;
        font-weight: 600;
        white-space: nowrap;
        transition: gap 0.2s ease, transform 0.2s ease;
}

.padel-tile__all svg {
        transition: transform 0.2s ease;
}

.padel-tile:hover .padel-tile__all {
        color: #d9ff33;
}

.padel-tile:hover .padel-tile__all svg {
        transform: translateX(3px);
}

.padel-tile__badge {
        position: absolute;
        top: 12px;
        left: 12px;
        z-index: 2;
        padding: 7px 12px;
        border-radius: 50px;
        background: var(--tile-accent, #C6FF00);
        color: var(--tile-badge-text, #111111);
        font-size: 11px;
        font-weight: 800;
        letter-spacing: 0.06em;
        text-transform: uppercase;
}

/* Фото нет — тёмная текстура с силуэтом мяча */
.padel-tile:not([style]) {
        background-image:
                linear-gradient(180deg, rgba(0,0,0,0.2) 40%, rgba(0,0,0,0.75) 100%),
                url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='%23303030'><circle cx='50' cy='54' r='30'/><path d='M50 84 C 30 84 20 60 24 44 L 30 30 L 70 30 L 76 44 C 80 60 70 84 50 84 Z' fill='%23383838'/></svg>");
        background-size: auto, 70% 60%;
        background-position: center, center 30%;
}

/* ===== END v1.13.36 ===== */
