.ideal{max-width:1160px;margin:1.25rem auto;background:#fff;border:1px solid var(--line,#dedee4);border-radius:12px;padding:1.25rem;text-align:left;color:var(--ink,#19191e)}
.ideal *{box-sizing:border-box}.ideal [hidden]{display:none!important}
.ideal-modes{display:flex;align-items:center;gap:1rem;border-bottom:1px solid var(--line,#dedee4);padding-bottom:1rem;margin-bottom:1rem;flex-wrap:wrap}
.ideal-modes button{font:700 1.05rem var(--font-head,inherit);background:none;border:0;padding:.4rem 0;color:var(--muted,#595960);cursor:pointer;border-bottom:3px solid transparent}
.ideal-modes button.is-active{color:var(--ink,#19191e);border-color:var(--orange,#ff6300)}
.ideal-modes>span{font-size:.75rem;color:var(--muted,#595960)}
.ideal-free input{width:100%;min-height:54px;font:inherit;padding:.85rem 1rem;border:1px solid #a2a2ad;border-radius:8px;color:inherit;background:white}
.ideal input:focus-visible,.ideal select:focus-visible,.ideal button:focus-visible,.ideal summary:focus-visible{outline:2px solid var(--orange,#ff6300);outline-offset:3px}
.ideal-free p,.ideal-hint{font-size:.8rem;color:var(--muted,#595960);margin:.5rem 0 1rem;line-height:1.5}
.ideal-criteria summary{cursor:pointer;font-size:.9rem;font-weight:600;padding:.5rem 0}
.ideal-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin:.7rem 0}
.ideal-fields label{display:flex;flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:600;min-width:0}
.ideal-fields select,.ideal-fields input{width:100%;min-width:0;padding:.65rem;border:1px solid var(--line,#dedee4);background:#fff;border-radius:6px;min-height:43px;font:inherit;color:inherit}
.ideal-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.8rem 0}
.ideal-chips button{border:1px solid #dcdce3;border-radius:20px;padding:.4rem .7rem;background:#fff;font:inherit;font-size:.8rem;cursor:pointer;text-align:left}
.ideal-status{font-size:.88rem;line-height:1.5;margin:.5rem 0}.ideal-confirm{display:flex;align-items:baseline;gap:.4rem;font-size:.85rem;margin:.7rem 0}
.ideal-submit{border:0;border-radius:8px;background:var(--orange,#ff6300);color:#fff;font:700 1rem var(--font-head,inherit);padding:.85rem 1.2rem;min-height:48px;cursor:pointer}.ideal-submit:disabled{opacity:.6;cursor:wait}
.ideal-community{display:flex;align-items:center;gap:.7rem;color:inherit!important;border-top:1px solid var(--line,#dedee4);padding-top:1rem;margin-top:1rem;font-size:.88rem;text-decoration:none!important;line-height:1.5}.ideal-community strong{text-decoration:underline;text-underline-offset:3px}.ideal-community>i{color:var(--orange,#ff6300)}.ideal-community>span:last-child{margin-left:auto}
.p-resultats>.ideal,.p-resultats main>.ideal{margin:1.25rem auto;width:calc(100% - 2rem);max-width:1440px}
@media(max-width:760px){.ideal{padding:1rem;margin:1rem 0}.ideal-modes{gap:.5rem}.ideal-modes button{font-size:.95rem}.ideal-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.ideal-submit{width:100%}.ideal-free input{font-size:16px}.ideal-modes>span{font-size:.65rem}}
@media(max-width:420px){.ideal-modes{display:grid;grid-template-columns:1fr auto}.ideal-modes button{text-align:left}.ideal-modes button:last-child{grid-column:1/-1}.ideal-fields{grid-template-columns:1fr 1fr}.ideal-community{font-size:.8rem}}

.p-resultats .ideal:not(.is-refining):not(:has(details[open])) .ideal-chips{display:none}

/* Résultats : les barrettes historiques et une recherche repliée. */
.ideal-edit{max-width:1480px;margin:1rem auto 0;padding:0 1.2rem;color:var(--ink)}
.ideal-edit-toggle{display:flex;align-items:center;gap:.6rem;width:fit-content;list-style:none;border:1px solid var(--line);border-radius:8px;padding:.7rem 1rem;background:#fff;font-weight:600;font-size:.9rem;cursor:pointer}
.ideal-edit-toggle>i:first-child{color:var(--orange)}
.ideal-edit-toggle>i:last-child{margin-left:1rem;font-size:.7rem;transition:transform .2s}
.ideal-edit-toggle[aria-expanded="true"]>i:last-child{transform:rotate(180deg)}
.ideal-edit>.ideal{max-width:none;margin:.7rem 0 0}
.ideal-field-label{display:flex;align-items:center;gap:.45rem;min-height:1.4rem}
.ideal-field-label i{color:var(--orange);width:1rem;text-align:center}
.ideal-fields select{appearance:none;padding:.8rem 2.2rem .8rem .8rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%23ff6300' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;cursor:pointer}
.ideal-fields select,.ideal-fields input{border-radius:8px;min-height:48px;box-shadow:0 1px 2px #00000005;font-size:.88rem}
.ideal-range{grid-column:auto}.ideal-range input{cursor:pointer}
.ideal-free input{padding-left:2.8rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5' stroke='%23ff6300' stroke-width='2' fill='none'/%3E%3Cpath d='m16 16 4 4' stroke='%23ff6300' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:.95rem center}
/* Même transparence sombre que le moteur d'origine, photo visible. */
:is(.hero--home,.cp-moteur) .ideal{background:rgba(16,16,20,.38);border-color:rgba(255,255,255,.22);color:#fff;box-shadow:none;padding:1rem 1.25rem}
:is(.hero--home,.cp-moteur) .ideal-modes{border-color:rgba(255,255,255,.18);gap:1.2rem;padding-bottom:.65rem;margin-bottom:.9rem}
:is(.hero--home,.cp-moteur) .ideal-modes button{color:rgba(255,255,255,.78)}
:is(.hero--home,.cp-moteur) .ideal-modes button.is-active{color:#fff}
:is(.hero--home,.cp-moteur) .ideal-modes>span,:is(.hero--home,.cp-moteur) .ideal-free p,:is(.hero--home,.cp-moteur) .ideal-hint{color:rgba(255,255,255,.8)}
:is(.hero--home,.cp-moteur) .ideal-free input,:is(.hero--home,.cp-moteur) .ideal-fields select,:is(.hero--home,.cp-moteur) .ideal-fields input{color:var(--ink);background-color:rgba(255,255,255,.96);border-color:transparent}
:is(.hero--home,.cp-moteur) .ideal-chips button{color:#fff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3)}
:is(.hero--home,.cp-moteur) .ideal-community{border-color:rgba(255,255,255,.18);font-size:.82rem;padding-top:.8rem;margin-top:.8rem}
:is(.hero--home,.cp-moteur) .ideal-form{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:.75rem;align-items:start}
:is(.hero--home,.cp-moteur) .ideal-free{grid-column:1;grid-row:1}
:is(.hero--home,.cp-moteur) .ideal-submit{grid-column:2;grid-row:1;min-height:54px;max-width:290px}
:is(.hero--home,.cp-moteur) .ideal-criteria,:is(.hero--home,.cp-moteur) .ideal-chips,:is(.hero--home,.cp-moteur) .ideal-status,:is(.hero--home,.cp-moteur) .ideal-confirm,.hero--home noscript{grid-column:1/-1}
:is(.hero--home,.cp-moteur) .ideal-chips:empty,.ideal-status:empty{display:none}
:is(.hero--home,.cp-moteur) .ideal:has([data-mode="criteres"].is-active) .ideal-criteria{grid-row:1}
:is(.hero--home,.cp-moteur) .ideal:has([data-mode="criteres"].is-active) .ideal-criteria>summary{display:none}
:is(.hero--home,.cp-moteur) .ideal:has([data-mode="criteres"].is-active) .ideal-submit{grid-column:1/-1;grid-row:auto;justify-self:end;max-width:none}
.ideal-calendar.flatpickr-calendar{border:1px solid var(--line);border-radius:12px;padding:.5rem;box-shadow:0 12px 35px #10101426;width:324px;max-width:calc(100vw - 20px)}
.ideal-calendar .flatpickr-days,.ideal-calendar .dayContainer{width:100%;min-width:0;max-width:100%}
.ideal-calendar .flatpickr-day.selected,.ideal-calendar .flatpickr-day.startRange,.ideal-calendar .flatpickr-day.endRange{background:var(--orange);border-color:var(--orange)}
.ideal-calendar .flatpickr-day.inRange{background:var(--orange-050);border-color:var(--orange-050);box-shadow:-5px 0 0 var(--orange-050),5px 0 0 var(--orange-050)}
.ideal-calendar .flatpickr-day.today{border-color:var(--orange)}
@media(max-width:760px){
 :is(.hero--home,.cp-moteur) .ideal{padding:1rem}:is(.hero--home,.cp-moteur) .ideal-form{grid-template-columns:1fr}
 :is(.hero--home,.cp-moteur) .ideal-free{grid-column:1;grid-row:auto}:is(.hero--home,.cp-moteur) .ideal-submit{grid-column:1;grid-row:auto;max-width:none;order:5}
 :is(.hero--home,.cp-moteur) .ideal-criteria{order:1}:is(.hero--home,.cp-moteur) .ideal-chips{order:2}:is(.hero--home,.cp-moteur) .ideal-status{order:3}:is(.hero--home,.cp-moteur) .ideal-confirm{order:4}
 .ideal-fields{gap:.8rem .6rem}.ideal-field-label{font-size:.76rem}.ideal-fields select,.ideal-fields input{font-size:16px}
 .ideal-edit{padding:0 1rem}.ideal-edit-toggle{width:100%;justify-content:center}
}

.ideal-date-clear{display:block;width:100%;border:0;border-top:1px solid var(--line);background:#fff;padding:.7rem;font:600 .85rem var(--font-body);color:var(--brand-d);cursor:pointer;margin-top:.4rem}

@media(max-width:760px){.ideal-range{grid-column:span 2}}


/* Menus de critères : mêmes couleurs, compteurs et hiérarchie sur tous les appareils. */
.ideal-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%;min-width:0;min-height:48px;padding:.8rem;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:.88rem;text-align:left;cursor:pointer}
.ideal-select-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ideal-select-trigger>i{color:var(--orange);font-size:.65rem;flex-shrink:0}.ideal-select-trigger[aria-expanded=true]{outline:2px solid var(--orange);outline-offset:1px}
:is(.hero--home,.cp-moteur) .ideal-select-trigger{background:rgba(255,255,255,.96);border-color:transparent}
.ideal-select-menu{position:fixed;z-index:11000;display:flex;flex-direction:column;overflow:hidden;border:1px solid #dedee4;border-radius:10px;background:#fff;color:#19191e;box-shadow:0 10px 30px #10101426;font-family:var(--font-body,Arial,sans-serif);text-align:left}
.ideal-select-menu[hidden]{display:none}.ideal-select-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.65rem .8rem;border-bottom:1px solid #eeeef2;font-size:.85rem;flex-shrink:0}
.ideal-select-head>button{border:0;background:transparent;color:#595960;font:inherit;font-size:1.5rem;width:32px;height:32px;cursor:pointer}
.ideal-select-search{flex-shrink:0;min-width:0;width:calc(100% - 1.4rem);margin:.65rem .7rem;padding:.6rem .7rem;border:1px solid #dcdce3;border-radius:7px;background:#fff;color:#19191e;font:inherit;font-size:16px}
.ideal-select-search[hidden]{display:none}.ideal-select-options{overflow:auto;overscroll-behavior:contain;min-height:0;padding:.35rem;scroll-padding:.35rem}
.ideal-option{display:flex;align-items:center;gap:.5rem;width:100%;min-height:42px;padding:.6rem .65rem;border:0;border-radius:6px;background:#fff;color:#24242b;text-align:left;font:inherit;font-size:.88rem;cursor:pointer}
.ideal-option-label{flex:1;line-height:1.4;overflow-wrap:anywhere}.ideal-option-count{flex-shrink:0;min-width:24px;text-align:center;padding:.12rem .4rem;border-radius:20px;background:#fff0e6;color:#b64200;font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums}
.ideal-option[aria-selected=true],.ideal-option:not(:disabled):hover{background:#fff0e6}.ideal-option[aria-selected=true]{font-weight:700}.ideal-option-check{color:#c54a00;font-weight:700}
.ideal-option:disabled{color:#92929b;cursor:default}.ideal-option:disabled .ideal-option-count{background:#f2f2f5;color:#71717a}
.ideal-option-group{padding:.7rem .65rem .3rem;color:#666671;font-size:.73rem;font-weight:700;border-top:1px solid #eeeef2}.ideal-option-group:first-child{border-top:0}
.ideal-select-empty{margin:.6rem .8rem 1rem;font-size:.85rem;color:#666671}.ideal-select-menu button:focus-visible,.ideal-select-search:focus-visible{outline:2px solid var(--orange);outline-offset:-2px}
@media(max-width:760px){.ideal-select-trigger{font-size:16px}}

/* Modifier la recherche appartient à la barre de résultats, sans ligne dédiée. */
.has-search-editor .results-bar>.ideal-edit-toggle{margin:0;max-width:none;flex:0 0 auto}
.has-search-editor .ideal-edit-toggle{padding:.5rem .7rem;font-size:.82rem;white-space:nowrap}
.has-search-editor .ideal-edit-toggle>i:last-child{margin-left:.2rem}
@media(max-width:760px){
 .has-search-editor .results-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:center}
 .has-search-editor .results-count{grid-column:1;margin:0;min-width:0;width:auto;flex-basis:auto}
 .has-search-editor .results-bar>.ideal-edit-toggle{grid-column:2;grid-row:1}
 .has-search-editor .ideal-edit-label{display:none}
 .has-search-editor .results-fav{grid-column:1;justify-self:start}
 .has-search-editor .sort{grid-column:2;min-width:0}
 .has-search-editor .sort select{max-width:180px}
}
@media(max-width:760px){
 .has-search-editor .results-bar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .has-search-editor .results-count{display:flex;flex-direction:row;flex-wrap:wrap;gap:.2rem .3rem;align-items:baseline;font-size:.85rem}
 .has-search-editor .results-total{flex-basis:100%;font-size:.75rem}
 .has-search-editor .results-promesse{display:none}
 .has-search-editor .results-bar>.ideal-edit-toggle{justify-self:end}
 .has-search-editor .ideal-edit-toggle{width:auto}
 .has-search-editor .sort{width:100%;justify-content:flex-end}
 .has-search-editor .sort-lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .has-search-editor .sort-field{width:100%;min-width:0}
 .has-search-editor .sort select{width:100%;min-width:0;max-width:100%;padding-left:.55rem;padding-right:1.6rem;font-size:.76rem}
 .has-search-editor .results-fav{font-size:.8rem;padding:.5rem .65rem}
}

.has-search-editor>.ideal-edit{margin:0;padding:0 1rem 1rem;max-width:none}
.ideal-edit-toggle{font-family:inherit;color:var(--ink)}
@media(min-width:1100px){
 .has-search-editor .results-bar{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:.7rem}
 .has-search-editor .results-count{min-width:0}
 .has-search-editor .results-promesse{display:none}
}
