/* =====================================================
   WC Product Compare — light + dark (body.dark) styles
   Palette matched to theme: #fd5000 / #f97316 accents,
   #0b1424 / #1f3f64 dark blues, #F3F4F6 hover grey
   ===================================================== */

/* ---------------- Compare button ---------------- */
.wcpc-compare-btn{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 16px;
    font-size:14px;
    font-weight:500;
    color:#fff;
    background:#0A1F3D;
    border:1px solid #d9e2ee;
    border-radius:5px;
    text-decoration:none;
    cursor:pointer;
    transition:all .3s ease;
}
.wcpc-compare-btn svg{
    stroke:currentColor;
    fill:none;
    transition:stroke .3s ease;
}
.wcpc-compare-btn:hover{
    color:#fd5000;
    border-color:#f97316;
    background:#fff;
    transform:translateY(-2px);
    box-shadow:0 4px 6px -1px rgba(0,0,0,.1),
               0 2px 4px -2px rgba(0,0,0,.1);
}
.wcpc-compare-btn.wcpc-active{
    color:#fff;
    background:#fd5000;
    border-color:#fd5000;
}
.wcpc-compare-btn.wcpc-active:hover{
    background:#f97316;
    color:#fff;
}

/* ---------------- Floating bar ---------------- */
#wcpc-bar{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:9999;
    background:#fff;
    border-top:1px solid #d9e2ee;
    box-shadow:0 -10px 25px -5px rgba(15,23,42,.10);
    transform:translateY(110%);
    transition:transform .3s ease;
}
#wcpc-bar.wcpc-visible{
    transform:translateY(0);
}
.wcpc-bar-inner{
    max-width:1200px;
    margin:0 auto;
    padding:12px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    flex-wrap:wrap;
}
.wcpc-bar-items{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}
.wcpc-bar-item{
    position:relative;
    display:flex;
    align-items:center;
    gap:8px;
    padding:6px 10px;
    background:#0b1424 !important;
    border:1px solid #d9e2ee;
    border-radius:5px;
}
.wcpc-bar-item img{
    width:40px !important;
    height:40px !important;
    object-fit:cover;
    border-radius:4px;
}
.wcpc-bar-item-title{
    font-size:13px;
    font-weight:500;
    color:#fff !important;
    max-width:140px;
}
.wcpc-bar-remove{
    position:absolute;
    top:-5px !important;
    right:-8px;
    width:20px;
    height:20px;
    line-height:1;
    padding:0px 5px !important;
    font-size:13px;
    color:#fff !important;
    background:#0b1424 !important;
    border:none;
    border-radius:50%;
    cursor:pointer;
    transition:background .3s ease;
}
.wcpc-bar-remove:hover{
    background:#fd5000;
}
.wcpc-bar-actions{
    display:flex;
    align-items:center;
    gap:16px;
}
.wcpc-bar-count{
    font-size:13px;
    color:#1f3f64;
}
.wcpc-bar-compare-btn{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:10px 24px;
    font-size:14px;
    font-weight:600;
    color:#fff !important;
    background:#fd5000;
    border-radius:10px;
    text-decoration:none;
    transition:all .3s ease;
}
.wcpc-bar-compare-btn .wcpc-arrow{
    display:inline-block;
    transition:transform .3s ease;
}
.wcpc-bar-compare-btn:hover{
    transform:translateY(-2px);
    background:#1d3557;
    box-shadow:0 4px 6px -1px rgba(0,0,0,.1),
               0 2px 4px -2px rgba(0,0,0,.1);
}
.wcpc-bar-compare-btn:hover .wcpc-arrow{
    transform:translateX(4px);
}
.wcpc-bar-clear{
    padding:0;
    font-size:13px;
    color:#1f3f64 !important;
    background:none !important;
    border:none !important;
    text-decoration:underline;
    cursor:pointer;
    transition:color .3s ease;
}
.wcpc-bar-clear:hover{
    color:#fd5000 !important;
}

