﻿/* Phase 8B Product UI migration. Consolidated source: DTFShop Product Detail Page SAFE FINAL V4. */

body.single-product.dtfshop-pdp-v4 {
            --dtf-pdp-black: #07111f;
            --dtf-pdp-text: #0f172a;
            --dtf-pdp-muted: #64748b;
            --dtf-pdp-blue: #009fe3;
            --dtf-pdp-blue2: #005bea;
            --dtf-pdp-border: rgba(15, 23, 42, 0.08);
            --dtf-pdp-blue-border: rgba(0, 159, 227, 0.14);
            --dtf-pdp-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
            --dtf-pdp-shadow-soft: 0 12px 30px rgba(15, 23, 42, 0.055);
            --dtf-pdp-radius: 18px;
            margin-top: 0 !important;
            padding-top: 0 !important;
            background:
                radial-gradient(circle at 15% 8%, rgba(0, 159, 227, 0.10), transparent 28%),
                radial-gradient(circle at 85% 18%, rgba(0, 102, 255, 0.08), transparent 26%),
                linear-gradient(180deg, #f8fbff 0%, #eef8ff 42%, #f7fbff 72%, #ffffff 100%) !important;
        }

        body.single-product.dtfshop-pdp-v4 #page,
        body.single-product.dtfshop-pdp-v4 .page-wrapper,
        body.single-product.dtfshop-pdp-v4 .wrapper {
            margin-top: 0 !important;
            padding-top: 0 !important;
        }

        body.single-product.dtfshop-pdp-v4 #main,
        body.single-product.dtfshop-pdp-v4 .main-content,
        body.single-product.dtfshop-pdp-v4 .content-area,
        body.single-product.dtfshop-pdp-v4 .site-main {
            padding-top: 0 !important;
            background:
                radial-gradient(circle at 20% 4%, rgba(0, 159, 227, 0.09), transparent 26%),
                linear-gradient(180deg, #f8fbff 0%, #eef8ff 46%, #f8fbff 76%, #ffffff 100%) !important;
        }

        /* Header clean, no gradient inside header */
        body.single-product.dtfshop-pdp-v4 #header,
        body.single-product.dtfshop-pdp-v4 .header-wrapper,
        body.single-product.dtfshop-pdp-v4 .main-header,
        body.single-product.dtfshop-pdp-v4 .site-header {
            background: #ffffff !important;
            box-shadow: 0 8px 26px rgba(15, 23, 42, 0.04) !important;
        }

        /* Hide old full breadcrumb bars + older snippet outputs */
        body.single-product.dtfshop-pdp-v4 .page-top,
        body.single-product.dtfshop-pdp-v4 .porto-page-title,
        body.single-product.dtfshop-pdp-v4 .breadcrumbs-wrap,
        body.single-product.dtfshop-pdp-v4 .breadcrumb-wrap,
        body.single-product.dtfshop-pdp-v4 .porto-breadcrumbs,
        body.single-product.dtfshop-pdp-v4 #breadcrumbs,
        body.single-product.dtfshop-pdp-v4 .main-content > .container > .woocommerce-breadcrumb,
        body.single-product.dtfshop-pdp-v4 #main > .container > .woocommerce-breadcrumb,
        body.single-product.dtfshop-pdp-v4 #dtf-pdp-breadcrumb-final,
        body.single-product.dtfshop-pdp-v4 .dtf-pdp-breadcrumb-wrap,
        body.single-product.dtfshop-pdp-v4 #dtf-pdp-fbt-final,
        body.single-product.dtfshop-pdp-v4 .dtf-pdp-fbt-final-wrap,
        body.single-product.dtfshop-pdp-v4 .dtf-fbt-strip-wrap,
        body.single-product.dtfshop-pdp-v4 .dtf-v3-gallery,
        body.single-product.dtfshop-pdp-v4 .dtf-v3-mobile-bar,
        body.single-product.dtfshop-pdp-v4 .dtf-ui-gallery,
        body.single-product.dtfshop-pdp-v4 .dtf-stable-gallery,
        body.single-product.dtfshop-pdp-v4 .dtf-pdp-gallery,
        body.single-product.dtfshop-pdp-v4 .dtf-gallery-assurance-wrap,
        body.single-product.dtfshop-pdp-v4 .dtf-gallery-assurance-card,
        body.single-product.dtfshop-pdp-v4 .dtf-gallery-trust-strip {
            display: none !important;
        }

        /* If old V3 accidentally remains active, restore Porto's original gallery */
        body.single-product.dtfshop-pdp-v4.dtf-v3-gallery-built .woocommerce-product-gallery__wrapper,
        body.single-product.dtfshop-pdp-v4.dtf-v3-gallery-built .flex-control-thumbs,
        body.single-product.dtfshop-pdp-v4.dtf-v3-gallery-built .product-thumbnails,
        body.single-product.dtfshop-pdp-v4.dtf-v3-gallery-built .thumbnails {
            display: block !important;
        }

        body.single-product.dtfshop-pdp-v4 #main > .container,
        body.single-product.dtfshop-pdp-v4 .main-content > .container {
            width: min(1280px, calc(100% - 28px)) !important;
            max-width: 1280px !important;
        }

        /* Compact breadcrumb pill */
        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-breadcrumb-wrap {
            width: min(1280px, calc(100% - 28px)) !important;
            margin: 0 auto !important;
            padding: 12px 0 0 !important;
            background: transparent !important;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-breadcrumb {
            display: inline-flex !important;
            align-items: center !important;
            max-width: 100% !important;
            gap: 7px !important;
            padding: 7px 11px !important;
            border-radius: 999px !important;
            background: rgba(255, 255, 255, 0.84) !important;
            border: 1px solid rgba(15, 23, 42, 0.08) !important;
            box-shadow: 0 8px 20px rgba(15, 23, 42, 0.045) !important;
            color: #64748b !important;
            font-size: 11px !important;
            line-height: 1.2 !important;
            font-weight: 700 !important;
            white-space: nowrap !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-breadcrumb a {
            color: #475569 !important;
            text-decoration: none !important;
            font-weight: 800 !important;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-breadcrumb a:hover {
            color: var(--dtf-pdp-blue) !important;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-bc-sep {
            color: #94a3b8 !important;
            font-weight: 800 !important;
        }

        /* Keep Porto layout. Only spacing + card polish. */
        body.single-product.dtfshop-pdp-v4 .product-summary-wrap {
            margin-top: 14px !important;
            padding-top: 0 !important;
            padding-bottom: 28px !important;
        }

        body.single-product.dtfshop-pdp-v4 .product-summary-wrap > .row {
            align-items: flex-start !important;
        }

        body.single-product.dtfshop-pdp-v4 .woocommerce-product-gallery,
        body.single-product.dtfshop-pdp-v4 div.product div.images,
        body.single-product.dtfshop-pdp-v4 .summary.entry-summary {
            background: rgba(255, 255, 255, 0.97) !important;
            border: 1px solid var(--dtf-pdp-border) !important;
            box-shadow: var(--dtf-pdp-shadow) !important;
            border-radius: var(--dtf-pdp-radius) !important;
            overflow: hidden !important;
        }

        body.single-product.dtfshop-pdp-v4 .woocommerce-product-gallery,
        body.single-product.dtfshop-pdp-v4 div.product div.images {
            padding: 14px !important;
        }

        body.single-product.dtfshop-pdp-v4 div.product div.images img {
            border-radius: 12px !important;
        }

        body.single-product.dtfshop-pdp-v4 .flex-control-thumbs li img,
        body.single-product.dtfshop-pdp-v4 .product-thumbnails img,
        body.single-product.dtfshop-pdp-v4 .thumbnails img {
            border-radius: 10px !important;
            border: 1px solid rgba(15, 23, 42, 0.10) !important;
            background: #ffffff !important;
            padding: 4px !important;
        }

        body.single-product.dtfshop-pdp-v4 .summary.entry-summary {
            position: relative !important;
            padding: 22px 22px 20px !important;
        }

        body.single-product.dtfshop-pdp-v4 .summary.entry-summary:before {
            content: "";
            position: absolute;
            inset: 0 0 auto 0;
            height: 4px;
            background: linear-gradient(90deg, var(--dtf-pdp-black), var(--dtf-pdp-blue), var(--dtf-pdp-blue2));
        }

        body.single-product.dtfshop-pdp-v4 h1.product_title,
        body.single-product.dtfshop-pdp-v4 .summary.entry-summary .product_title {
            color: var(--dtf-pdp-text) !important;
            font-size: clamp(22px, 2vw, 30px) !important;
            line-height: 1.08 !important;
            font-weight: 900 !important;
            letter-spacing: -0.04em !important;
            margin: 4px 0 12px !important;
        }

        body.single-product.dtfshop-pdp-v4 div.product p.price,
        body.single-product.dtfshop-pdp-v4 div.product span.price {
            color: var(--dtf-pdp-black) !important;
            font-size: clamp(22px, 2vw, 30px) !important;
            line-height: 1.1 !important;
            font-weight: 900 !important;
            letter-spacing: -0.03em !important;
        }

        body.single-product.dtfshop-pdp-v4 .price del {
            color: #94a3b8 !important;
            font-weight: 700 !important;
            opacity: 1 !important;
        }

        body.single-product.dtfshop-pdp-v4 .price ins {
            color: var(--dtf-pdp-black) !important;
            text-decoration: none !important;
        }

        body.single-product.dtfshop-pdp-v4 form.cart {
            border-top: 1px solid rgba(15, 23, 42, 0.08);
            padding-top: 16px !important;
            margin-top: 16px !important;
        }

        body.single-product.dtfshop-pdp-v4 .single_add_to_cart_button,
        body.single-product.dtfshop-pdp-v4 button.single_add_to_cart_button,
        body.single-product.dtfshop-pdp-v4 .cart .button {
            min-height: 46px !important;
            border-radius: 13px !important;
            border: 0 !important;
            background: linear-gradient(135deg, #06152d 0%, #004bd6 48%, #009fe3 100%) !important;
            box-shadow: 0 14px 26px rgba(0, 91, 234, 0.22) !important;
            color: #ffffff !important;
            font-weight: 900 !important;
            letter-spacing: 0.02em !important;
            text-transform: uppercase !important;
        }

        body.single-product.dtfshop-pdp-v4 .single_add_to_cart_button:hover,
        body.single-product.dtfshop-pdp-v4 button.single_add_to_cart_button:hover,
        body.single-product.dtfshop-pdp-v4 .cart .button:hover {
            transform: translateY(-1px);
            filter: brightness(1.04);
            box-shadow: 0 18px 32px rgba(0, 91, 234, 0.28) !important;
        }

        body.single-product.dtfshop-pdp-v4 a[href*="wa.me"],
        body.single-product.dtfshop-pdp-v4 a[href*="whatsapp"] {
            border-radius: 13px !important;
            font-weight: 800 !important;
        }

        /* FBT strip */
        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-wrap {
            width: min(1280px, calc(100% - 28px));
            margin: 2px auto 34px;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt {
            display: grid;
            grid-template-columns: minmax(220px, 0.9fr) minmax(360px, 1.5fr) auto;
            gap: 18px;
            align-items: center;
            padding: 18px;
            border-radius: 20px;
            background:
                radial-gradient(circle at 8% 0%, rgba(0, 159, 227, 0.16), transparent 30%),
                linear-gradient(135deg, #ffffff 0%, #f4fbff 55%, #eef8ff 100%);
            border: 1px solid var(--dtf-pdp-blue-border);
            box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-eyebrow {
            display: inline-flex;
            width: fit-content;
            padding: 5px 9px;
            border-radius: 999px;
            background: rgba(0, 159, 227, 0.10);
            color: #006ca8;
            font-size: 10px;
            line-height: 1;
            font-weight: 900;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            margin-bottom: 8px;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-copy h3 {
            margin: 0 0 5px !important;
            color: var(--dtf-pdp-text);
            font-size: clamp(18px, 2vw, 23px);
            line-height: 1.12;
            font-weight: 900;
            letter-spacing: -0.035em;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-copy p {
            margin: 0 !important;
            color: var(--dtf-pdp-muted);
            font-size: 13px;
            line-height: 1.5;
            font-weight: 600;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-chips,
        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-products {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 10px;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-chip,
        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-product {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 7px;
            min-height: 48px;
            padding: 9px 10px;
            border-radius: 14px;
            background: rgba(255, 255, 255, 0.93);
            border: 1px solid rgba(15, 23, 42, 0.08);
            color: #0f172a !important;
            text-decoration: none !important;
            font-size: 12px;
            line-height: 1.25;
            box-shadow: 0 8px 18px rgba(15, 23, 42, 0.045);
            transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-chip:hover,
        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-product:hover {
            transform: translateY(-2px);
            border-color: rgba(0, 159, 227, 0.32);
            box-shadow: 0 12px 24px rgba(0, 159, 227, 0.10);
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-chip strong {
            font-weight: 900;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-img {
            width: 34px;
            height: 34px;
            flex: 0 0 34px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-img img {
            max-width: 34px;
            max-height: 34px;
            object-fit: contain;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-name {
            max-height: 32px;
            overflow: hidden;
            font-size: 11px;
            line-height: 1.35;
            font-weight: 800;
        }

        body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-wa {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 46px;
            padding: 12px 16px;
            border-radius: 14px;
            background: linear-gradient(135deg, #dcfff0 0%, #f5fffb 100%);
            border: 1px solid rgba(34, 197, 94, 0.30);
            color: #047857 !important;
            text-decoration: none !important;
            font-size: 12px;
            line-height: 1.2;
            font-weight: 900;
            white-space: nowrap;
            box-shadow: 0 12px 22px rgba(34, 197, 94, 0.10);
        }

        /* Description card */
        body.single-product.dtfshop-pdp-v4 .woocommerce-tabs,
        body.single-product.dtfshop-pdp-v4 .product-collateral,
        body.single-product.dtfshop-pdp-v4 .product-tabs {
            width: min(1040px, calc(100% - 28px));
            margin: 36px auto 0 !important;
            background: rgba(255, 255, 255, 0.98) !important;
            border: 1px solid var(--dtf-pdp-border) !important;
            border-radius: 20px !important;
            box-shadow: var(--dtf-pdp-shadow-soft) !important;
            padding: 22px 26px !important;
            overflow: hidden !important;
        }

        body.single-product.dtfshop-pdp-v4 .woocommerce-tabs h2,
        body.single-product.dtfshop-pdp-v4 .woocommerce-tabs h3 {
            color: var(--dtf-pdp-text) !important;
            font-weight: 900 !important;
            letter-spacing: -0.04em !important;
        }

        body.single-product.dtfshop-pdp-v4 .woocommerce-tabs p,
        body.single-product.dtfshop-pdp-v4 .woocommerce-tabs li {
            color: #1f2937;
            line-height: 1.72;
        }

        /* Related products polish, not forced redesign */
        body.single-product.dtfshop-pdp-v4 .related.products,
        body.single-product.dtfshop-pdp-v4 .upsells.products {
            width: min(1280px, calc(100% - 28px));
            margin: 46px auto 0 !important;
            padding: 0 0 34px !important;
        }

        body.single-product.dtfshop-pdp-v4 .related.products > h2,
        body.single-product.dtfshop-pdp-v4 .upsells.products > h2 {
            color: var(--dtf-pdp-text) !important;
            font-size: clamp(18px, 2vw, 24px) !important;
            line-height: 1.15 !important;
            font-weight: 900 !important;
            letter-spacing: -0.035em;
            margin-bottom: 16px !important;
        }

        body.single-product.dtfshop-pdp-v4 .related.products ul.products li.product,
        body.single-product.dtfshop-pdp-v4 .upsells.products ul.products li.product {
            background: rgba(255, 255, 255, 0.97) !important;
            border: 1px solid rgba(15, 23, 42, 0.08) !important;
            box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06) !important;
            border-radius: 16px !important;
            overflow: hidden !important;
        }

        body.single-product.dtfshop-pdp-v4 ul.products li.product .button,
        body.single-product.dtfshop-pdp-v4 ul.products li.product .add_to_cart_button {
            border-radius: 12px !important;
            background: linear-gradient(135deg, #07111f 0%, #005bea 70%, #009fe3 100%) !important;
            color: #ffffff !important;
            font-weight: 900 !important;
            border: 0 !important;
        }

        body.single-product.dtfshop-pdp-v4 .footer-wrapper,
        body.single-product.dtfshop-pdp-v4 #footer,
        body.single-product.dtfshop-pdp-v4 .site-footer {
            background: linear-gradient(180deg, #f7fbff 0%, #ffffff 100%) !important;
        }

        @media (min-width: 992px) {
            body.single-product.dtfshop-pdp-v4 .summary.entry-summary {
                min-width: min(420px, 100%) !important;
            }
        }

        @media (max-width: 991px) {
            body.single-product.dtfshop-pdp-v4 .summary.entry-summary {
                margin-top: 18px !important;
            }

            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt {
                grid-template-columns: 1fr;
                gap: 16px;
            }

            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-wa {
                width: 100%;
            }
        }

        @media (max-width: 767px) {
            body.single-product.dtfshop-pdp-v4 #main > .container,
            body.single-product.dtfshop-pdp-v4 .main-content > .container,
            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-breadcrumb-wrap,
            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-wrap,
            body.single-product.dtfshop-pdp-v4 .related.products,
            body.single-product.dtfshop-pdp-v4 .upsells.products,
            body.single-product.dtfshop-pdp-v4 .woocommerce-tabs,
            body.single-product.dtfshop-pdp-v4 .product-collateral,
            body.single-product.dtfshop-pdp-v4 .product-tabs {
                width: calc(100% - 22px) !important;
            }

            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-breadcrumb-wrap {
                padding-top: 9px !important;
            }

            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-breadcrumb {
                display: flex !important;
                width: 100% !important;
                overflow-x: auto !important;
                overflow-y: hidden !important;
                text-overflow: clip !important;
                scrollbar-width: none !important;
                padding: 7px 10px !important;
                font-size: 10px !important;
            }

            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-breadcrumb::-webkit-scrollbar {
                display: none !important;
            }

            body.single-product.dtfshop-pdp-v4 .product-summary-wrap {
                margin-top: 10px !important;
                padding-bottom: 22px !important;
            }

            body.single-product.dtfshop-pdp-v4 .woocommerce-product-gallery,
            body.single-product.dtfshop-pdp-v4 div.product div.images {
                padding: 10px !important;
                border-radius: 16px !important;
            }

            body.single-product.dtfshop-pdp-v4 .summary.entry-summary {
                border-radius: 16px !important;
                padding: 18px 15px 16px !important;
            }

            body.single-product.dtfshop-pdp-v4 h1.product_title {
                font-size: 21px !important;
                line-height: 1.12 !important;
            }

            body.single-product.dtfshop-pdp-v4 .single_add_to_cart_button,
            body.single-product.dtfshop-pdp-v4 button.single_add_to_cart_button,
            body.single-product.dtfshop-pdp-v4 .cart .button {
                width: 100%;
                min-height: 48px !important;
            }

            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-wrap {
                margin: 0 auto 24px;
            }

            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt {
                padding: 16px;
                border-radius: 18px;
            }

            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-chips,
            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-products {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            body.single-product.dtfshop-pdp-v4 .woocommerce-tabs,
            body.single-product.dtfshop-pdp-v4 .product-collateral,
            body.single-product.dtfshop-pdp-v4 .product-tabs {
                margin-top: 26px !important;
                padding: 18px 15px !important;
                border-radius: 18px !important;
            }

            body.single-product.dtfshop-pdp-v4 .woocommerce-tabs p,
            body.single-product.dtfshop-pdp-v4 .woocommerce-tabs li {
                font-size: 13px;
                line-height: 1.65;
            }
        }

        @media (max-width: 380px) {
            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-chips,
            body.single-product.dtfshop-pdp-v4 .dtfshop-pdp-v4-fbt-products {
                grid-template-columns: 1fr;
            }

            body.single-product.dtfshop-pdp-v4 h1.product_title {
                font-size: 19px !important;
            }
        }

