.cmcs-v5{--g:#556B2F;--soft:#f7f7f2;--soft2:#eef4e3;--b:rgba(85,107,47,.35)}
.cmcs-intro,.cmcs-v5 form.checkout{background:var(--soft);border:1px solid var(--b);border-left:5px solid var(--g);border-radius:12px;padding:22px;margin:20px auto;box-shadow:0 2px 8px rgba(0,0,0,.05);max-width:1180px}
.cmcs-intro h1{color:var(--g);margin:0 0 8px}
.cmcs-v5 form.checkout{display:grid;grid-template-columns:minmax(0,680px) minmax(320px,380px);gap:28px;align-items:start}
.cmcs-v5 #customer_details{grid-column:1;grid-row:1 / span 3;width:100%}
.cmcs-v5 #order_review_heading{grid-column:2;grid-row:1;margin:0 0 10px!important;color:var(--g)!important}
.cmcs-v5 #order_review{grid-column:2;grid-row:2;background:#fff;border:1px solid var(--b);border-radius:10px;padding:16px;position:sticky;top:18px}
.cmcs-card,.cmcs-v5 .woocommerce-billing-fields,.cmcs-v5 .woocommerce-shipping-fields,.cmcs-v5 .woocommerce-additional-fields{background:rgba(255,255,255,.35);border:1px solid rgba(85,107,47,.18);border-radius:10px;padding:16px;margin-bottom:18px}
.cmcs-card h2,.cmcs-v5 h3{color:var(--g)!important;margin-top:0!important}
.cmcs-help{background:#fff;border:1px solid #e4e4e4;border-radius:8px;padding:10px;font-size:13px;line-height:1.5}
.cmcs-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.cmcs-type{background:#fff;border:2px solid #ddd;border-radius:9px;padding:14px;text-align:left;cursor:pointer}
.cmcs-type.is-active{background:var(--soft2);border-color:var(--g)}
.cmcs-type strong,.cmcs-type span{display:block}.cmcs-type span{font-size:13px;color:#555}
.cmcs-inline,.cmcs-relay-search{display:grid;grid-template-columns:minmax(0,1fr) 125px;gap:10px;align-items:end}
.cmcs-relay-search{grid-template-columns:1fr 1fr 135px}
.cmcs-btn{background:var(--g);color:#fff;border:0;border-radius:6px;min-height:42px;padding:0 14px;font-weight:700;cursor:pointer;white-space:nowrap}
.cmcs-status,.cmcs-mr-status{padding:10px;border-radius:8px;font-weight:600;margin:10px 0}
.cmcs-status.ok,.cmcs-mr-status.ok{background:var(--soft2);color:var(--g);border:1px solid var(--g)}
.cmcs-status.err,.cmcs-mr-status.err{background:#ffecec;color:#a00000;border:1px solid #d66}
.cmcs-mr-results{display:grid;gap:10px;margin-top:12px}
.cmcs-mr-result{background:#fff;border:1px solid #ddd;border-radius:9px;padding:12px;cursor:pointer}
.cmcs-mr-result:hover,.cmcs-mr-result.selected{border-color:var(--g);background:var(--soft2)}
.cmcs-mr-result strong,.cmcs-mr-result span{display:block}.cmcs-mr-result span{font-size:13px;color:#555}
.cmcs-v5 input.input-text,.cmcs-v5 input[type=text],.cmcs-v5 input[type=email],.cmcs-v5 input[type=tel],.cmcs-v5 select,.cmcs-v5 textarea{border:1px solid #999!important;border-radius:6px!important;min-height:42px;background:#fff!important;box-shadow:none!important}
.cmcs-v5 .form-row{float:none!important;width:100%!important;margin-bottom:12px!important}
.cmcs-v5 #place_order{background:var(--g)!important;color:#fff!important;border-radius:6px!important;font-weight:700!important}
.cmcs-relay-card{display:none}.cmcs-relay-card.is-visible{display:block;grid-column:1;grid-row:4}
@media(max-width:980px){.cmcs-v5 form.checkout{display:block}.cmcs-v5 #order_review{position:static}.cmcs-relay-card{grid-column:auto;grid-row:auto}}
@media(max-width:700px){.cmcs-choice,.cmcs-inline,.cmcs-relay-search{grid-template-columns:1fr}.cmcs-btn{width:100%}} .cmcs-mr-result {
position: relative;
padding-right: 150px;
}
.cmcs-mr-result em {
position: absolute;
right: 12px;
top: 50%;
transform: translateY(-50%);
background: #556B2F;
color: #fff;
border-radius: 6px;
padding: 8px 10px;
font-style: normal;
font-size: 12px;
font-weight: 700;
}
@media(max-width:700px){
.cmcs-mr-result { padding-right: 12px; }
.cmcs-mr-result em { position: static; transform: none; display: inline-block; margin-top: 8px; }
} .cmcs-relay-card .cmcs-help {
font-size: 15px;
font-weight: 600;
border-color: rgba(85,107,47,.25);
background: #fff;
}
.cmcs-relay-card h2 {
margin-bottom: 12px !important;
}
.cmcs-mr-status.ok {
background: #eef4e3;
color: #556B2F;
}
.cmcs-mr-result.selected {
outline: 2px solid #556B2F;
}
.cmcs-mr-result.selected::after {
content: "✓ Sélectionné";
display: inline-block;
margin-top: 8px;
color: #556B2F;
font-weight: 700;
}