/* ---------------- Comparison table ---------------- */
.wcpc-table-wrap{
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
}
.wcpc-table{
    width:100%;
    border-collapse:collapse;
    border:1px solid #d9e2ee;
    border-radius:5px;
    background:#fff;
}
.wcpc-table th,
.wcpc-table td{
    padding:16px 20px;
    text-align:center;
    vertical-align:middle;
    border:1px solid #d9e2ee;
    font-size:14px;
    color:#0b1424;
    background:#fff !important; /* neutralize theme odd-row striping */
    min-width:180px;
}
.wcpc-table th{
    text-align:left;
    font-weight:600;
    color:#1f3f64;
    background:#F3F4F6 !important;
    min-width:140px;
    position:relative;
}
.wcpc-table th::after{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    translate:0 -50%;
    width:2px;
    height:40%;
    background:#f97316;
    border-radius:10px;
}
.wcpc-row-product td{
    position:relative;
    padding-top:28px;
}
.wcpc-table-image img{
    width:140px;
    height:auto;
    margin:0 auto 12px;
    border-radius:5px;
    display:block;
    transition:transform .2s ease;
}
.wcpc-row-product td:hover .wcpc-table-image img{
    transform:translateY(-4px);
}
.wcpc-table-title{
    display:block;
    font-size:15px;
    font-weight:600;
    color:#0b1424;
    text-decoration:none;
    transition:color .3s ease;
}
.wcpc-table-title:hover{
    color:#fd5000;
}
.wcpc-table-remove{
    position:absolute;
    top:8px;
    right:8px;
    width:24px;
    height:24px;
    line-height:1;
    padding:0;
    font-size:15px;
    color:#1f3f64;
    background:#F3F4F6;
    border:1px solid #d9e2ee;
    border-radius:50%;
    cursor:pointer;
    transition:all .3s ease;
}
.wcpc-table-remove:hover{
    color:#fff;
    background:#fd5000;
    border-color:#fd5000;
}
.wcpc-price{
    font-size:16px;
    font-weight:600;
}
.wcpc-price .woocommerce-Price-amount{
    color:#fd5000;
}
.wcpc-stock{
    display:inline-block;
    padding:4px 12px;
    font-size:12px;
    font-weight:600;
    border-radius:100px;
}
.wcpc-in-stock{
    color:#15803d;
    background:#dcfce7;
}
.wcpc-out-stock{
    color:#b91c1c;
    background:#fee2e2;
}
.wcpc-desc{
    font-size:13px;
    line-height:1.6;
    color:#1f3f64;
}
.wcpc-muted{
    color:#ABAEB4;
}
.wcpc-add-to-cart{
    display:inline-block;
    padding:10px 24px !important;
    font-size:14px !important;
    font-weight:600 !important;
    color:#fff !important;
    background:#fd5000 !important;
    border:none !important;
    border-radius:10px !important;
    text-decoration:none !important;
    transition:all .3s ease !important;
}
.wcpc-add-to-cart:hover{
    transform:translateY(-2px);
    background:#1d3557 !important;
    box-shadow:0 4px 6px -1px rgba(0,0,0,.1),
               0 2px 4px -2px rgba(0,0,0,.1);
}
.wcpc-table .star-rating{
    margin:0 auto;
    color:#f97316;
}

/* ---------------- Empty state ---------------- */
.wcpc-empty{
    text-align:center;
    padding:80px 20px;
    color:#1f3f64;
}
.wcpc-empty svg{
    stroke:#ABAEB4;
    margin-bottom:16px;
}
.wcpc-empty h3{
    color:#0b1424;
    margin-bottom:8px;
}
.wcpc-empty p{
    max-width:420px;
    margin:0 auto 24px;
}
.wcpc-empty-btn{
    display:inline-block;
    padding:12px 28px;
    font-size:14px;
    font-weight:600;
    color:#fff !important;
    background:#fd5000;
    border-radius:10px;
    text-decoration:none;
    transition:all .3s ease;
}
.wcpc-empty-btn:hover{
    transform:translateY(-2px);
    background:#1d3557;
    box-shadow:0 4px 6px -1px rgba(0,0,0,.1),
               0 2px 4px -2px rgba(0,0,0,.1);
}

