/* Analyses avancées · Ventes. Surcharges limitées à .analytics-sales (lists.css et workspace-design.css inchangés).
   Rythme : un seul écart vertical (--sales-gap) entre blocs ; cartes de même largeur et même retrait intérieur (--sales-pad).
   Les dispositions internes suivent la largeur de la zone Ventes (requêtes de conteneur), de 320 à 1 440 px. */
.analytics-sales,.analytics-sales-shell{min-width:0}
.analytics-sales{--sales-gap:16px;--sales-pad:16px 20px;--sales-muted:#536578;display:grid;gap:var(--sales-gap);font-size:16px;overflow-anchor:none;container:sales/inline-size}
.analytics-sales-shell>section.analytics-sales{margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.analytics-sales [hidden],.analytics-sales-shell>[hidden]{display:none!important}
.analytics-sales p:empty,.analytics-sales-warnings:empty{display:none}
.analytics-sales>section,.analytics-sales>form,.analytics-sales>div,.analytics-sales>details,.analytics-sales>p{margin:0;min-width:0}
.analytics-sales label{min-width:0;margin:0;font-size:14px}
.analytics-sales input,.analytics-sales select{font-size:16px;max-width:100%}
.analytics-sales .multi-filter{max-width:100%;min-width:0}
.analytics-sales .multi-panel{width:min(360px,calc(100vw - 32px));max-height:min(420px,70vh);overflow:auto}
.analytics-sales-shell>.detail-tabs{margin:0 0 var(--sales-gap,16px)}
.analytics-sales-shell>.detail-tabs button{font-size:16px;min-height:44px}

/* Cartes : filtres, comparaison des magasins, tableau, Mes critères, Informations et qualité. */
.analytics-sales>.list-zone,.analytics-sales>.analytics-sales-table-section{margin:0;padding:var(--sales-pad)}
.analytics-sales>.analytics-sales-table-section{border:1px solid var(--border,#dce4ec);border-radius:14px;background:#fff;box-shadow:0 4px 18px #17334c04}
.analytics-sales>details{border:1px solid var(--border,#dce4ec);border-radius:14px;background:#fff;padding:0 20px;overflow-wrap:anywhere}
.analytics-sales>details>summary{min-height:44px;padding-block:12px;box-sizing:border-box;cursor:pointer;font-size:15px}
.analytics-sales>details[open]{padding-bottom:16px}
.analytics-sales>details>div>p{margin:0 0 6px}
.analytics-sales-preference-actions{display:flex;gap:10px;flex-wrap:wrap}
.analytics-sales-status{margin:0}
.analytics-sales-warnings{display:grid;gap:8px}
.analytics-sales-warnings p,.analytics-sales-warning{padding:10px 14px;border-left:3px solid #9b7127;background:#fff9e9;color:#59451e;margin:0;overflow-wrap:anywhere}

/* Zone de filtres : en-tête + Mes filtres ; période, magasins, actions ; recherche et critères produits ; options repliées. */
.analytics-sales .analytics-sales-filters{display:grid;gap:12px}
.analytics-sales .analytics-sales-filters>h2,.analytics-sales .analytics-sales-filters-head h2{font-size:16px;margin:0}
.analytics-sales .analytics-sales-filters-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;min-width:0}
.analytics-sales .analytics-sales-filters-head>.filter-presets{flex:0 1 30rem;min-width:0;margin:0}
.analytics-sales .analytics-sales-filters-head .filter-presets-bar{align-items:center}
.analytics-sales .analytics-sales-filters-head .filter-presets-bar>label{display:flex;flex-direction:row;align-items:center;gap:8px;white-space:nowrap}
.analytics-sales .analytics-sales-filters-head .filter-presets-bar>label>select{flex:1;min-width:0}
.analytics-sales .analytics-sales-filters-head .filter-presets-status{margin:2px 0 0}
.analytics-sales .analytics-sales-main{display:grid;grid-template-columns:minmax(0,36rem) minmax(14rem,1fr) auto;gap:12px 16px;align-items:end;min-width:0}
.analytics-sales .consultation-period-row,:is(#analytics-view,#analytics-content) .analytics-sales .analytics-sales-periods{display:block;min-width:0;margin:0}
.analytics-sales .consultation-geography-row{display:block;min-width:0;margin:0}
.analytics-sales .analytics-sales-main .period-selector-range{margin:4px 0 0}
.analytics-sales .consultation-actions{display:flex;gap:8px;margin:0;flex-wrap:nowrap}
.analytics-sales .analytics-sales-filters .multi-filter>summary{height:49px;min-height:49px;padding:0 12px;line-height:47px;box-sizing:border-box;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analytics-sales .analytics-sales-filters .consultation-actions button{min-height:49px}
.analytics-sales-product-row{display:grid;grid-template-columns:minmax(14rem,1fr) minmax(0,2.2fr);gap:12px 16px;align-items:end;min-width:0}
.analytics-sales .analytics-sales-search{display:grid;gap:6px}
.analytics-sales .analytics-sales-search input{width:100%;height:49px;box-sizing:border-box;margin:0}
.analytics-sales-criteria{display:grid;gap:6px;min-width:0}
.analytics-sales-criteria-title{font-size:14px;font-weight:600;line-height:1.3}
.analytics-sales-criteria-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0}
.analytics-sales-criteria-note{margin:0;font-size:14px;color:#874025}
.analytics-sales-criteria-state{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0}
.analytics-sales-criteria-state p{margin:0;font-size:14px;color:var(--sales-muted);overflow-wrap:anywhere}
.analytics-sales .analytics-sales-criteria-state button{min-height:36px;padding:6px 12px;font-size:14px}
.analytics-sales-product-selection{overflow-wrap:anywhere}
.analytics-sales-product-selection p{margin:0 0 8px}
.analytics-sales .consultation-options{border-top:1px solid var(--border);min-width:0}
.analytics-sales .consultation-options>summary{min-height:44px;display:list-item;list-style-position:inside;padding-block:10px 0;box-sizing:border-box;cursor:pointer;font-size:15px}
.analytics-sales .analytics-sales-options{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 16px;padding-top:8px;align-items:end}
.analytics-sales .analytics-sales-options>div{grid-column:1/-1;min-width:0}
.analytics-sales .analytics-sales-options .inline-check{flex-direction:row;align-items:center;gap:8px;min-height:44px}
.analytics-sales-periods{display:block}

/* Chiffres : vignettes de même hauteur, ligne « lignes · tickets · quantités » rattachée aux vignettes. */
.analytics-sales-figures{display:grid;gap:8px;min-width:0}
.analytics-sales-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.analytics-sales-kpi{display:grid;align-content:start;gap:4px;border:1px solid #dce5eb;border-radius:10px;background:#fff;padding:14px 16px;min-width:0}
.analytics-sales-kpi span,.analytics-sales-kpi small{display:block;font-size:14px;color:var(--sales-muted)}
.analytics-sales-kpi strong{display:block;font-size:clamp(19px,2vw,26px);line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0}
.analytics-sales-summary,.analytics-sales-note{margin:0;color:var(--sales-muted);overflow-wrap:anywhere}
.analytics-sales-summary{font-size:14px;line-height:1.5}

/* Comparer les magasins. */
.analytics-sales-multisite{display:grid;gap:12px}
.analytics-sales .analytics-sales-multisite>*{margin:0;min-width:0}
.analytics-sales-multisite>h2{font-size:16px}
.analytics-sales-graph-controls,.analytics-sales-table-controls{display:flex;gap:8px 12px;align-items:end;flex-wrap:wrap}
.analytics-sales-graph-controls label{flex:1 1 180px}
.analytics-sales-graphs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.analytics-sales .analytics-sales-graph{min-width:0;margin:0;padding:14px 16px;border-radius:10px;box-shadow:none}
.analytics-sales-graph h3{font-size:15px;margin:0 0 8px}
.analytics-sales-graph>p{margin:8px 0 0;color:var(--sales-muted);font-size:14px}
.analytics-sales-canvas-scroll{max-height:280px;overflow:auto;position:relative;min-width:0}
.analytics-sales-canvas-scroll>div{position:relative;min-width:0}
.analytics-sales .analytics-sales-graph canvas:focus-visible{outline:3px solid #1768c0;outline-offset:2px}
.analytics-sales-multisite details>summary{min-height:36px;padding-block:6px;box-sizing:border-box;cursor:pointer;font-size:14px}
.analytics-sales-multisite details>div{overflow:auto;max-height:380px}
.analytics-sales-multisite details>ul{margin:4px 0 0}
.analytics-sales-multisite table{font-size:14px;min-width:440px}
.analytics-sales-multisite table td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}
.analytics-sales-multisite caption{text-align:left;padding:8px}

/* Tableau : classement et lignes par page, puis le tableau commun, la pagination et la note. */
.analytics-sales-table-section{display:grid;gap:12px;min-width:0}
.analytics-sales .analytics-sales-table-section>*{margin:0;min-width:0}
.analytics-sales .analytics-sales-table-controls label{display:flex;flex-direction:row;align-items:center;gap:8px;white-space:nowrap;font-size:14px}
.analytics-sales .analytics-sales-table-controls select{width:auto;min-width:0;min-height:44px}
.analytics-sales .analytics-sales-table-controls .analytics-sales-page-size{margin-left:auto}
.analytics-sales-ranking{padding:8px 12px;border-left:3px solid #217a66;background:#eef6f3;color:#1d4d42;font-size:14px;overflow-wrap:anywhere}
.analytics-sales .analytics-sales-table-section .list-zone-heading{padding:0 0 8px;margin:0}
.analytics-sales .analytics-sales-table-section .list-pagination{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.analytics-sales-note{font-size:13px}

/* Largeurs intermédiaires et petites : selon la zone Ventes (conteneur), y compris à 320 px. */
@container sales (max-width:1060px){
 .analytics-sales .analytics-sales-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .analytics-sales .analytics-sales-main>.consultation-period-row{grid-column:1/-1}
 .analytics-sales .analytics-sales-main>.consultation-actions{justify-content:flex-end}
 .analytics-sales-product-row{grid-template-columns:minmax(0,1fr)}
 .analytics-sales-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
 .analytics-sales-graphs{grid-template-columns:minmax(0,1fr)}
}
@container sales (max-width:800px){
 .analytics-sales-criteria-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .analytics-sales .analytics-sales-options{grid-template-columns:minmax(0,1fr)}
}
@container sales (max-width:600px){
 .analytics-sales>.list-zone,.analytics-sales>.analytics-sales-table-section{padding:14px}
 .analytics-sales>details{padding:0 14px}
 .analytics-sales>details[open]{padding-bottom:14px}
 .analytics-sales .analytics-sales-main{grid-template-columns:minmax(0,1fr)}
 .analytics-sales .analytics-sales-main>.consultation-actions{flex-wrap:wrap;justify-content:stretch}
 .analytics-sales .analytics-sales-main>.consultation-actions button{flex:1 1 8rem}
 .analytics-sales .analytics-sales-filters-head>.filter-presets{flex-basis:100%}
 .analytics-sales .analytics-sales-filters-head .filter-presets-bar>label{white-space:normal}
 .analytics-sales .analytics-sales-filters .period-selector-dates{min-width:0;flex:1 1 100%;grid-template-columns:repeat(2,minmax(0,1fr))}
 .analytics-sales .analytics-sales-filters .period-selector-quick{max-width:none;flex:1 1 100%;min-width:0}
 .analytics-sales-kpis{gap:8px}
 .analytics-sales-kpi{padding:12px}
 .analytics-sales .analytics-sales-graph{padding:12px}
 .analytics-sales .analytics-sales-table-controls label{flex:1 1 100%;justify-content:space-between;white-space:normal}
 .analytics-sales .analytics-sales-table-controls select{flex:1 1 auto;max-width:14rem}
 .analytics-sales .analytics-sales-table-controls .analytics-sales-page-size{margin-left:0}
 .analytics-sales-graph-controls label{flex-basis:100%}
 .analytics-sales .analytics-sales-preference-actions button{flex:1 1 100%}
}
@container sales (max-width:420px){
 .analytics-sales-criteria-grid{grid-template-columns:minmax(0,1fr)}
 .analytics-sales .analytics-sales-filters .period-selector-dates{grid-template-columns:minmax(0,1fr)}
 .analytics-sales-kpi strong{font-size:19px}
}
@media(max-width:650px){.analytics-sales-shell>.detail-tabs button{flex:1 1 130px}}
