/* Widget "product_comparison" */
.karnak-comparison {
    --kcp-header-bg:    #1a1a2e;
    --kcp-header-color: #ffffff;
    --kcp-row-bg:       #ffffff;
    --kcp-row-alt-bg:   #f7f8fc;
    --kcp-border-color: #e0e4ef;
    --kcp-radius:       10px;
    --kcp-name-size:    1rem;
    --kcp-name-weight:  600;
    --kcp-label-color:  #444;
    --kcp-label-size:   0.9rem;
    --kcp-value-color:  #222;
    --kcp-value-size:   0.9rem;
    overflow-x:         auto;
}
.karnak-cmp-table {
    width:           100%;
    border-collapse: collapse;
    border-radius:   var(--kcp-radius);
    overflow:        hidden;
    border:          1px solid var(--kcp-border-color);
}
.karnak-cmp-table thead tr {
    background: var(--kcp-header-bg);
    color:      var(--kcp-header-color);
}
.karnak-cmp-table thead th {
    padding:    16px 12px;
    text-align: center;
    font-weight: var(--kcp-name-weight);
    font-size:  var(--kcp-name-size);
    border-right: 1px solid rgba(255,255,255,.1);
}
.karnak-cmp-table thead th:last-child { border-right: none; }
.karnak-cmp-feature-col {
    text-align: left !important;
    min-width:  140px;
}
.karnak-cmp-img {
    display:       block;
    margin:        0 auto 8px;
    width:         64px;
    height:        64px;
    object-fit:    cover;
    border-radius: 6px;
}
.karnak-cmp-name {
    font-size:   var(--kcp-name-size);
    font-weight: var(--kcp-name-weight);
    color:       var(--kcp-header-color);
    margin-bottom: 4px;
}
.karnak-cmp-price {
    font-size:   0.9em;
    opacity:     .8;
    color:       var(--kcp-header-color);
}
.karnak-cmp-row {
    background: var(--kcp-row-bg);
}
.karnak-cmp-alt {
    background: var(--kcp-row-alt-bg);
}
.karnak-cmp-row td {
    padding:      11px 14px;
    border-top:   1px solid var(--kcp-border-color);
    border-right: 1px solid var(--kcp-border-color);
    text-align:   center;
}
.karnak-cmp-row td:last-child { border-right: none; }
.karnak-cmp-label {
    text-align:  left !important;
    color:       var(--kcp-label-color) !important;
    font-size:   var(--kcp-label-size) !important;
    font-weight: 500;
}
.karnak-cmp-value {
    color:     var(--kcp-value-color);
    font-size: var(--kcp-value-size);
}

/* ── Layout: precio al pie ───────────────────────────────────────────── */
.karnak-cmp--price_bottom .karnak-cmp-price-row td {
    border-top: 2px solid var(--kcp-border-color);
}
.karnak-cmp-price-cell {
    vertical-align: middle;
}
.karnak-cmp-regular-price {
    font-size:       0.8em;
    text-decoration: line-through;
    opacity:         .55;
    color:           var(--kcp-value-color);
    margin-bottom:   2px;
}
.karnak-cmp-sale-price {
    font-size:   1.25em;
    font-weight: 700;
    color:       var(--kcp-value-color);
}

/* ── Layout: destacado ───────────────────────────────────────────────── */
.karnak-cmp-featured-col {
    background:  rgba(36,197,4,.08) !important;
    border-left: 2px solid rgba(36,197,4,.5) !important;
    border-right: 2px solid rgba(36,197,4,.5) !important;
    position:    relative;
}
.karnak-cmp-featured-badge {
    display:        inline-block;
    background:     #24c504;
    color:          #111;
    font-size:      10px;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: .5px;
    padding:        3px 10px;
    border-radius:  20px;
    margin-bottom:  8px;
}
.karnak-cmp-featured-cell {
    background:   rgba(36,197,4,.05) !important;
    border-left:  2px solid rgba(36,197,4,.3) !important;
    border-right: 2px solid rgba(36,197,4,.3) !important;
    font-weight:  600;
}
