 .imc-app{--imc-ink:#172033;--imc-muted:#647084;--imc-line:#e1e6ee;--imc-accent:#3768f5;--imc-soft:#f5f7fb;color:var(--imc-ink);max-width:1040px;margin:24px auto;font-family:inherit}
.imc-app *{box-sizing:border-box}.imc-intro{padding:30px;border:1px solid var(--imc-line);border-radius:22px;background:linear-gradient(135deg,#f8faff,#fff);margin-bottom:20px}
.imc-eyebrow,.imc-kicker{font-size:.76rem;letter-spacing:.12em;font-weight:800;color:var(--imc-accent)}
.imc-intro h2{font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.12;margin:10px 0}.imc-intro p{color:var(--imc-muted);max-width:760px}
.imc-progress{height:7px;background:#e6eaf2;border-radius:10px;overflow:hidden;margin-top:24px}.imc-progress span{display:block;width:20%;height:100%;background:var(--imc-accent);border-radius:10px;transition:width .25s}
.imc-progress-caption{display:flex;justify-content:space-between;align-items:center;margin-top:9px;color:var(--imc-muted);font-size:.85rem}
.imc-link{background:none;border:0;color:var(--imc-accent);text-decoration:underline;cursor:pointer}
.imc-wizard{border:1px solid var(--imc-line);border-radius:22px;padding:clamp(18px,4vw,34px);background:#fff;box-shadow:0 12px 36px rgba(20,32,55,.05)}
.imc-step{display:none}.imc-step.is-active{display:block;animation:imc-in .22s ease-out}@keyframes imc-in{from{opacity:.45;transform:translateY(5px)}to{opacity:1;transform:none}}
.imc-step h3{font-size:clamp(1.35rem,3vw,2rem);margin:7px 0 10px}.imc-help{font-size:.92rem;color:var(--imc-muted);line-height:1.55}
.imc-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}
.imc-choice{display:grid;grid-template-columns:34px 1fr;column-gap:10px;align-items:center;border:1px solid var(--imc-line);border-radius:14px;padding:14px;cursor:pointer;transition:border-color .15s,background .15s}
.imc-choice:has(input:checked){border-color:var(--imc-accent);background:#f3f6ff;box-shadow:inset 0 0 0 1px var(--imc-accent)}
.imc-choice input{grid-row:span 2;accent-color:var(--imc-accent)}.imc-choice-icon{font-size:1.45rem;grid-column:2}.imc-choice strong{grid-column:2}.imc-choice small{grid-column:2;color:var(--imc-muted);font-size:.83rem;line-height:1.4;margin-top:3px}
.imc-field{margin:18px 0}.imc-field>label{display:block;font-weight:700;margin-bottom:7px}.imc-field input:not([type=checkbox]),.imc-field select,.imc-field textarea{width:100%;min-height:45px;border:1px solid #cfd6e2;border-radius:10px;padding:11px 12px;background:#fff;color:var(--imc-ink);font:inherit}.imc-field textarea{resize:vertical}
.imc-inline-checks{display:flex;flex-wrap:wrap;gap:10px}.imc-inline-checks label{border:1px solid var(--imc-line);border-radius:10px;padding:10px 12px;display:flex;gap:7px;align-items:center}
.imc-inline-checks input,.imc-consent input{accent-color:var(--imc-accent)}.imc-note{background:var(--imc-soft);border-left:3px solid #8b9bb7;padding:13px 15px;border-radius:7px;color:#4b5870;font-size:.9rem;line-height:1.5;margin:18px 0}
.imc-navigation{display:flex;justify-content:space-between;gap:12px;margin-top:25px}.imc-button{appearance:none;border:1px solid var(--imc-accent);border-radius:11px;background:var(--imc-accent);color:#fff!important;padding:12px 19px;font-weight:750;cursor:pointer;text-decoration:none;line-height:1.3;display:inline-flex;justify-content:center;align-items:center;min-height:45px}
.imc-button:hover{filter:brightness(.95)}.imc-button:disabled{opacity:.45;cursor:not-allowed}.imc-button-secondary{background:#fff;color:var(--imc-ink)!important;border-color:var(--imc-line)}.imc-submit{width:100%;margin-top:14px}.imc-navigation [hidden]{display:none}
.imc-results{display:grid;grid-template-columns:1fr;gap:15px;margin:20px 0}.imc-result-card{border:1px solid var(--imc-line);border-radius:17px;padding:20px;position:relative;overflow:hidden}.imc-result-card.is-top{border-color:#a7bafc}.imc-result-card.is-selected{box-shadow:0 0 0 2px var(--imc-accent);background:#fbfcff}
.imc-recommend-badge{display:inline-block;font-size:.75rem;font-weight:800;color:#2d50bb;background:#edf1ff;padding:6px 9px;border-radius:20px;margin-bottom:10px}
.imc-result-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.imc-result-head h4{font-size:1.25rem;margin:0 0 5px}.imc-result-head p{margin:0;color:var(--imc-muted);line-height:1.45}.imc-price{font-size:1.1rem;font-weight:850;white-space:nowrap}
.imc-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:18px 0}.imc-specs span{background:var(--imc-soft);border-radius:8px;padding:10px;font-size:.9rem}.imc-specs b{display:block;font-size:.72rem;color:var(--imc-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}
.imc-pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:16px 0}.imc-pros-cons strong{font-size:.9rem}.imc-pros-cons ul{padding-left:19px;margin:8px 0;color:#4d596d;font-size:.9rem;line-height:1.5}.imc-card-select{width:100%;margin-top:5px}
.imc-quote{margin-top:25px;padding:20px;border-radius:15px;background:#f8f9fc;border:1px solid var(--imc-line)}.imc-quote h4{font-size:1.25rem;margin:0 0 8px}.imc-consent{display:flex;gap:9px;align-items:flex-start;line-height:1.5;margin:15px 0}.imc-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.imc-disclaimer{font-size:.82rem;color:var(--imc-muted);line-height:1.5;margin:14px 5px}.imc-success,.imc-error{max-width:1040px;margin:20px auto;padding:18px 20px;border:1px solid var(--imc-line);border-radius:12px;background:#f6f9ff}.imc-error{background:#fff6f5;border-color:#efc9c4}
@media(min-width:760px){.imc-results{grid-template-columns:repeat(2,minmax(0,1fr))}.imc-result-card:last-child:nth-child(odd){grid-column:1/-1}.imc-result-card:last-child:nth-child(odd) .imc-pros-cons{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.imc-intro{padding:21px}.imc-choice-grid{grid-template-columns:1fr}.imc-choice{padding:12px}.imc-result-head{display:block}.imc-price{display:block;margin-top:10px}.imc-pros-cons{grid-template-columns:1fr;gap:8px}.imc-specs{grid-template-columns:1fr 1fr}.imc-navigation .imc-button{flex:1;padding:11px 12px}.imc-wizard{padding:17px;border-radius:16px}}
@media(prefers-reduced-motion:reduce){.imc-step.is-active{animation:none}.imc-progress span{transition:none}}
/* V1.0.1 — configurateur interactif par composants */
.imc-builder{display:grid;grid-template-columns:minmax(150px,.72fr) minmax(0,2fr);gap:16px;align-items:start;margin:18px 0}
.imc-component-menu,.imc-parts-panel,.imc-build-summary{border:1px solid var(--imc-line);border-radius:15px;background:#fff;padding:16px;min-width:0}
.imc-component-menu h4,.imc-build-summary h4{font-size:1.05rem;margin:0 0 10px}
.imc-category{display:block;text-align:left;width:100%;border:1px solid transparent;background:#fff;border-radius:9px;padding:10px;margin:3px 0;cursor:pointer;color:var(--imc-ink)}
.imc-category span,.imc-category small{display:block}.imc-category span{font-weight:750;font-size:.9rem}.imc-category small{font-size:.72rem;color:var(--imc-muted);margin-top:4px;line-height:1.3}
.imc-category.is-active{background:#f2f5ff;border-color:#b9c7ff;color:#2349bd}
.imc-builder-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.imc-builder-heading h4{margin:5px 0;font-size:1.25rem}.imc-builder-heading p{margin:5px 0 12px;color:var(--imc-muted);font-size:.88rem;line-height:1.45}.imc-total{font-size:1.3rem;white-space:nowrap}
.imc-current-part{padding:13px 14px;background:var(--imc-soft);border-radius:10px;margin:12px 0}.imc-current-part>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--imc-muted);font-weight:800}.imc-current-part h5{font-size:1.02rem;margin:5px 0 8px}.imc-current-part p{font-size:.86rem;line-height:1.5;margin:6px 0;color:#4d596d}
.imc-part-options{display:grid;grid-template-columns:1fr;gap:8px}.imc-part-option{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left;padding:12px;border:1px solid var(--imc-line);border-radius:10px;background:#fff;color:var(--imc-ink);cursor:pointer}.imc-part-option:hover{border-color:#9cafff;background:#fafbff}.imc-part-option.is-active{border-color:var(--imc-accent);background:#f1f4ff;box-shadow:inset 0 0 0 1px var(--imc-accent)}.imc-part-option strong,.imc-part-option small{display:block}.imc-part-option strong{font-size:.9rem;line-height:1.35}.imc-part-option small{font-size:.82rem;color:var(--imc-muted);margin-top:4px}.imc-option-mark{font-size:1.15rem;font-weight:800;color:var(--imc-accent);flex:0 0 auto}
.imc-build-summary{position:sticky;top:20px}.imc-summary-caption{font-size:.78rem;color:var(--imc-muted);line-height:1.45}.imc-build-row{padding:9px 0;border-bottom:1px solid var(--imc-line)}.imc-build-row>span{display:block;font-size:.72rem;color:var(--imc-muted)}.imc-build-row strong{display:block;font-size:.83rem;line-height:1.4;margin:3px 0}.imc-build-row>span:last-child{font-size:.8rem;color:var(--imc-ink)}.imc-build-total{padding:14px 0 3px;display:flex;justify-content:space-between;gap:10px;align-items:baseline}.imc-build-total span{font-size:.85rem}.imc-build-total strong{font-size:1.15rem;white-space:nowrap}
.imc-prebuilt-suggestion{border:1px solid #e4e8ef;border-radius:11px;padding:13px;margin-top:14px;background:#fafbfc;font-size:.86rem;line-height:1.5}.imc-prebuilt-suggestion>strong{font-size:.87rem}.imc-prebuilt-suggestion p{margin:7px 0;color:#4d596d}.imc-prebuilt-suggestion .imc-suggestion-price{font-size:.8rem;color:var(--imc-muted)}
@media(min-width:1000px){.imc-builder{grid-template-columns:165px minmax(0,1fr) 245px}.imc-component-menu{grid-column:1;grid-row:1}.imc-parts-panel{grid-column:2;grid-row:1}.imc-build-summary{grid-column:3;grid-row:1}}
@media(max-width:760px){.imc-builder{grid-template-columns:1fr}.imc-component-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.imc-component-menu h4{grid-column:1/-1}.imc-category{margin:0;padding:9px}.imc-build-summary{position:static}.imc-builder-heading{display:block}.imc-total{display:block;margin:8px 0}.imc-build-row{display:grid;grid-template-columns:80px 1fr auto;gap:7px;align-items:center}.imc-build-row>span,.imc-build-row strong{margin:0}.imc-build-row>span:last-child{text-align:right}}
.imc-extra-options{margin-top:15px;padding-top:12px;border-top:1px solid var(--imc-line)}.imc-extra-options>strong{display:block;font-size:.82rem;margin-bottom:7px}.imc-extra-options label{display:grid;grid-template-columns:16px 1fr auto;gap:6px;align-items:center;margin:7px 0;font-size:.77rem;line-height:1.3}.imc-extra-options input{margin:0;accent-color:var(--imc-accent)}.imc-extra-options small{font-size:.75rem;white-space:nowrap;color:var(--imc-muted)}

/* V1.0.2 — correction responsive du constructeur et suppression de l'affichage tarifaire fixe */
.imc-app{max-width:1280px;width:100%;padding-inline:clamp(8px,2vw,20px)}
.imc-builder{grid-template-columns:minmax(205px,235px) minmax(0,1fr);gap:18px}
.imc-component-menu{width:100%;min-width:0}
.imc-parts-panel{width:100%;min-width:0}
.imc-build-summary{grid-column:1/-1;position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}
.imc-build-summary h4,.imc-build-summary>.imc-summary-caption:first-of-type,.imc-build-summary .imc-build-total,.imc-build-summary>.imc-summary-caption:nth-of-type(2),.imc-extra-options{grid-column:1/-1}
.imc-category{white-space:normal;overflow-wrap:anywhere;line-height:1.35}
.imc-category small{overflow-wrap:anywhere;word-break:normal}
.imc-part-option{min-width:0;overflow-wrap:anywhere}
.imc-part-option>span:first-child{min-width:0}
.imc-part-option strong{overflow-wrap:anywhere;word-break:normal}
.imc-price-pending{font-size:.78rem;color:var(--imc-muted)}
.imc-total{font-size:1rem;white-space:normal}
@media(min-width:1180px){.imc-builder{grid-template-columns:225px minmax(0,1fr) 260px}.imc-build-summary{grid-column:auto;display:block;position:static}}
@media(max-width:900px){.imc-builder{grid-template-columns:1fr}.imc-component-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.imc-component-menu h4{grid-column:1/-1}.imc-build-summary{grid-column:auto;display:block}}
@media(max-width:520px){.imc-app{padding-inline:0}.imc-component-menu{grid-template-columns:1fr}.imc-build-summary{padding:13px}.imc-builder-heading{display:block}.imc-part-option{padding:10px}}
