/* MeubleTV Comparateur — styles du shortcode comparateur, tableau d'offres et alertes.
   Charte graphique partagée : bleu confiance + vert économie (aligné sur le thème). */
:root{
	--mtv-blue:#1E88C7; --mtv-blue-dark:#1565A0; --mtv-blue-tint:#E8F4FB; --mtv-blue-tint2:#F4FAFE;
	--mtv-green:#23A56B; --mtv-green-dark:#1C8C5E; --mtv-green-tint:#E7F6EE;
	--mtv-ink:#16232E; --mtv-slate:#5C6B78; --mtv-line:#E1E8EE; --mtv-bg-soft:#F7FAFC;
	--mtv-red:#D24B4B;
	--mtv-radius:14px; --mtv-shadow:0 6px 22px rgba(20,60,90,.10); --mtv-shadow-sm:0 2px 8px rgba(20,60,90,.07);
}

/* Accessibilité : texte réservé aux lecteurs d'écran (pastilles couleur). */
.mtv-compare .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}

/* ----- Layout comparateur ----- */
.mtv-compare{display:grid;grid-template-columns:270px 1fr;gap:30px;margin:24px 0;color:var(--mtv-ink)}
.mtv-compare__filters{background:#fff;border:1px solid var(--mtv-line);border-radius:var(--mtv-radius);padding:16px;align-self:start;position:sticky;top:96px;box-shadow:var(--mtv-shadow-sm)}
.mtv-compare__filters-title{margin:0 0 6px;font-size:1.05rem;font-weight:800;color:var(--mtv-ink)}

/* Tags de filtres actifs */
.mtv-applied{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 4px;min-height:0}
.mtv-applied:empty{display:none}
.mtv-tagf{display:inline-flex;align-items:center;gap:6px;background:var(--mtv-blue-tint);color:var(--mtv-blue-dark);border-radius:20px;padding:4px 12px;font-size:.8rem;font-weight:600}
.mtv-tagf__x{cursor:pointer;font-weight:800;line-height:1;border:0;background:transparent;color:var(--mtv-blue-dark);padding:0;font-size:.95rem}
.mtv-tagf__x:hover{color:var(--mtv-blue)}

/* Groupes de filtres */
.mtv-filter-group{border-top:1px solid var(--mtv-line);padding:13px 0}
.mtv-filter-group:first-of-type{border-top:0}
.mtv-filter-group__title{margin:0 0 9px;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--mtv-slate)}
.mtv-filter-group__list{list-style:none;margin:0;padding:0;max-height:190px;overflow:auto}
.mtv-filter-group__list li{margin:0}
.mtv-filter-group__list label{display:flex;align-items:center;gap:8px;font-size:.87rem;padding:3px 0;cursor:pointer}
.mtv-filter-group__list label input[type="checkbox"]{accent-color:var(--mtv-blue);width:15px;height:15px;flex-shrink:0}
.mtv-filter__count{margin-left:auto;color:var(--mtv-slate);font-size:.78rem}

