.makeo-devis-open { display:block; width:100%; margin-top:12px !important; text-align:center; cursor:pointer; }
.makeo-devis-block-button { box-sizing:border-box; }
.makeo-devis-overlay[hidden] { display:none !important; }
.makeo-devis-overlay { position:fixed; inset:0; z-index:999999; background:rgba(0,0,0,.62); display:flex; justify-content:center; align-items:center; padding:20px; overflow-y:auto; box-sizing:border-box; }
.makeo-devis-dialog { position:relative; background:#fff; color:#222; width:100%; max-width:620px; max-height:calc(100vh - 40px); overflow-y:auto; border-radius:10px; padding:28px; box-sizing:border-box; box-shadow:0 15px 55px rgba(0,0,0,.2); }
.makeo-devis-dialog h2 { margin:0 35px 10px 0; font-size:24px; }
.makeo-devis-dialog p { margin:0 0 18px; }
.makeo-devis-close { position:absolute; top:12px; right:15px; width:34px; height:34px; background:transparent; color:#444; border:0; font-size:30px; line-height:1; cursor:pointer; padding:0; }
.makeo-devis-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.makeo-devis-grid label { display:block; font-size:14px; font-weight:600; }
.makeo-devis-grid input { box-sizing:border-box; display:block; width:100%; min-height:42px; padding:9px 11px; margin-top:6px; border:1px solid #ccc; border-radius:5px; background:#fff; color:#222; font:inherit; }
.makeo-devis-grid input:focus { outline:2px solid #2271b1; outline-offset:1px; }
.makeo-optional { font-size:12px; color:#666; font-weight:400; }
.makeo-devis-hp { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
.makeo-devis-feedback { margin:15px 0 !important; min-height:0; }
.makeo-devis-feedback.is-error { color:#a40000; }
.makeo-devis-feedback.is-success { color:#17652b; }
.makeo-devis-submit { width:100%; cursor:pointer; }
.makeo-devis-no-scroll { overflow:hidden; }
@media(max-width:540px) { .makeo-devis-grid { grid-template-columns:1fr; } .makeo-devis-dialog { padding:20px; } }

/* Boutons de demande de devis : anthracite, indépendants du thème. */
.woocommerce .makeo-devis-open,
.woocommerce .makeo-devis-open:hover,
.woocommerce .makeo-devis-open:focus,
.makeo-devis-overlay .makeo-devis-submit,
.makeo-devis-overlay .makeo-devis-submit:hover,
.makeo-devis-overlay .makeo-devis-submit:focus {
    background: #303030 !important;
    background-color: #303030 !important;
    border-color: #303030 !important;
    color: #fff !important;
}
.makeo-devis-product-button { margin-top: 12px !important; clear: both; }
.makeo-devis-consent { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; line-height: 1.5; margin: 20px 0 12px; cursor: pointer; }
.makeo-devis-consent input[type="checkbox"] { margin: 3px 0 0; width: 18px; height: 18px; flex-shrink: 0; accent-color: #303030; }
.makeo-devis-consent span { flex: 1; }

/* Vue de confirmation : le message remplace entièrement le formulaire. */
.makeo-devis-dialog [hidden] { display: none !important; }
.makeo-devis-confirmation { margin: 20px 0 8px !important; font-size: 17px; font-weight: 600; text-align: center; color: #17652b; }

/* Deux actions au même niveau, en panier et en fiche produit. */
.makeo-devis-actions { display:flex; gap:10px; width:100%; clear:both; margin-top:12px; flex-wrap:wrap; }
.makeo-devis-actions .makeo-devis-open { flex:1 1 190px; width:auto !important; margin-top:0 !important; box-sizing:border-box; }
.woocommerce .makeo-devis-actions .makeo-callback-open,
.woocommerce .makeo-devis-actions .makeo-callback-open:hover,
.woocommerce .makeo-devis-actions .makeo-callback-open:focus { background:#142b49 !important; background-color:#142b49 !important; border-color:#142b49 !important; color:#fff !important; }
.makeo-devis-grid [hidden] { display:none !important; }
