/* DSG AUTO V22.7 — Filtres : tiroir à gauche, grandes cibles tactiles, typographie Plus Jakarta Sans.
   Chargé APRÈS site-bundle : remplace les anciennes surcharges minuscules (chips 29 px / 0,65 rem). */

/* ───────── Barre de recherche, bouton Filtres, tri ───────── */
body .vehicle-finder-v9{max-width:1560px!important;padding:1rem!important;border-radius:24px!important;
  background:linear-gradient(180deg,rgba(26,26,32,.92),rgba(10,10,13,.94))!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:0 30px 80px -30px #000!important}
body .finder-v9-head .finder-kicker{font-size:.74rem!important;letter-spacing:.16em!important}
body .finder-v9-count{font-size:1rem!important}body .finder-v9-count strong{font-size:1.25rem!important;font-family:var(--font-display)}
body .vehicle-finder-v9 .finder-toolbar{display:flex!important;flex-wrap:wrap!important;gap:12px!important;align-items:stretch!important}
body .vehicle-finder-v9 .search-wrap-v8{flex:1 1 360px!important;min-width:0!important}
body .vehicle-finder-v9 .vehicle-search{height:56px!important;min-height:56px!important;font-size:1.02rem!important;border-radius:16px!important;padding-left:50px!important}
body .vehicle-finder-v9 .filters-toggle-btn,body .vehicle-finder-v9 .sort-select{height:56px!important;min-height:56px!important;border-radius:16px!important;font:700 1rem var(--font-display)!important;padding:0 20px!important;width:auto!important;flex:0 0 auto!important}
body .vehicle-finder-v9 .filters-toggle-btn{display:inline-flex!important;align-items:center;gap:10px;border:1px solid rgba(255,90,70,.55)!important;background:linear-gradient(180deg,rgba(225,11,11,.28),rgba(225,11,11,.1))!important;color:#fff!important}
body .vehicle-finder-v9 .filters-toggle-btn svg{width:20px!important;height:20px!important}
body .vehicle-finder-v9 .filters-badge{min-width:26px!important;height:26px!important;border-radius:999px!important;background:#e10b0b!important;display:inline-grid!important;place-items:center;font-size:.8rem!important}
body .vehicle-finder-v9 .sort-select{padding-right:14px!important;background-color:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.14)!important;cursor:pointer}

/* Filtres rapides : gros, une seule ligne défilante sur mobile, plus aucun masqué */
body .vehicle-finder-v9 .quick-filter-strip{display:flex!important;flex-wrap:wrap!important;gap:10px!important;padding:14px 0 2px!important}
body .vehicle-finder-v9 .quick-filter,body .vehicle-finder-v9 .quick-filter:nth-of-type(n+4),body .vehicle-finder-v9 .quick-filter:nth-of-type(n+5){
  display:inline-flex!important;align-items:center;gap:8px;height:44px!important;min-height:44px!important;padding:0 16px!important;font:700 .92rem var(--font-display)!important;border-radius:999px!important;white-space:nowrap}
body .vehicle-finder-v9 .quick-count{min-width:24px!important;height:24px!important;font-size:.76rem!important}

/* ───────── Le tiroir ───────── */
body #filtersPanel{
  position:fixed!important;top:0!important;left:0!important;right:auto!important;bottom:0!important;
  width:min(440px,100vw)!important;height:100vh!important;height:100dvh!important;max-height:none!important;
  margin:0!important;padding:0 22px!important;display:block!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  border-radius:0 28px 28px 0!important;border:1px solid rgba(255,255,255,.12)!important;border-left:0!important;
  background:linear-gradient(180deg,#15151b,#0a0a0e)!important;box-shadow:40px 0 100px -20px rgba(0,0,0,.9)!important;
  z-index:10019!important;animation:none!important;
  transform:translateX(-106%);visibility:hidden;opacity:1;
  transition:transform .32s cubic-bezier(.2,.8,.2,1),visibility 0s linear .32s!important;
}
body #filtersPanel.open{transform:none;visibility:visible;transition:transform .32s cubic-bezier(.2,.8,.2,1),visibility 0s!important}
#dsgFiltersDim{position:fixed;inset:0;background:rgba(0,0,0,.62);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10018;opacity:0;visibility:hidden;transition:opacity .25s,visibility 0s .25s}
body.dsg-filters-open #dsgFiltersDim{opacity:1;visibility:visible;transition:opacity .25s}
body.dsg-filters-open{overflow:hidden!important}

/* En-tête collant */
body #filtersPanel .filters-panel-head{position:sticky!important;top:0!important;z-index:5!important;margin:0 -22px 6px!important;
  padding:calc(20px + env(safe-area-inset-top,0px)) 22px 16px!important;background:rgba(18,18,23,.96)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(255,255,255,.09)!important;display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:12px!important}
body #filtersPanel .filters-panel-title{font:800 1.45rem/1.15 var(--font-display)!important;letter-spacing:-.02em}
body #filtersPanel .filters-panel-subtitle{display:block!important;font-size:.88rem!important;color:rgba(255,255,255,.55)!important;max-width:none!important;margin-top:4px!important}
body #filtersPanel .filters-head-actions{display:flex!important;gap:8px!important;align-items:center}
body #filtersPanel .filter-reset{height:44px!important;padding:0 14px!important;border-radius:12px!important;font:700 .9rem var(--font-display)!important;color:#ff6a5c!important;background:transparent!important;border:1px solid rgba(255,255,255,.14)!important}
body #filtersPanel .filters-close{width:44px!important;height:44px!important;border-radius:12px!important;font-size:1.6rem!important;line-height:1;background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.14)!important}

/* Une seule colonne, rien de serré */
body #filtersPanel .filter-select-grid-v9,body #filtersPanel .filters-grid-v9{display:grid!important;grid-template-columns:1fr!important;gap:0!important;margin:0!important;padding:0!important;border:0!important}
body #filtersPanel .filter-select-card{padding:16px 0 0!important;background:none!important;border:0!important;border-radius:0!important;grid-column:auto!important}
body #filtersPanel .filter-select-card>span{font:800 .8rem var(--font-display)!important;letter-spacing:.12em!important;color:rgba(255,255,255,.55)!important;margin-bottom:8px!important;display:block}
body #filtersPanel .filter-select-card select{height:54px!important;min-height:54px!important;font:600 1rem var(--font-body)!important;border-radius:14px!important;padding:0 14px!important;background-color:#1b1b22!important;border:1.5px solid rgba(255,255,255,.13)!important;width:100%!important}
body #filtersPanel .filter-select-card select:focus{border-color:#ff3b2f!important;box-shadow:0 0 0 3px rgba(225,11,11,.2)!important}
body #filtersPanel .filter-group{padding:20px 0 4px!important;margin:0!important;background:none!important;border:0!important;border-top:1px solid rgba(255,255,255,.08)!important;border-radius:0!important}
body #filtersPanel .filters-grid-v9{margin-top:20px!important}
body #filtersPanel .filter-label{font:800 .8rem var(--font-display)!important;letter-spacing:.12em!important;color:rgba(255,255,255,.55)!important;margin:0 0 12px!important}
body #filtersPanel .filter-label-note{font-size:.74rem!important;color:rgba(255,255,255,.4)!important}
body #filtersPanel .filter-chips{display:flex!important;flex-wrap:wrap!important;gap:10px!important}
body #filtersPanel .fchip{height:50px!important;min-height:50px!important;padding:0 16px!important;border-radius:14px!important;font:700 1rem var(--font-display)!important;display:inline-flex!important;align-items:center;gap:8px;
  background:#1b1b22!important;border:1.5px solid rgba(255,255,255,.12)!important;color:#fff!important;transition:border-color .15s,background .15s,transform .1s}
body #filtersPanel .fchip:active{transform:scale(.97)}
body #filtersPanel .fchip.active{background:rgba(225,11,11,.16)!important;border-color:#ff3b2f!important;box-shadow:0 0 22px -8px rgba(225,11,11,.8)}
body #filtersPanel .fchip-count{min-width:24px!important;height:24px!important;font-size:.78rem!important;padding:0 7px!important;border-radius:999px!important;display:inline-grid;place-items:center}
body #filtersPanel .fchip.is-unavailable,body #filtersPanel .fchip:disabled{display:inline-flex!important;opacity:.35!important}
body #filtersPanel [hidden]{display:none!important}

/* Pied collant : « Voir N véhicules » */
body #filtersPanel .filters-panel-footer{position:sticky!important;bottom:0!important;z-index:5!important;margin:18px -22px 0!important;
  padding:16px 22px calc(16px + env(safe-area-inset-bottom,0px))!important;display:flex!important;align-items:center!important;gap:14px!important;
  background:linear-gradient(180deg,rgba(10,10,14,0),#0a0a0e 28%)!important;border:0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
body #filtersPanel .drawer-result-copy{font-size:.86rem!important;flex:1!important;min-width:0}
body #filtersPanel .drawer-result-copy strong{font:800 1.15rem var(--font-display)!important}
body #filtersPanel .drawer-apply{height:56px!important;min-width:170px!important;padding:0 22px!important;border-radius:16px!important;font:800 1.02rem var(--font-display)!important;
  background:linear-gradient(180deg,#ff3a2d,#b80000)!important;box-shadow:0 14px 34px -10px rgba(225,11,11,.85)!important;border:1px solid rgba(255,130,110,.5)!important}

/* ───────── iPhone (dont Pro Max 430 px) : tiroir du bas ───────── */
@media(max-width:699px){
  body .vehicle-finder-v9{padding:.8rem!important;border-radius:20px!important}
  body .vehicle-finder-v9 .finder-toolbar{display:grid!important;grid-template-columns:1fr 1fr!important}
  body .vehicle-finder-v9 .search-wrap-v8{grid-column:1/-1!important}
  body .vehicle-finder-v9 .filters-toggle-btn,body .vehicle-finder-v9 .sort-select{width:100%!important;justify-content:center;padding:0 12px!important;font-size:.95rem!important}
  body .vehicle-finder-v9 .quick-filter-strip{flex-wrap:nowrap!important;overflow-x:auto;margin:0 -.8rem;padding:14px .8rem 4px!important;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
  body .vehicle-finder-v9 .quick-filter-strip::-webkit-scrollbar{display:none}
  body .vehicle-finder-v9 .quick-filter{flex:0 0 auto;scroll-snap-align:start}
  body #filtersPanel{top:auto!important;left:0!important;right:0!important;width:100%!important;height:min(90dvh,820px)!important;border-radius:28px 28px 0 0!important;
    border:1px solid rgba(255,255,255,.14)!important;border-bottom:0!important;transform:translateY(106%);box-shadow:0 -30px 80px -20px #000!important;
    padding-left:max(18px,env(safe-area-inset-left))!important;padding-right:max(18px,env(safe-area-inset-right))!important}
  body #filtersPanel.open{transform:none}
  body #filtersPanel .filters-panel-head{margin-left:calc(-1*max(18px,env(safe-area-inset-left)))!important;margin-right:calc(-1*max(18px,env(safe-area-inset-right)))!important;
    padding:18px max(18px,env(safe-area-inset-right)) 14px max(18px,env(safe-area-inset-left))!important;border-radius:28px 28px 0 0}
  body #filtersPanel .filters-panel-head::before{content:"";position:absolute;left:50%;top:7px;width:44px;height:5px;margin-left:-22px;border-radius:5px;background:rgba(255,255,255,.22)}
  body #filtersPanel .filters-panel-subtitle{display:none!important}
  body #filtersPanel .filters-panel-footer{margin-left:calc(-1*max(18px,env(safe-area-inset-left)))!important;margin-right:calc(-1*max(18px,env(safe-area-inset-right)))!important;
    padding-left:max(18px,env(safe-area-inset-left))!important;padding-right:max(18px,env(safe-area-inset-right))!important}
  body #filtersPanel .drawer-apply{flex:1;min-width:0!important}
  body #filtersPanel .drawer-result-copy span{display:none}
}

/* ───────── iPad ───────── */
@media(min-width:700px) and (max-width:1100px){
  body #filtersPanel{width:min(460px,70vw)!important}
  body .vehicle-finder-v9 .quick-filter-strip{flex-wrap:wrap!important}
}

/* ───────── PC : 1440p / 4K ───────── */
@media(min-width:1500px){
  body .vehicle-finder-v9{max-width:1640px!important}
  body .vehicles-grid{max-width:1640px!important;margin-left:auto!important;margin-right:auto!important;grid-template-columns:repeat(auto-fill,minmax(360px,1fr))!important;gap:26px!important}
}
@media(min-width:2200px){
  body #filtersPanel{width:520px!important}
  body .vehicle-finder-v9,body .vehicles-grid{max-width:1900px!important}
}
@media(prefers-reduced-motion:reduce){body #filtersPanel,#dsgFiltersDim{transition:none!important}}

/* Le tiroir doit passer AU-DESSUS du fond assombri : le conteneur ne crée plus de contexte d'empilement */
body .vehicle-finder-v9,body .vehicle-finder-v9 .filters-bar{z-index:auto!important;transform:none!important;filter:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;contain:none!important}

/* Pastille « nombre de filtres » : cachée tant qu'il n'y a aucun filtre ; boutons flottants masqués quand le tiroir est ouvert */
body .vehicle-finder-v9 .filters-badge[hidden]{display:none!important}
body.dsg-filters-open .dsg-contact-dock,body.dsg-filters-open #backToTop,body.dsg-filters-open #favTab,body.dsg-filters-open .dsg-bottom-nav,body.dsg-filters-open .mobile-bottom-nav{display:none!important}

/* V22.12 — Budget / Kilométrage en tranches */
body #filtersPanel .dsg-range{grid-column:1/-1;min-width:0;max-width:100%;overflow:hidden;display:flex;flex-direction:column;gap:12px}
body #filtersPanel .dsg-range-in{display:grid;grid-template-columns:1fr auto 1fr auto;gap:10px;align-items:end}
body #filtersPanel .dsg-range-in label{display:flex;flex-direction:column;gap:6px;font:600 12px/1 var(--font-display,'Plus Jakarta Sans',sans-serif);letter-spacing:.08em;text-transform:uppercase;color:#9b9ba8;min-width:0}
body #filtersPanel .dsg-range-in input{width:100%;min-width:0;height:54px;border-radius:14px;border:1px solid rgba(255,255,255,.16);background:#1b1b21;color:#fff;font:700 17px var(--font-display,'Plus Jakarta Sans',sans-serif);padding:0 14px;text-transform:none;letter-spacing:0}
body #filtersPanel .dsg-range-in input:focus{outline:none;border-color:#ff4a3d;box-shadow:0 0 0 3px rgba(255,74,61,.25)}
body #filtersPanel .dsg-range-in i{font-style:normal;color:#777;padding-bottom:16px}
body #filtersPanel .dsg-range-in em{font-style:normal;color:#9b9ba8;padding-bottom:16px;font-weight:700}
body #filtersPanel .dsg-range-presets{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;max-width:100%;margin:0;padding:2px 14px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 14px,#000 calc(100% - 14px),transparent);mask-image:linear-gradient(90deg,transparent,#000 14px,#000 calc(100% - 14px),transparent)}
body #filtersPanel .dsg-range-presets::-webkit-scrollbar{display:none}
body #filtersPanel .dsg-range-presets button{flex:0 0 auto;white-space:nowrap;scroll-snap-align:center}
body #filtersPanel .dsg-hist{display:flex;align-items:flex-end;gap:5px;height:70px}
body #filtersPanel .dsg-hist button{flex:1;height:100%;display:flex;align-items:flex-end;padding:0;border:0;background:none;cursor:pointer;min-width:0}
body #filtersPanel .dsg-hist button i{display:block;width:100%;border-radius:5px 5px 2px 2px;background:#2a2a32;transition:height .25s,background .2s}
body #filtersPanel .dsg-hist button.on i{background:linear-gradient(180deg,#ff4a3d,#c40d00)}
body #filtersPanel .dsg-range-presets button{min-height:44px;padding:0 13px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:#e8e8ee;font:600 14px var(--font-display,'Plus Jakarta Sans',sans-serif);display:inline-flex;align-items:center;gap:8px;cursor:pointer}
body #filtersPanel .dsg-range-presets button b{font-size:12px;background:rgba(255,255,255,.1);border-radius:999px;padding:2px 8px}
body #filtersPanel .dsg-range-presets button.on{background:linear-gradient(180deg,rgba(255,58,45,.4),rgba(196,13,0,.3));border-color:rgba(255,90,75,.7);color:#fff}
body #filtersPanel .dsg-range-presets button.empty{opacity:.4}
body #filtersPanel [data-dsg-old],body #filtersPanel label[data-dsg-old]{display:none!important}