/* Nuancier de couleurs (pastilles) */
.mtv-filter-group--color .mtv-filter-group__list{display:flex;flex-wrap:wrap;gap:8px;max-height:none;overflow:visible}
.mtv-swatches{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.mtv-swatch{position:relative;display:inline-block}
.mtv-swatch input.mtv-filter{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.mtv-swatch__dot{display:block;width:26px;height:26px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--mtv-line);cursor:pointer;transition:box-shadow .15s ease}
.mtv-swatch__dot:hover{box-shadow:0 0 0 2px var(--mtv-blue)}
.mtv-swatch input.mtv-filter:checked + .mtv-swatch__dot{box-shadow:0 0 0 2px var(--mtv-blue),0 0 0 4px var(--mtv-blue-tint)}
.mtv-swatch input.mtv-filter:focus-visible + .mtv-swatch__dot{box-shadow:0 0 0 2px var(--mtv-blue)}

/* Chips de tailles */
.mtv-filter-group--size .mtv-filter-group__list{display:flex;flex-wrap:wrap;gap:6px;max-height:none;overflow:visible}
.mtv-chips{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.mtv-chip{position:relative;display:inline-block}
.mtv-chip input.mtv-filter{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.mtv-chip__label{display:block;border:1px solid var(--mtv-line);border-radius:8px;padding:5px 10px;font-size:.8rem;cursor:pointer;color:var(--mtv-ink);transition:.15s ease}
.mtv-chip__label:hover{background:var(--mtv-blue-tint);border-color:var(--mtv-blue);color:var(--mtv-blue-dark)}
.mtv-chip input.mtv-filter:checked + .mtv-chip__label{background:var(--mtv-blue-tint);border-color:var(--mtv-blue);color:var(--mtv-blue-dark);font-weight:600}
.mtv-chip input.mtv-filter:focus-visible + .mtv-chip__label{border-color:var(--mtv-blue)}

/* Budget */
.mtv-compare__price{border-top:1px solid var(--mtv-line);padding:13px 0}
.mtv-compare__price label{display:block;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--mtv-slate);margin-bottom:7px}
.mtv-compare__price input{width:100%;padding:9px 11px;border:1px solid var(--mtv-line);border-radius:9px;font-size:.9rem}
.mtv-compare__price input:focus{outline:none;border-color:var(--mtv-blue);box-shadow:0 0 0 3px var(--mtv-blue-tint)}

.mtv-compare__reset{margin-top:14px;width:100%;justify-content:center}

/* ----- Toolbar ----- */
.mtv-compare__toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;flex-wrap:wrap;gap:12px}
.mtv-compare__count{font-weight:700;color:var(--mtv-ink)}
.mtv-compare__sort{font-size:.9rem;color:var(--mtv-slate)}
.mtv-compare__sort select{padding:9px 11px;border:1px solid var(--mtv-line);border-radius:9px;margin-left:8px;background:#fff;color:var(--mtv-ink);cursor:pointer}
.mtv-compare__sort select:focus{outline:none;border-color:var(--mtv-blue)}

.mtv-compare__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;min-height:120px}
.mtv-compare__grid.is-loading{opacity:.5}
.mtv-compare__empty{grid-column:1/-1;text-align:center;color:var(--mtv-slate);padding:40px 0}

/* ----- Card produit ----- */
.mtv-card{background:#fff;border:1px solid var(--mtv-line);border-radius:var(--mtv-radius);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--mtv-shadow-sm);transition:transform .15s ease,box-shadow .15s ease;position:relative}
.mtv-card:hover{transform:translateY(-3px);box-shadow:var(--mtv-shadow)}
.mtv-card__media{display:block;aspect-ratio:4/3;background:linear-gradient(135deg,var(--mtv-blue-tint),#dcebf6);display:flex;align-items:center;justify-content:center;color:#9cc2dd}
.mtv-card__media img{width:100%;height:100%;object-fit:cover}
.mtv-card__ph{font-size:2.6rem;opacity:.7}
.mtv-card__body{padding:13px 15px 16px;display:flex;flex-direction:column;gap:7px;flex:1}
.mtv-card__title{margin:0;font-size:1rem;line-height:1.3}
.mtv-card__title a{color:var(--mtv-ink);text-decoration:none}
.mtv-card__title a:hover{color:var(--mtv-blue)}
.mtv-card__rating{font-size:.85rem;color:#E6B23E}
.mtv-star{color:#D9DEE4}.mtv-star.is-on{color:#E6B23E}
.mtv-card__rating em{color:var(--mtv-slate);font-size:.8rem;font-style:normal;margin-left:2px}
.mtv-card__price{margin-top:auto;font-size:1.05rem}
.mtv-card__from{font-size:.74rem;color:var(--mtv-slate)}
.mtv-card__price strong{font-size:1.25rem;font-weight:800;color:var(--mtv-green-dark)}
.mtv-card__soon{font-size:.85rem;color:var(--mtv-slate)}
.mtv-card__offers{display:inline-block;font-size:.76rem;background:var(--mtv-blue-tint);color:var(--mtv-blue-dark);padding:2px 8px;border-radius:20px;margin-left:4px}
.mtv-card__cta{margin-top:8px;text-align:center}

/* ----- Boutons ----- */
.mtv-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border-radius:11px;font-weight:700;font-size:.92rem;text-decoration:none;cursor:pointer;border:0;transition:.15s ease}
.mtv-btn--buy{background:var(--mtv-blue);color:#fff}
.mtv-btn--buy:hover{background:var(--mtv-blue-dark);color:#fff}
.mtv-btn--green{background:var(--mtv-green);color:#fff}
.mtv-btn--green:hover{background:var(--mtv-green-dark);color:#fff}
.mtv-btn--ghost{background:#fff;border:1.5px solid var(--mtv-line);color:var(--mtv-blue-dark)}
.mtv-btn--ghost:hover{border-color:var(--mtv-blue);color:var(--mtv-blue-dark)}
.mtv-btn--sm{padding:8px 13px;font-size:.84rem;border-radius:9px}

/* ----- Tableau d'offres ----- */
.mtv-offers{margin:26px 0}
.mtv-offers__title{font-size:1.25rem;color:var(--mtv-ink);margin:0 0 12px}
.mtv-offers__table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--mtv-line);border-radius:var(--mtv-radius);overflow:hidden}
.mtv-offers__table th{background:var(--mtv-blue-tint2);color:var(--mtv-blue-dark);text-align:left;padding:12px 14px;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}
.mtv-offers__table td{padding:13px 14px;border-top:1px solid var(--mtv-line);font-size:.92rem;vertical-align:middle}
.mtv-offers__row--best{background:var(--mtv-green-tint)}
.mtv-offers__logo{height:22px;vertical-align:middle}
.mtv-offers__merchant-name{font-weight:600}
.mtv-badge{display:inline-flex;align-items:center;font-size:.7rem;font-weight:800;padding:3px 9px;border-radius:20px;text-transform:uppercase;letter-spacing:.03em}
.mtv-badge--best{background:var(--mtv-green);color:#fff;margin-left:6px}
.mtv-offers__stock.is-in{color:var(--mtv-green-dark);font-weight:600}
.mtv-offers__stock.is-out{color:var(--mtv-red);font-weight:600}
.mtv-offers__price{font-weight:800;color:var(--mtv-ink);font-size:1.05rem;white-space:nowrap}
.mtv-offers__row--best .mtv-offers__price{color:var(--mtv-green-dark)}
.mtv-offers__disclaimer{font-size:.78rem;color:var(--mtv-slate);margin-top:8px}
.mtv-no-offers{color:var(--mtv-slate);font-style:italic}

/* ----- Alerte prix ----- */
.mtv-alert{background:#fff;border:1px solid var(--mtv-line);border-radius:var(--mtv-radius);padding:20px 22px;margin:22px 0;box-shadow:var(--mtv-shadow-sm)}
.mtv-alert__title{margin:0 0 10px;font-size:1.1rem;font-weight:800;color:var(--mtv-ink)}
.mtv-alert__current{margin:0 0 14px;color:var(--mtv-slate);font-size:.9rem}
.mtv-alert__current strong{color:var(--mtv-green-dark);font-size:1.05rem}
.mtv-alert__notice{padding:9px 13px;border-radius:9px;font-size:.88rem;margin:0 0 14px}
.mtv-alert__notice.is-ok{background:var(--mtv-green-tint);color:var(--mtv-green-dark)}
.mtv-alert__notice.is-err{background:#fbeae8;color:var(--mtv-red)}

/* Mini-graphe historique : bloc propre, sans chevauchement */
.mtv-alert__history{margin:0 0 16px;padding:14px;background:var(--mtv-bg-soft);border:1px solid var(--mtv-line);border-radius:11px}
.mtv-alert__history-label{display:block;margin:0 0 8px;font-size:.82rem;font-weight:600;color:var(--mtv-ink)}
.mtv-spark{width:100%;height:90px;display:block}
.mtv-alert__history-range{display:block;margin-top:8px;font-size:.78rem;color:var(--mtv-slate)}

.mtv-alert__intro{margin:0 0 10px;color:var(--mtv-slate);font-size:.9rem}
.mtv-alert__form{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 8px}
.mtv-alert__form input{flex:1;min-width:140px;padding:10px 12px;border:1px solid var(--mtv-line);border-radius:9px;font-size:.9rem}
.mtv-alert__form input:focus{outline:none;border-color:var(--mtv-blue);box-shadow:0 0 0 3px var(--mtv-blue-tint)}
.mtv-alert__legal{font-size:.75rem;color:var(--mtv-slate);margin:0}

/* ----- Pagination ----- */
.mtv-compare__pager{display:flex;gap:6px;justify-content:center;margin-top:30px;flex-wrap:wrap}
.mtv-page{min-width:38px;padding:8px;border:1px solid var(--mtv-line);background:#fff;border-radius:9px;cursor:pointer;font-size:.9rem;color:var(--mtv-ink);transition:.15s ease}
.mtv-page:hover{border-color:var(--mtv-blue);color:var(--mtv-blue-dark)}
.mtv-page.is-current{background:var(--mtv-blue);color:#fff;border-color:var(--mtv-blue)}

/* ----- Responsive ----- */
@media (max-width:900px){
	.mtv-compare{grid-template-columns:1fr}
	.mtv-compare__filters{position:static}
	.mtv-compare__grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
	.mtv-compare__grid{grid-template-columns:1fr}
	.mtv-offers__table{display:block;overflow-x:auto;white-space:nowrap}
}

/* ===== CHARTE NOUVELLE GENERATION — mode sombre + or (#FFB000) ===== */
.mtv-compare{color:#D7E0EA}
.mtv-compare__filters{background:#12243D !important;border:1px solid rgba(255,255,255,.10) !important;box-shadow:0 8px 26px rgba(0,0,0,.35)}
.mtv-compare__filters-title{color:#fff}
.mtv-filter-group{border-top-color:rgba(255,255,255,.10) !important}
.mtv-filter-group__title{color:#AEB9C7}
.mtv-filter-group__list label{color:#D7E0EA}
.mtv-filter-group__list label input[type=checkbox]{accent-color:#FFB000}
.mtv-filter__count{color:#7e8ea0}
.mtv-applied,.mtv-tagf{background:rgba(255,176,0,.15) !important;color:#FFC23D !important}
.mtv-chip__label{border-color:rgba(255,255,255,.16);color:#D7E0EA}
.mtv-chip input.mtv-filter:checked + .mtv-chip__label,.mtv-chip__label:hover{background:rgba(255,176,0,.18);border-color:#FFB000;color:#FFC23D}
.mtv-swatch__dot{box-shadow:0 0 0 1px rgba(255,255,255,.2)}
.mtv-swatch input.mtv-filter:checked + .mtv-swatch__dot{box-shadow:0 0 0 2px #FFB000,0 0 0 4px rgba(255,176,0,.25)}
.mtv-compare__price input,.mtv-filter-max{background:#0d2138 !important;color:#fff !important;border-color:rgba(255,255,255,.14) !important}
.mtv-compare__price label{color:#AEB9C7}
.mtv-btn--ghost,.mtv-compare__reset{background:transparent !important;color:#FFB000 !important;border:1.5px solid rgba(255,176,0,.5) !important}
.mtv-compare__count{color:#fff}
.mtv-compare__sort{color:#AEB9C7}
.mtv-compare__sort select{background:#0d2138 !important;color:#fff !important;border-color:rgba(255,255,255,.14) !important}
.mtv-card{background:#12243D !important;border:1px solid rgba(255,255,255,.10) !important}
.mtv-card__title a{color:#EAF1F8 !important}
.mtv-card__title a:hover{color:#FFB000 !important}
.mtv-card__from,.mtv-card__soon{color:#AEB9C7}
.mtv-card__price strong{color:#FFB000 !important}
.mtv-card__offers{background:rgba(255,176,0,.15) !important;color:#FFC23D !important}
.mtv-btn--buy{background:#FFB000 !important;color:#0A1B30 !important}
.mtv-btn--buy:hover{background:#FFC23D !important;color:#0A1B30 !important}
.mtv-compare__empty{color:#AEB9C7}
/* Tableau d'offres */
.mtv-offers__title{color:#fff}
.mtv-offers__table{background:#12243D !important;border-color:rgba(255,255,255,.10) !important}
.mtv-offers__table th{background:#0d2138 !important;color:#FFC23D !important}
.mtv-offers__table td{border-top-color:rgba(255,255,255,.08) !important;color:#D7E0EA}
.mtv-offers__row--best{background:rgba(255,176,0,.10) !important}
.mtv-badge--best{background:#FFB000 !important;color:#0A1B30 !important}
.mtv-offers__price{color:#FFB000 !important}
.mtv-offers__disclaimer,.mtv-no-offers{color:#7e8ea0}
.mtv-alert{background:#13243b !important;border:1px solid rgba(255,176,0,.30) !important}
.mtv-alert__title{color:#fff}
.mtv-alert input{background:#0d2138 !important;color:#fff !important;border-color:rgba(255,255,255,.14) !important}
.mtv-page{background:#0d2138 !important;color:#D7E0EA !important;border-color:rgba(255,255,255,.14) !important}
.mtv-page.is-current{background:#FFB000 !important;color:#0A1B30 !important;border-color:#FFB000 !important}

/* ===== Filtre budget : double-curseur (min / max) ===== */
.mtv-range{margin:6px 0 4px}
.mtv-range .mtv-filter-group__title{margin:0 0 8px}
.mtv-range__values{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px;font-weight:700;font-size:.9rem;color:#EAF1F8}
.mtv-range__from,.mtv-range__to{background:#0d2138;border:1px solid rgba(255,176,0,.30);color:#FFC23D;border-radius:8px;padding:4px 9px;min-width:58px;text-align:center}
.mtv-range__sep{color:#6f8093;font-weight:600}
.mtv-range__slider{position:relative;height:30px}
.mtv-range__rail{position:absolute;top:50%;left:0;right:0;height:5px;transform:translateY(-50%);background:#0d2138;border:1px solid rgba(255,255,255,.10);border-radius:20px}
.mtv-range__fill{position:absolute;top:50%;height:5px;transform:translateY(-50%);background:linear-gradient(90deg,#FFB000,#FFC23D);border-radius:20px}
.mtv-range .mtv-range__input{position:absolute;top:0;left:0;width:100%;height:30px;margin:0;background:none !important;border:0 !important;box-shadow:none !important;pointer-events:none;-webkit-appearance:none;appearance:none}
.mtv-range__input:focus{outline:none}
.mtv-range__input::-webkit-slider-runnable-track{background:none;height:30px}
.mtv-range__input::-moz-range-track{background:none;height:30px}
.mtv-range__input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;pointer-events:auto;width:20px;height:20px;border-radius:50%;background:#FFB000;border:3px solid #0A1B30;box-shadow:0 2px 6px rgba(0,0,0,.45);cursor:pointer;margin-top:0}
.mtv-range__input::-moz-range-thumb{pointer-events:auto;width:20px;height:20px;border-radius:50%;background:#FFB000;border:3px solid #0A1B30;box-shadow:0 2px 6px rgba(0,0,0,.45);cursor:pointer}
.mtv-range__input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px rgba(255,176,0,.30)}
.mtv-range__input:focus-visible::-moz-range-thumb{box-shadow:0 0 0 4px rgba(255,176,0,.30)}
.mtv-range__input--max{z-index:4}
.mtv-range__input--min{z-index:5}