/* ---------------- Toast ---------------- */
.wcpc-toast{
    position:fixed;
    bottom:100px;
    left:50%;
    translate:-50% 0;
    z-index:10000;
    padding:12px 24px;
    font-size:14px;
    color:#fff;
    background:#0b1424;
    border-radius:5px;
    box-shadow:0 20px 25px -5px rgba(15,23,42,.10);
    opacity:0;
    transition:opacity .3s ease;
    pointer-events:none;
}
.wcpc-toast.wcpc-toast-visible{
    opacity:1;
}

/* =====================================================
   DARK MODE  (body.dark)
   ===================================================== */
body.dark .wcpc-compare-btn{
    color:#ffffffb3;
    background:#1A2D44;
    border-color:#ffffff1a;
}
body.dark .wcpc-compare-btn:hover{
    color:#fd5000;
    background:#1A2D44;
    border-color:#fd5000;
}
body.dark .wcpc-compare-btn.wcpc-active{
    color:#fff;
    background:#fd5000;
    border-color:#fd5000;
}

body.dark #wcpc-bar{
    background:#0A1B2E;
    border-top-color:#ffffff1a;
    box-shadow:0 -10px 25px -5px rgba(0,0,0,.4);
}
body.dark .wcpc-bar-item{
    background:#1A2D44;
    border-color:#ffffff1a;
}
body.dark .wcpc-bar-item-title{
    color:#fff;
}
body.dark .wcpc-bar-remove{
    background:#1F3F64;
}
body.dark .wcpc-bar-remove:hover{
    background:#fd5000;
}
body.dark .wcpc-bar-count{
    color:#ffffffb3;
}
body.dark .wcpc-bar-compare-btn{
    background:#fd5000;
}
body.dark .wcpc-bar-compare-btn:hover{
    background:#1F3F64;
}
body.dark .wcpc-bar-clear{
    color:#fff !important;
}
body.dark .wcpc-bar-clear:hover{
    color:#fd5000 !important;
}

body.dark .wcpc-table{
    background:#0e223a;
    border-color:#ffffff1a;
}
body.dark .wcpc-table th,
body.dark .wcpc-table td{
    color:#ffffffb3;
    border-color:#ffffff1a;
    background:#0e223a !important;
}
body.dark .wcpc-table th{
    color:#fff;
    background:#1A2D44 !important;
}
body.dark .wcpc-table-title{
    color:#fff;
}
body.dark .wcpc-table-title:hover{
    color:#fd5000;
}
body.dark .wcpc-table-remove{
    color:#ffffffb3;
    background:#1A2D44;
    border-color:#ffffff1a;
}
body.dark .wcpc-table-remove:hover{
    color:#fff;
    background:#fd5000;
    border-color:#fd5000;
}
body.dark .wcpc-price .woocommerce-Price-amount{
    color:#fd5000;
}
body.dark .wcpc-desc{
    color:#ffffffb3;
}
body.dark .wcpc-muted{
    color:#ffffff4d;
}
body.dark .wcpc-in-stock{
    color:#4ade80;
    background:#14532d66;
}
body.dark .wcpc-out-stock{
    color:#f87171;
    background:#7f1d1d66;
}
body.dark .wcpc-add-to-cart:hover{
    background:#1F3F64 !important;
}

body.dark .wcpc-empty{
    color:#ffffffb3;
}
body.dark .wcpc-empty h3{
    color:#fff;
}
body.dark .wcpc-empty svg{
    stroke:#ffffff4d;
}
body.dark .wcpc-empty-btn:hover{
    background:#1F3F64;
}

body.dark .wcpc-toast{
    background:#1A2D44;
    border:1px solid #ffffff1a;
}

/* ---------------- Responsive ---------------- */
@media (max-width: 767px){
    .wcpc-bar-inner{
        flex-direction:column;
        align-items:stretch;
    }
    .wcpc-bar-actions{
        justify-content:space-between;
    }
    .wcpc-bar-item-title{
        display:none;
    }
    .wcpc-table th,
    .wcpc-table td{
        padding:12px;
        min-width:140px;
    }
    .wcpc-table-image img{
        width:100px;
    }
}
