/* Comparix Pro v5 — Obsidian Design | Theme-Override Edition */

:root{--cx-font:'Plus Jakarta Sans',system-ui,sans-serif;--cx-primary:#6366f1;--cx-primary-lt:#818cf8;--cx-accent:#10b981;--cx-success:#22c55e;--cx-danger:#ef4444;--cx-warn:#f59e0b;--cx-dark:#0f172a;--cx-hero-bg:var(--cx-dark);--cx-text:var(--cx-dark);--cx-bg:#f8fafc;--cx-card:#fff;--cx-border:#e2e8f0;--cx-g900:#1e293b;--cx-g700:#334155;--cx-g500:#64748b;--cx-g400:#94a3b8;--cx-g300:#cbd5e1;--cx-g200:var(--cx-border);--cx-g100:#f1f5f9;--cx-g50:var(--cx-bg);--cx-white:var(--cx-card);--cx-r:14px;--cx-r-sm:10px;--cx-r-lg:20px;--cx-sh:0 1px 3px rgba(15,23,42,.06);--cx-sh-md:0 4px 12px rgba(15,23,42,.06);--cx-ease:.3s cubic-bezier(.4,0,.2,1);--cx-fs:14px}

/* ═══ RESET (scoped) ═══ */
article.cx-product,article.cx-product *,article.cx-product *::before,article.cx-product *::after{box-sizing:border-box!important;margin:0;padding:0}
article.cx-product{font-family:var(--cx-font)!important;color:var(--cx-text)!important;-webkit-font-smoothing:antialiased;max-width:100%!important;overflow-x:hidden!important;line-height:1.5!important;background:var(--cx-bg)!important;padding:0!important;font-size:var(--cx-fs)!important}
article.cx-product img{max-width:100%!important;height:auto!important;display:block!important;border:none!important;box-shadow:none!important}
article.cx-product a{color:inherit;text-decoration:none}
article.cx-product h1,article.cx-product h2,article.cx-product h3,article.cx-product h4{margin:0!important;padding:0!important}
article.cx-product ul{list-style:none!important;padding:0!important;margin:0!important}

/* ═══ SCROLL PROGRESS ═══ */
.cx-progress{position:fixed!important;top:0!important;left:0!important;height:3px!important;width:0;background:linear-gradient(90deg,var(--cx-primary),var(--cx-accent))!important;z-index:99999!important;border-radius:0 2px 2px 0!important}

/* ═══ BREADCRUMBS ═══ */
article.cx-product .cx-breadcrumbs{font-size:12px!important;color:rgba(255,255,255,.5)!important;margin-bottom:12px!important;padding:12px 0 0!important}
article.cx-product .cx-breadcrumbs a{color:rgba(255,255,255,.7)!important}
article.cx-product .cx-bc-sep{margin:0 6px!important;opacity:.4}

/* ═══ HERO ═══ */
article.cx-product .cx-hero{background:var(--cx-hero-bg)!important;color:#fff!important;padding:0 0 40px!important;position:relative!important;width:100vw!important;margin-left:calc(-50vw + 50%)!important}
article.cx-product .cx-hero-inner{max-width:720px!important;margin:0 auto!important;padding:0 16px!important;position:relative!important;z-index:1}
article.cx-product .cx-hero-layout{display:flex!important;flex-direction:column!important;gap:16px!important}

/* ═══ GALLERY ═══ */
article.cx-product .cx-gallery-wrap{position:relative!important;width:100%!important}
article.cx-product .cx-gallery{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;-webkit-overflow-scrolling:touch;border-radius:var(--cx-r-lg)!important;scrollbar-width:none!important;background:#141b2d!important}
article.cx-product .cx-gallery::-webkit-scrollbar{display:none!important}
article.cx-product .cx-gallery-slide{flex:0 0 100%!important;scroll-snap-align:start!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:20px!important;min-height:280px!important;max-height:340px!important;cursor:zoom-in!important;background:linear-gradient(145deg,#141b2d,#0a0f1a)!important}
article.cx-product .cx-gallery-slide img{max-height:280px!important;max-width:100%!important;object-fit:contain!important;width:auto!important;height:auto!important}
article.cx-product .cx-gallery-dots{display:flex!important;justify-content:center!important;gap:6px!important;margin-top:10px!important}
article.cx-product .cx-gdot{width:8px!important;height:8px!important;border-radius:50%!important;border:none!important;background:rgba(255,255,255,.25)!important;cursor:pointer!important;padding:0!important;transition:all var(--cx-ease)}
article.cx-product .cx-gdot.active{background:var(--cx-primary)!important;width:24px!important;border-radius:4px!important}

/* Quick Spec Badges */
article.cx-product .cx-quick-specs{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin-top:10px!important}
article.cx-product .cx-qbadge{display:inline-flex!important;align-items:center!important;gap:4px!important;background:rgba(255,255,255,.08)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12)!important;border-radius:100px!important;padding:5px 11px!important;font-size:11px!important;font-weight:600!important;color:rgba(255,255,255,.85)!important;white-space:nowrap!important}

/* ═══ HERO INFO ═══ */
article.cx-product .cx-hero-info{padding:0 4px!important}
article.cx-product .cx-type-badge{display:inline-flex!important;align-items:center!important;gap:5px!important;background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:100px!important;padding:4px 12px 4px 8px!important;font-size:12px!important;font-weight:600!important;color:var(--cx-g300)!important;margin-bottom:8px!important}
article.cx-product .cx-type-badge svg{width:14px!important;height:14px!important}
article.cx-product .cx-title{font-size:26px!important;font-weight:800!important;line-height:1.15!important;letter-spacing:-.02em!important;color:#fff!important;margin-bottom:4px!important;font-family:var(--cx-font)!important}
article.cx-product .cx-brand{font-size:13px!important;color:var(--cx-g400)!important;font-weight:500!important;margin-bottom:12px!important}
article.cx-product .cx-hero-meta{display:flex!important;align-items:center!important;gap:14px!important;margin-bottom:12px!important;flex-wrap:wrap!important}

/* Score Ring */
article.cx-product .cx-score-ring{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:56px!important;height:56px!important;border-radius:14px!important;font-weight:800!important;flex-shrink:0!important}
article.cx-product .cx-sc-excellent{background:linear-gradient(135deg,#059669,#10b981)!important}
article.cx-product .cx-sc-good{background:linear-gradient(135deg,#2563eb,#3b82f6)!important}
article.cx-product .cx-sc-average{background:linear-gradient(135deg,#d97706,#f59e0b)!important}
article.cx-product .cx-sc-poor{background:linear-gradient(135deg,#dc2626,#ef4444)!important}
article.cx-product .cx-score-num{font-size:20px!important;line-height:1!important;color:#fff!important}
article.cx-product .cx-score-lbl{font-size:7px!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.5px!important;opacity:.85;color:#fff!important}
article.cx-product .cx-price-now{font-size:22px!important;font-weight:800!important;color:#fff!important}
article.cx-product .cx-price-old{font-size:13px!important;color:var(--cx-g400)!important;text-decoration:line-through!important}
article.cx-product .cx-views{font-size:12px!important;color:var(--cx-g400)!important;display:flex!important;align-items:center!important;gap:4px!important}
article.cx-product .cx-tags{display:flex!important;flex-wrap:wrap!important;gap:5px!important}
article.cx-product .cx-tag{padding:3px 10px!important;border-radius:100px!important;font-size:10px!important;font-weight:600!important;background:rgba(99,102,241,.15)!important;color:var(--cx-primary-lt)!important;border:1px solid rgba(99,102,241,.2)!important}

/* ═══ BODY ═══ */
article.cx-product .cx-body{max-width:720px!important;margin:-24px auto 0!important;padding:0 10px 100px!important;position:relative!important;z-index:2!important}
article.cx-product .cx-section{background:var(--cx-card)!important;border-radius:var(--cx-r-lg)!important;padding:18px!important;margin-bottom:10px!important;box-shadow:var(--cx-sh)!important;animation:cxSlideUp .4s ease both!important}
article.cx-product .cx-sh{font-size:17px!important;font-weight:800!important;color:var(--cx-text)!important;margin-bottom:14px!important;letter-spacing:-.01em!important;font-family:var(--cx-font)!important}

/* ═══ AT A GLANCE ═══ */
article.cx-product .cx-glance-section{background:linear-gradient(135deg,#f0f1ff,#e8f4fd)!important;border:1px solid rgba(99,102,241,.1)!important}
article.cx-product .cx-glance-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important}
article.cx-product .cx-glance-pill{background:var(--cx-card)!important;border-radius:var(--cx-r-sm)!important;padding:10px 8px!important;text-align:center!important;box-shadow:var(--cx-sh)!important}
article.cx-product .cx-gicon{display:block!important;font-size:18px!important;margin-bottom:3px!important}
article.cx-product .cx-gval{display:block!important;font-size:13px!important;font-weight:700!important;color:var(--cx-text)!important;line-height:1.2!important}
article.cx-product .cx-glbl{display:block!important;font-size:9px!important;color:var(--cx-g500)!important;font-weight:500!important;margin-top:1px!important}

/* ═══ RATING OVERVIEW ═══ */
article.cx-product .cx-rating-section{background:linear-gradient(135deg,#fafafe,#f0f1ff)!important;border:1px solid rgba(99,102,241,.12)!important}
article.cx-product .cx-rating-head{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:4px!important}
article.cx-product .cx-rating-overall{display:flex!important;align-items:baseline!important;gap:2px!important;font-weight:800!important;padding:6px 14px!important;border-radius:var(--cx-r-sm)!important;color:#fff!important}
article.cx-product .cx-ro-num{font-size:22px!important}
article.cx-product .cx-ro-max{font-size:12px!important;opacity:.8}
article.cx-product .cx-rating-sub{font-size:11px!important;color:var(--cx-g500)!important;margin-bottom:14px!important}
article.cx-product .cx-rating-bars{display:flex!important;flex-direction:column!important;gap:10px!important}
article.cx-product .cx-rbar-label{display:flex!important;align-items:center!important;gap:6px!important;margin-bottom:4px!important}
article.cx-product .cx-rbar-icon{font-size:14px!important;flex-shrink:0!important}
article.cx-product .cx-rbar-name{font-size:13px!important;font-weight:600!important;color:var(--cx-text)!important;flex:1!important}
article.cx-product .cx-rbar-score{font-size:12px!important;font-weight:700!important;color:var(--cx-g500)!important}
article.cx-product .cx-rbar-track{height:6px!important;background:var(--cx-g200)!important;border-radius:3px!important;overflow:hidden!important}
article.cx-product .cx-rbar-fill{height:100%!important;border-radius:3px!important;transition:width 1s cubic-bezier(.4,0,.2,1)!important}

/* ═══ PROS & CONS ═══ */
article.cx-product .cx-pc-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-bottom:12px!important}
article.cx-product .cx-pc-card{border-radius:var(--cx-r-sm)!important;padding:14px!important}
article.cx-product .cx-pc-card h3{display:flex!important;align-items:center!important;gap:6px!important;font-size:14px!important;font-weight:700!important;margin-bottom:10px!important;color:var(--cx-text)!important}
article.cx-product .cx-pc-card li{position:relative!important;padding-left:14px!important;font-size:12px!important;line-height:1.5!important;color:var(--cx-g700)!important;margin-bottom:5px!important}
article.cx-product .cx-pc-card li::before{content:''!important;position:absolute!important;left:0!important;top:7px!important;width:5px!important;height:5px!important;border-radius:50%!important}
article.cx-product .cx-pc-pros{background:#f0fdf4!important;border:1px solid #bbf7d0!important}
article.cx-product .cx-pc-pros li::before{background:var(--cx-success)!important}
article.cx-product .cx-pc-cons{background:#fef2f2!important;border:1px solid #fecaca!important}
article.cx-product .cx-pc-cons li::before{background:var(--cx-danger)!important}
article.cx-product .cx-verdict{display:flex!important;gap:12px!important;background:linear-gradient(135deg,#fefce8,#fef9c3)!important;border:1px solid #fde68a!important;border-radius:var(--cx-r-sm)!important;padding:14px!important}
article.cx-product .cx-verdict-icon{font-size:22px!important;flex-shrink:0!important}
article.cx-product .cx-verdict strong{font-size:13px!important;font-weight:700!important;display:block!important;margin-bottom:2px!important;color:var(--cx-text)!important}
article.cx-product .cx-verdict p{font-size:13px!important;color:var(--cx-g700)!important;line-height:1.6!important}

/* ═══ SPECS ACCORDION ═══ */
article.cx-product .cx-specs{padding:10px 12px!important}
article.cx-product .cx-acc{border-bottom:1px solid var(--cx-g200)!important;overflow:hidden!important}
article.cx-product .cx-acc:last-of-type{border-bottom:none!important}
article.cx-product .cx-acc-head{width:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:13px 6px!important;border:none!important;background:none!important;cursor:pointer!important;font:700 14px/1.3 var(--cx-font)!important;color:var(--cx-text)!important;-webkit-tap-highlight-color:transparent!important;text-align:left!important}
article.cx-product .cx-acc-chevron{transition:transform var(--cx-ease)!important;color:var(--cx-g400)!important;flex-shrink:0!important;width:18px!important;height:18px!important}
article.cx-product .cx-acc.open .cx-acc-chevron{transform:rotate(180deg)!important;color:var(--cx-primary)!important}
article.cx-product .cx-acc-body{max-height:0!important;overflow:hidden!important;transition:max-height .35s cubic-bezier(.4,0,.2,1)!important}
article.cx-product .cx-acc.open .cx-acc-body{max-height:3000px!important;padding-bottom:6px!important}
article.cx-product .cx-spec-row{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:9px 6px!important;border-radius:8px!important;gap:12px!important}
article.cx-product .cx-spec-row:nth-child(odd){background:var(--cx-bg)!important}
article.cx-product .cx-spec-name{font-size:13px!important;color:var(--cx-g500)!important;font-weight:500!important;flex:1!important}
article.cx-product .cx-spec-val{font-size:13px!important;font-weight:600!important;color:var(--cx-text)!important;text-align:right!important;max-width:55%!important;word-break:break-word!important}
article.cx-product .cx-yes{color:var(--cx-success)!important;font-weight:600!important}
article.cx-product .cx-no{color:var(--cx-g400)!important}

/* ═══ DESCRIPTION ═══ */
article.cx-product .cx-prose{font-size:14px!important;line-height:1.75!important;color:var(--cx-g700)!important}
article.cx-product .cx-prose p{margin-bottom:12px!important}

/* ═══ OFFERS ═══ */
article.cx-product .cx-offers-list{display:flex!important;flex-direction:column!important;gap:8px!important}
article.cx-product .cx-offer{display:flex!important;align-items:center!important;gap:10px!important;padding:11px 12px!important;background:var(--cx-bg)!important;border:1px solid var(--cx-g200)!important;border-radius:var(--cx-r-sm)!important}
article.cx-product .cx-offer-name{font-weight:600!important;font-size:13px!important;flex:1!important}
article.cx-product .cx-offer-price{font-weight:700!important;color:var(--cx-primary)!important;font-size:13px!important}
article.cx-product .cx-offer-go{font-size:11px!important;font-weight:700!important;color:#fff!important;background:var(--cx-primary)!important;padding:6px 12px!important;border-radius:100px!important;white-space:nowrap!important}

/* ═══ SHARE ═══ */
article.cx-product .cx-share-bar{display:flex!important;align-items:center!important;gap:10px!important;padding:12px 0!important;margin-bottom:10px!important}
article.cx-product .cx-share-bar>span{font-size:13px!important;font-weight:600!important;color:var(--cx-g500)!important}
article.cx-product .cx-share-bar a,article.cx-product .cx-share-bar button{width:36px!important;height:36px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;border:1px solid var(--cx-g200)!important;background:var(--cx-card)!important;color:var(--cx-g700)!important;cursor:pointer!important;font-size:12px!important;font-weight:600!important;padding:0!important}

/* ═══ REVIEWS ═══ */
article.cx-product .cx-review{background:var(--cx-bg)!important;border-radius:var(--cx-r-sm)!important;padding:14px!important;margin-bottom:8px!important}
article.cx-product .cx-review-top{display:flex!important;align-items:center!important;gap:10px!important;margin-bottom:6px!important}
article.cx-product .cx-review-avatar{width:34px!important;height:34px!important;border-radius:50%!important;background:var(--cx-primary)!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:13px!important;font-weight:700!important;flex-shrink:0!important}
article.cx-product .cx-stars{color:var(--cx-warn)!important;font-size:13px!important;letter-spacing:1px!important}
article.cx-product .cx-review p,article.cx-product .cx-empty{font-size:13px!important;line-height:1.6!important;color:var(--cx-g700)!important}
article.cx-product .cx-empty{text-align:center!important;padding:16px!important;color:var(--cx-g400)!important}

/* ═══ RELATED ═══ */
article.cx-product .cx-related-scroll{display:flex!important;gap:10px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;-webkit-overflow-scrolling:touch;padding-bottom:8px!important;scrollbar-width:none!important}
article.cx-product .cx-related-scroll::-webkit-scrollbar{display:none!important}
article.cx-product .cx-rel-card{flex:0 0 140px!important;scroll-snap-align:start!important;background:var(--cx-bg)!important;border-radius:var(--cx-r-sm)!important;padding:10px!important;text-align:center!important}
article.cx-product .cx-rel-card img{width:100%!important;aspect-ratio:1/1!important;object-fit:contain!important;border-radius:8px!important;margin-bottom:6px!important;background:var(--cx-card)!important}
article.cx-product .cx-rel-noimg{width:100%!important;aspect-ratio:1/1!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:28px!important;background:var(--cx-g100)!important;border-radius:8px!important;margin-bottom:6px!important}
article.cx-product .cx-rel-card h4{font-size:12px!important;font-weight:700!important;color:var(--cx-text)!important;line-height:1.3!important;margin-bottom:4px!important}
article.cx-product .cx-rel-meta{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;font-size:11px!important;color:var(--cx-g500)!important}
article.cx-product .cx-mini-score{font-size:10px!important;font-weight:800!important;color:#fff!important;padding:2px 6px!important;border-radius:4px!important}

/* ═══ VIDEO ═══ */
article.cx-product .cx-video-wrap{position:relative!important;padding-bottom:56.25%!important;border-radius:var(--cx-r-sm)!important;overflow:hidden!important;margin-bottom:10px!important}
article.cx-product .cx-video-wrap iframe{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:none!important}
article.cx-product .cx-ad-zone{margin-bottom:10px!important;border-radius:var(--cx-r)!important;overflow:hidden!important}

/* ═══ STICKY CTA ═══ */
.cx-sticky-cta{position:fixed!important;bottom:-80px!important;left:0!important;right:0!important;background:var(--cx-card)!important;border-top:1px solid var(--cx-g200)!important;box-shadow:0 -4px 20px rgba(0,0,0,.08)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:10px 16px!important;z-index:9999!important;transition:bottom .4s cubic-bezier(.34,1.56,.64,1)!important;font-family:var(--cx-font)!important}
.cx-sticky-cta.visible{bottom:0!important}
.cx-sticky-cta .cx-sticky-info{flex:1!important;min-width:0!important}
.cx-sticky-cta .cx-sticky-info strong{display:block!important;font-size:13px!important;font-weight:700!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:var(--cx-text)!important}
.cx-sticky-cta .cx-sticky-info span{font-size:14px!important;font-weight:800!important;color:var(--cx-primary)!important}
.cx-sticky-cta .cx-sticky-actions{display:flex!important;gap:8px!important}
.cx-sticky-cta .cx-cta-btn{padding:10px 18px!important;border-radius:100px!important;font:700 13px/1 var(--cx-font)!important;cursor:pointer!important;border:none!important;white-space:nowrap!important}
.cx-sticky-cta .cx-cta-buy{background:var(--cx-primary)!important;color:#fff!important}
.cx-sticky-cta .cx-cta-compare{background:var(--cx-g100)!important;color:var(--cx-text)!important;border:1px solid var(--cx-g200)!important}

/* ═══ LIGHTBOX ═══ */
.cx-lb{position:fixed!important;inset:0!important;background:rgba(0,0,0,.95)!important;z-index:100000!important;display:flex!important;align-items:center!important;justify-content:center!important;opacity:0!important;pointer-events:none!important;transition:opacity .2s ease!important}
.cx-lb.open{opacity:1!important;pointer-events:auto!important}
.cx-lb img{max-width:92vw!important;max-height:85vh!important;object-fit:contain!important;border-radius:8px!important}
.cx-lb-x{position:absolute!important;top:16px!important;right:16px!important;width:42px!important;height:42px!important;border-radius:50%!important;border:none!important;background:rgba(255,255,255,.1)!important;color:#fff!important;font-size:26px!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:1!important}
.cx-lb-arr{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;width:46px!important;height:46px!important;border-radius:50%!important;border:none!important;background:rgba(255,255,255,.1)!important;color:#fff!important;font-size:28px!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important}
.cx-lb-prev{left:8px!important}.cx-lb-next{right:8px!important}
.cx-lb-count{position:absolute!important;bottom:20px!important;left:50%!important;transform:translateX(-50%)!important;color:rgba(255,255,255,.6)!important;font-size:13px!important}

/* ═══ ANIMATIONS ═══ */
@keyframes cxSlideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){article.cx-product .cx-section{animation:none!important}}

/* ═══ ARCHIVE/GRID ═══ */
.cx-app{max-width:1200px;margin:0 auto;padding:20px 16px;font-family:var(--cx-font)}
.cx-layout{display:flex;gap:20px}
.cx-has-sidebar{display:flex;gap:20px}
.cx-has-sidebar .cx-main-col{flex:1;min-width:0}
.cx-has-sidebar-left{flex-direction:row-reverse}
.cx-sidebar{width:260px;flex-shrink:0;position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto;scrollbar-width:thin}
.cx-sidebar-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.cx-sidebar-head h3{font-size:16px;font-weight:800}
.cx-btn-ghost{background:none;border:none;color:var(--cx-primary);font-size:12px;font-weight:600;cursor:pointer}
.cx-filter-group{margin-bottom:14px}
.cx-filter-group label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--cx-g500);margin-bottom:6px}
.cx-filter-group select,.cx-filter-group input[type=range]{width:100%;padding:8px 10px;border:1px solid var(--cx-g200);border-radius:8px;font-size:13px;font-family:var(--cx-font);background:var(--cx-card)}
.cx-filter-group select:focus{border-color:var(--cx-primary);outline:none}
.cx-dynamic-filters .cx-filter-group{padding-bottom:10px;border-bottom:1px solid var(--cx-g100)}
.cx-main{flex:1;min-width:0}
.cx-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.cx-search-box{flex:1;min-width:160px;position:relative}
.cx-search-box svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--cx-g400)}
.cx-search-box input{width:100%;padding:9px 10px 9px 34px;border:1px solid var(--cx-g200);border-radius:8px;font-size:13px;font-family:var(--cx-font)}
.cx-search-box input:focus{border-color:var(--cx-primary);outline:none}
.cx-sort{padding:9px 10px;border:1px solid var(--cx-g200);border-radius:8px;font-size:12px;font-family:var(--cx-font);background:var(--cx-card);cursor:pointer}
.cx-layout-toggle{display:flex;border:1px solid var(--cx-g200);border-radius:8px;overflow:hidden}
.cx-layout-btn{padding:8px 10px;border:none;background:var(--cx-card);cursor:pointer;display:flex;align-items:center;color:var(--cx-g400)}
.cx-layout-btn.active{background:var(--cx-primary);color:#fff}
.cx-mobile-filter-btn{display:none;padding:8px 14px;border:1px solid var(--cx-g200);border-radius:8px;background:var(--cx-card);font-size:12px;font-weight:600;cursor:pointer;align-items:center;gap:4px;font-family:var(--cx-font)}
.cx-result-count{font-size:12px;color:var(--cx-g500);margin-bottom:10px}
.cx-grid{display:grid;gap:14px;grid-template-columns:repeat(var(--cx-cols,3),1fr)}
.cx-grid[data-layout=list]{grid-template-columns:1fr}
.cx-grid[data-layout=list] .cx-card{display:flex}.cx-grid[data-layout=list] .cx-card-img{width:140px;flex-shrink:0;aspect-ratio:1/1}.cx-grid[data-layout=list] .cx-card-body{flex:1;display:flex;flex-direction:column;justify-content:center}
.cx-card{background:var(--cx-card);border:1px solid var(--cx-g200);border-radius:var(--cx-r);overflow:hidden;transition:all var(--cx-ease);position:relative}
.cx-card:hover{box-shadow:var(--cx-sh-md);transform:translateY(-2px)}
.cx-card-img{aspect-ratio:1/1;overflow:hidden;background:var(--cx-bg);position:relative}.cx-card-img img{width:100%;height:100%;object-fit:contain;padding:12px}
.cx-card-type{position:absolute;top:8px;left:8px;font-size:10px;font-weight:700;background:rgba(0,0,0,.6);color:#fff;padding:3px 8px;border-radius:100px;display:flex;align-items:center;gap:4px}
.cx-card-type svg{width:10px;height:10px}
.cx-type-chip svg,.cx-type-badge svg{width:14px;height:14px;flex-shrink:0}
.cx-card-compare,.cx-card-wish{position:absolute;width:28px;height:28px;border-radius:50%;border:1px solid var(--cx-g200);background:var(--cx-card);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;transition:all .15s}
.cx-card-compare{top:8px;right:8px}.cx-card-wish{top:8px;right:42px}
.cx-card-compare.active{background:var(--cx-primary);color:#fff;border-color:var(--cx-primary)}
.cx-card-wish.active{color:#ef4444;border-color:#fecaca}
.cx-card-body{padding:12px}
.cx-card-brand{font-size:10px;color:var(--cx-g500);font-weight:600;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:2px}
.cx-card-title{font-size:14px;font-weight:700;margin-bottom:6px;line-height:1.3}.cx-card-title a{color:var(--cx-text)}
.cx-card-specs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.cx-card-specs span{font-size:10px;padding:2px 6px;background:var(--cx-g100);border-radius:4px;color:var(--cx-g700)}
.cx-card-meta{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:12px;flex-wrap:wrap}
.cx-card-score{font-size:10px;font-weight:800;color:#fff;padding:2px 7px;border-radius:4px}
.cx-card-stars{color:var(--cx-warn);font-size:11px;letter-spacing:.5px}
.cx-card-views{color:var(--cx-g400);font-size:11px;display:flex;align-items:center;gap:3px}
.cx-card-foot{display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid var(--cx-g100)}
.cx-price{font-size:15px;font-weight:800;color:var(--cx-primary)}.cx-price-label{display:block;font-size:9px;color:var(--cx-g400);font-weight:400}
.cx-price del{color:var(--cx-g400);font-size:11px;font-weight:400}
.cx-price ins{text-decoration:none;color:var(--cx-primary)}
.cx-score{font-size:11px;font-weight:800;color:#fff;padding:3px 8px;border-radius:6px;line-height:1}
.cx-score-excellent{background:#10b981}.cx-score-good{background:#3b82f6}.cx-score-average{background:#f59e0b}.cx-score-poor{background:#ef4444}
.cx-views{font-size:11px;color:var(--cx-g400);display:flex;align-items:center;gap:3px}
.cx-stars{font-size:11px;color:#f59e0b;letter-spacing:.5px}.cx-stars small{color:var(--cx-g400);font-weight:400}
.cx-tags{display:flex;flex-wrap:wrap;gap:3px;margin-bottom:6px}
.cx-tag{font-size:9px;padding:2px 7px;border-radius:100px;background:rgba(99,102,241,.1);color:var(--cx-primary);font-weight:600}
.cx-sale-badge{position:absolute;top:8px;right:8px;font-size:9px;font-weight:800;background:#ef4444;color:#fff;padding:3px 8px;border-radius:100px}
.cx-card-compare,.cx-card-wish{position:absolute;width:28px;height:28px;border-radius:50%;border:1px solid var(--cx-g200);background:var(--cx-card);cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center;transition:all .15s;color:var(--cx-g400)}
.cx-card-compare{bottom:8px;right:8px}.cx-card-wish{bottom:8px;right:42px}
.cx-card-compare:hover,.cx-card-wish:hover{border-color:var(--cx-primary);color:var(--cx-primary)}
.cx-card-compare.active{background:var(--cx-primary);color:#fff;border-color:var(--cx-primary)}
.cx-card-wish.active{color:#ef4444;border-color:#ef4444}
.cx-empty{color:var(--cx-g400)}
.cx-card-offer{font-size:11px;font-weight:700;padding:6px 14px;border-radius:100px;background:var(--cx-accent);color:#fff;text-decoration:none}
.cx-pagination{display:flex;justify-content:center;gap:4px;margin-top:20px}
.cx-pagination button{padding:8px 14px;border:1px solid var(--cx-g200);border-radius:8px;background:var(--cx-card);cursor:pointer;font-size:12px;font-weight:600}
.cx-pagination button.active{background:var(--cx-primary);color:#fff;border-color:var(--cx-primary)}
.cx-pagination button:disabled{opacity:.3;cursor:not-allowed}
.cx-loadmore-btn{display:block;width:100%;max-width:320px;margin:20px auto 0;padding:12px 24px;background:#6366f1;color:#fff;border:none;border-radius:100px;font:700 14px/1 var(--cx-font);cursor:pointer;transition:all .2s;text-align:center}
.cx-loadmore-btn:hover{background:#4f46e5;transform:translateY(-1px);box-shadow:0 4px 12px rgba(99,102,241,.3)}
.cx-loadmore-btn:disabled{opacity:.6;cursor:wait;transform:none}
.cx-spinner{width:24px;height:24px;border:3px solid var(--cx-g200);border-top-color:var(--cx-primary);border-radius:50%;animation:cxSpin .7s linear infinite;margin:0 auto}
@keyframes cxSpin{to{transform:rotate(360deg)}}
.cx-loading{text-align:center;padding:30px;color:var(--cx-g400);font-size:13px}
.cx-sidebar-close{display:none}
.cx-filter-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:998}
.cx-filter-overlay.open{display:block}

/* ═══ COMPARE BAR ═══ */
.cx-bar{position:fixed;bottom:-80px;left:50%;transform:translateX(-50%);background:var(--cx-dark);color:#fff;border-radius:14px;padding:10px 18px;display:flex;align-items:center;gap:12px;z-index:9998;transition:bottom .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 8px 30px rgba(0,0,0,.3);font-family:var(--cx-font);max-width:90vw}
.cx-bar-show{bottom:16px}
.cx-bar-items{display:flex;gap:6px}.cx-bar-item{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:600}
.cx-bar-item img{width:24px;height:24px;border-radius:4px;object-fit:contain;background:#fff}
.cx-bar-actions{display:flex;gap:6px}
.cx-bar-actions a,.cx-bar-actions button{padding:7px 14px;border-radius:100px;font:600 12px/1 var(--cx-font);cursor:pointer;border:none;text-decoration:none;white-space:nowrap}
.cx-bar-compare-btn{background:var(--cx-primary);color:#fff}.cx-bar-clear-btn{background:rgba(255,255,255,.1);color:#fff}

/* Skeletons */
.cx-skel{height:280px;background:linear-gradient(90deg,var(--cx-g100) 25%,var(--cx-g50) 50%,var(--cx-g100) 75%);background-size:200% 100%;animation:cxShimmer 1.5s infinite;border-radius:var(--cx-r)}
@keyframes cxShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* Range filter */
.cx-range-filter input[type=range]{-webkit-appearance:none;width:100%;height:4px;background:var(--cx-g200);border-radius:4px;outline:none;margin:8px 0}
.cx-range-filter input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--cx-primary);cursor:pointer}
.cx-range-vals{display:flex;justify-content:space-between;font-size:11px;color:var(--cx-g500)}

/* Checkbox filter */
.cx-cb-filter label{display:flex;align-items:center;gap:6px;font-size:12px;padding:4px 0;cursor:pointer;color:var(--cx-g700)}
.cx-cb-filter input[type=checkbox]{accent-color:var(--cx-primary);width:14px;height:14px}
.cx-filter-cnt{font-size:10px;color:var(--cx-g400);margin-left:auto}

/* Compare bar */
.cx-compare,.cx-search-results{max-width:1200px;margin:0 auto;padding:30px 16px;font-family:var(--cx-font)}

/* ═══ MOBILE ═══ */
@media(max-width:768px){
.cx-has-sidebar{flex-direction:column}
.cx-has-sidebar .cx-sidebar{display:none}
.cx-sidebar{display:none;position:fixed;left:0;top:0;bottom:0;width:85%;max-width:300px;background:var(--cx-card);z-index:999;padding:20px;box-shadow:4px 0 24px rgba(0,0,0,.1);overflow-y:auto;max-height:100vh}
.cx-sidebar.open{display:block}
.cx-sidebar-close{display:block}
.cx-mobile-filter-btn{display:flex}
.cx-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px}
.cx-grid[data-layout=list]{grid-template-columns:1fr!important}
.cx-grid[data-layout=list] .cx-card-img{width:100px}
.cx-layout-toggle{display:none}
.cx-toolbar{gap:6px}
.cx-search-box{min-width:0;flex:1}
.cx-bar{flex-wrap:wrap;gap:8px;padding:8px 14px;border-radius:10px}
.cx-page-wrap,.cx-search-page,.cx-bp-body,.cx-bn,.cx-comp-wrap{padding-left:10px!important;padding-right:10px!important}
}
@media(max-width:480px){
.cx-grid{grid-template-columns:1fr!important}
.cx-card{display:flex}.cx-card-img{width:120px;flex-shrink:0;aspect-ratio:1/1}.cx-card-body{flex:1}
.cx-page-wrap,.cx-search-page,.cx-bp-body,.cx-bn,.cx-comp-wrap{padding-left:6px!important;padding-right:6px!important}
}

/* ═══ TABLET+ ═══ */
@media(min-width:640px){
article.cx-product .cx-hero-layout{flex-direction:row!important;align-items:center!important}
article.cx-product .cx-gallery-wrap{flex:0 0 45%!important;max-width:400px!important}
article.cx-product .cx-gallery-slide{min-height:340px!important}
article.cx-product .cx-hero-info{flex:1!important}
article.cx-product .cx-title{font-size:34px!important}
article.cx-product .cx-glance-grid{grid-template-columns:repeat(6,1fr)!important}
}
@media(min-width:1024px){
article.cx-product .cx-hero-inner{padding:0 40px!important}
article.cx-product .cx-body{max-width:800px!important}
}

/* Auto-badges (New, Popular, Top Rated, Deal) */
.cx-auto-badge{position:absolute!important;top:8px!important;left:8px!important;font-size:10px!important;font-weight:700!important;color:#fff!important;padding:3px 8px!important;border-radius:5px!important;z-index:2!important;letter-spacing:.3px!important;text-transform:uppercase!important}
