/* Desktop technical_specs hover panel v3.19.84 */
.tt-product-spec-hover-template { display: none !important; }
#tt-product-spec-hover-portal { display: none; }

@media (min-width: 850px) and (hover: hover) and (pointer: fine) {
    #tt-product-spec-hover-portal {
        position: fixed;
        z-index: 2147482000;
        width: min(480px, calc(100vw - 32px));
        max-height: min(72vh, 680px);
        overflow: auto;
        overscroll-behavior: contain;
        border: 1px solid #e2e7ee;
        border-radius: 14px;
        background: #fff;
        box-shadow: 0 18px 50px rgba(16,24,40,.22);
        color: #344054;
        opacity: 0;
        visibility: hidden;
        transform: translateY(4px);
        transition: opacity .12s ease, transform .12s ease, visibility .12s ease;
    }
    #tt-product-spec-hover-portal.is-visible {
        display: block;
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
    #tt-product-spec-hover-portal .tt-spec-hover__content { padding: 0; }
    #tt-product-spec-hover-portal .tt-spec-hover__head {
        position: sticky;
        top: 0;
        z-index: 2;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 14px;
        padding: 13px 15px;
        border-bottom: 1px solid #e7ebf0;
        background: rgba(255,255,255,.98);
        backdrop-filter: blur(8px);
    }
    #tt-product-spec-hover-portal .tt-spec-hover__head > div { min-width: 0; }
    #tt-product-spec-hover-portal .tt-spec-hover__head strong {
        display: block;
        margin: 0 0 3px;
        color: #111827;
        font-size: 15px;
        line-height: 1.25;
    }
    #tt-product-spec-hover-portal .tt-spec-hover__head span {
        display: block;
        color: #667085;
        font-size: 11.5px;
        line-height: 1.35;
        overflow-wrap: anywhere;
    }
    #tt-product-spec-hover-portal .tt-spec-hover__head em {
        flex: 0 0 auto;
        padding: 4px 7px;
        border-radius: 6px;
        background: #f2f4f7;
        color: #475467;
        font-size: 10.5px;
        font-style: normal;
        font-weight: 700;
        white-space: nowrap;
    }
    #tt-product-spec-hover-portal .tt-spec-hover__table-wrap { padding: 8px 12px 12px; }
    #tt-product-spec-hover-portal .tt-spec-hover__table {
        width: 100%;
        margin: 0;
        border-collapse: collapse;
        table-layout: fixed;
        font-size: 11.5px;
        line-height: 1.45;
    }
    #tt-product-spec-hover-portal .tt-spec-hover__table th,
    #tt-product-spec-hover-portal .tt-spec-hover__table td {
        padding: 8px 9px;
        border-bottom: 1px solid #edf0f3;
        vertical-align: top;
        text-align: left;
        overflow-wrap: anywhere;
        word-break: normal;
    }
    #tt-product-spec-hover-portal .tt-spec-hover__table th {
        width: 38%;
        color: #344054;
        background: #f8fafc;
        font-weight: 750;
    }
    #tt-product-spec-hover-portal .tt-spec-hover__table td { color: #475467; }
    #tt-product-spec-hover-portal .tt-spec-hover__table tr:last-child th,
    #tt-product-spec-hover-portal .tt-spec-hover__table tr:last-child td { border-bottom: 0; }
    #tt-product-spec-hover-portal .tt-spec-hover__plain td { color: #344054; font-weight: 600; }
    #tt-product-spec-hover-portal .tt-spec-hover__blank td { height: 8px; padding: 0; border: 0; }

    /* Subtle desktop affordance only; no new visible label is inserted. */
    .product-small .box-image[data-tt-spec-hover-ready="1"],
    .products .product-small .box-image[data-tt-spec-hover-ready="1"],
    .tt-brand-product-card__media[data-tt-spec-hover-ready="1"],
    .tt-product-summary-highlights[data-tt-spec-hover-ready="1"] {
        cursor: help;
    }
}

/* Explicitly disabled on mobile/touch. */
@media (max-width: 849px), (hover: none), (pointer: coarse) {
    #tt-product-spec-hover-portal { display: none !important; }
}


@media (min-width: 850px) and (hover: hover) and (pointer: fine) {
    #tt-product-spec-hover-portal .tt-spec-hover__loading {
        padding: 18px 20px;
        color: #667085;
        font-size: 12px;
        font-weight: 700;
        text-align: center;
    }
}
