/* Ordiland — configurateur et fiches config. Encre #0B2436, pétrole #0E5C73, bleu #0077C8, turquoise #00A6B8, fond #F2F5F8, filets #DDE4EB. */
.ordcfg__intro { max-width: 60rem; color: #3A4A58; }
.ordcfg__presets { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; margin: 1rem 0 1.5rem; padding: .9rem 1rem; background: #F2F5F8; border: 1px solid #DDE4EB; border-radius: 12px; }
.ordcfg__presets label { font-weight: 700; color: #0B2436; margin: 0; }
.ordcfg__presets select { max-width: 32rem; flex: 1 1 18rem; }
.ordcfg__layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 1.5rem; align-items: start; }
@media (max-width: 991.98px) { .ordcfg__layout { grid-template-columns: 1fr; } }

.ordcfg-step { border: 1px solid #DDE4EB; border-radius: 12px; background: #fff; margin-bottom: .75rem; overflow: hidden; }
.ordcfg-step.is-open { border-color: #0077C8; box-shadow: 0 6px 18px rgba(0, 119, 200, .10); }
.ordcfg-step__head { display: grid; grid-template-columns: 2rem minmax(8rem, 14rem) 1fr; gap: .75rem; align-items: center; width: 100%; padding: .85rem 1rem; border: 0; background: none; text-align: left; cursor: pointer; color: #0B2436; }
.ordcfg-step__num { width: 2rem; height: 2rem; border-radius: 50%; display: grid; place-items: center; background: #EAF3FA; color: #0B5A94; font-weight: 700; }
.ordcfg-step.is-done .ordcfg-step__num { background: #0E5C73; color: #fff; }
.ordcfg-step__title { font-weight: 700; }
.ordcfg-step__title em { font-weight: 400; color: #5A6B7A; font-style: normal; font-size: .85em; }
.ordcfg-step__choice { color: #3A4A58; font-size: .9rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ordcfg-step:not(.is-done) .ordcfg-step__choice { color: #8595A3; }
@media (max-width: 575.98px) { .ordcfg-step__head { grid-template-columns: 2rem 1fr; } .ordcfg-step__choice { grid-column: 2; white-space: normal; } }
.ordcfg-step__body { padding: 0 1rem 1rem; }
.ordcfg-step__tools { display: flex; gap: .5rem; align-items: center; }
.ordcfg-step__tools input { flex: 1; }
.ordcfg-step__hint { font-size: .8rem; color: #5A6B7A; margin: .5rem 0; }
.ordcfg-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .4rem; max-height: 30rem; overflow-y: auto; }
.ordcfg-list li { display: flex; align-items: center; gap: .5rem; }
.ordcfg-item { flex: 1; display: grid; grid-template-columns: 56px 1fr auto; gap: .75rem; align-items: center; padding: .4rem .6rem; border: 1px solid #DDE4EB; border-radius: 10px; background: #fff; text-align: left; cursor: pointer; color: #17232E; }
.ordcfg-item:hover { border-color: #0077C8; }
.ordcfg-item.is-selected { border-color: #0E5C73; background: #EAF6F8; box-shadow: inset 0 0 0 1px #0E5C73; }
.ordcfg-item img, .ordcfg-noimg { width: 56px; height: 56px; object-fit: contain; border-radius: 6px; background: #fff; }
.ordcfg-noimg { display: block; background: #EDF3F8; }
.ordcfg-item__name { font-size: .88rem; line-height: 1.3; }
.ordcfg-item__price { font-family: 'Space Grotesk', system-ui, sans-serif; color: #0B2436; white-space: nowrap; }
.ordcfg-item__link { font-size: .78rem; color: #0077C8; white-space: nowrap; }

.ordcfg__summary { position: sticky; top: 1rem; padding: 1.1rem; border-radius: 14px; background: #fff; border: 1px solid #DDE4EB; box-shadow: 0 10px 28px rgba(11, 36, 54, .08); }
.ordcfg__lines { list-style: none; padding: 0; margin: 0 0 .75rem; font-size: .85rem; }
.ordcfg__lines li { display: flex; justify-content: space-between; gap: .75rem; padding: .35rem 0; border-bottom: 1px dashed #DDE4EB; }
.ordcfg__lines strong { white-space: nowrap; }
.ordcfg__forfait { color: #0E5C73; }
.ordcfg__warnings p { margin: .4rem 0; padding: .45rem .6rem; border-radius: 8px; font-size: .82rem; background: #FFF6E6; color: #7A4B00; }
.ordcfg__warnings p.is-block { background: #FDECEC; color: #A11A1A; }
.ordcfg__warnings p.is-todo { background: #EAF3FA; color: #0B5A94; }
.ordcfg__total { display: flex; justify-content: space-between; align-items: baseline; margin: .9rem 0; font-size: 1.05rem; }
.ordcfg__total strong { font-family: 'Space Grotesk', system-ui, sans-serif; font-size: 1.5rem; color: #0B2436; }
.ordcfg__note { font-size: .78rem; color: #5A6B7A; margin: .75rem 0 0; }

/* Fiche d'une config */
.ordcfg-info { margin: 1rem 0; padding: .9rem 1rem; border-radius: 12px; background: #F2F5F8; border: 1px solid #DDE4EB; }
.ordcfg-info__list { margin: 0 0 .75rem; padding-left: 1.1rem; font-size: .9rem; color: #0B2436; }
.ordcfg-comp { margin: 2rem 0; }
.ordcfg-comp__table { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid #DDE4EB; border-radius: 12px; overflow: hidden; }
.ordcfg-comp__table th, .ordcfg-comp__table td { padding: .6rem .8rem; border-bottom: 1px solid #EEF2F6; vertical-align: middle; font-size: .9rem; }
.ordcfg-comp__table th { width: 13rem; color: #0E5C73; font-weight: 700; background: #F7FAFC; }
.ordcfg-comp__table td img { vertical-align: middle; margin-right: .5rem; object-fit: contain; }
@media (max-width: 575.98px) { .ordcfg-comp__table th { width: auto; display: block; border-bottom: 0; padding-bottom: 0; background: none; } .ordcfg-comp__table td { display: block; } }
