:root{--bodq-shadow:0 16px 45px rgba(50,25,75,.10)}
.bodq-wrap{--bodq-accent:#431078;max-width:1050px;margin:34px auto;font-family:inherit;color:#28212f}.bodq-wrap *{box-sizing:border-box}
.bodq-seo-hero{--bodq-accent:#431078;margin:20px 0 34px;padding:34px;border-radius:22px;background:linear-gradient(145deg,#f7f3fb 0%,#fff 70%);border:1px solid #ece5f2}.bodq-seo-hero h1{margin-top:0}.bodq-seo-lead{font-size:18px;line-height:1.7;max-width:900px}
.bodq-illustrations{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}.bodq-illustration-card{background:#fff;border:1px solid #ece6f0;border-radius:16px;padding:20px;display:grid;grid-template-columns:54px 1fr;grid-template-rows:auto auto;column-gap:14px;box-shadow:0 8px 25px rgba(48,27,68,.05)}.bodq-illustration-card .bodq-icon{grid-row:1/3;width:54px;height:54px;border-radius:14px;background:#f3ebf9;display:grid;place-items:center}.bodq-icon svg{width:34px;height:34px;fill:none;stroke:var(--bodq-accent);stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}.bodq-illustration-card strong{align-self:end;font-size:16px}.bodq-illustration-card span{font-size:13px;color:#726b78;margin-top:3px}
.bodq-seo-separator{--bodq-accent:#431078;display:flex;align-items:center;gap:16px;margin:52px 0 40px;color:var(--bodq-accent);font-size:12px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.bodq-seo-separator:before,.bodq-seo-separator:after{content:"";height:1px;background:linear-gradient(90deg,transparent,#d6c5e4);flex:1}.bodq-seo-separator:after{background:linear-gradient(90deg,#d6c5e4,transparent)}
.bodq-seo-content{--bodq-accent:#431078}.bodq-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0 34px}.bodq-steps>div{padding:20px;border:1px solid #e9e2ee;border-radius:16px;background:#fff}.bodq-steps span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--bodq-accent);color:#fff;font-weight:800}.bodq-steps h3{font-size:17px;margin:14px 0 8px}.bodq-steps p{font-size:14px;line-height:1.55;margin:0;color:#675f6d}
.bodq-request-card{background:#f8f6fa;border:1px solid #ece6f0;border-radius:24px;padding:26px;box-shadow:var(--bodq-shadow)}.bodq-form-heading{text-align:center;padding:10px 15px 20px}.bodq-kicker,.bodq-pay-hero>span,.bodq-account-head>span{display:inline-block;font-size:11px;letter-spacing:1.6px;font-weight:800;color:var(--bodq-accent);margin-bottom:8px}.bodq-form-heading h2{margin:3px 0 8px;font-size:30px}.bodq-intro{color:#67606d;max-width:720px;margin:auto;line-height:1.6}
.bodq-form section,.bodq-quote .bodq-note,.bodq-info-card{background:#fff;border:1px solid #e8e1ec;border-radius:var(--bodq-radius,12px);padding:24px;margin:18px 0}.bodq-section-title{display:flex;align-items:center;gap:13px;margin-bottom:20px}.bodq-section-title>span{width:36px;height:36px;border-radius:11px;background:var(--bodq-accent);color:#fff;display:grid;place-items:center;font-weight:800;flex:0 0 auto}.bodq-section-title h3{margin:0;font-size:20px}.bodq-section-title p{margin:3px 0 0;color:#777;font-size:13px}.bodq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.bodq-form label,.bodq-reject-form label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:14px;color:#3d3543}.bodq-form input,.bodq-form select,.bodq-form textarea,.bodq-reject-form input,.bodq-reject-form select,.bodq-reject-form textarea,.bodq-coupon-box input{width:100%;padding:13px 14px;border:1px solid #d8d0dd!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;font:inherit;color:#302936;transition:.18s ease}.bodq-form input:focus,.bodq-form select:focus,.bodq-form textarea:focus,.bodq-coupon-box input:focus{outline:none;border-color:var(--bodq-accent)!important;box-shadow:0 0 0 3px rgba(67,16,120,.09)!important}.bodq-check{display:flex!important;flex-direction:row!important;align-items:center;gap:9px;margin:16px 0}.bodq-check input{width:auto!important}.bodq-dtf-fields{margin-top:15px}.bodq-account-note{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;padding:13px 15px;background:#f6f0fa;border-radius:10px;color:#584d60;font-size:13px}.bodq-account-note strong{color:var(--bodq-accent)}
.bodq-upload{margin-top:20px;padding:20px;border:2px dashed #d8c9e4;border-radius:14px;background:#fbf9fd;display:flex;gap:16px;align-items:flex-start}.bodq-upload-icon{width:42px;height:42px;flex:0 0 42px;border-radius:11px;background:var(--bodq-accent);color:#fff;display:grid;place-items:center;font-size:25px;line-height:1}.bodq-upload strong{display:block;font-size:15px}.bodq-upload p{font-size:12px;color:#756d7b;margin:4px 0 10px;line-height:1.5}.bodq-upload input{padding:7px!important;background:#fff!important}
.bodq-submit-section{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#fff,#f8f2fc)!important}.bodq-submit-section h3{margin:0 0 5px}.bodq-submit-section p{margin:0;color:#716978;font-size:13px;max-width:550px}.bodq-btn{appearance:none!important;border:0!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;min-height:46px!important;padding:12px 20px!important;border-radius:11px!important;font-weight:800!important;font-size:14px!important;line-height:1.2!important;cursor:pointer!important;transition:transform .15s ease,box-shadow .15s ease,background .15s ease!important}.bodq-btn:hover{transform:translateY(-1px);text-decoration:none!important}.bodq-btn-primary{background:var(--bodq-accent)!important;color:#fff!important;box-shadow:0 8px 20px rgba(67,16,120,.22)!important}.bodq-btn-primary:hover{color:#fff!important;box-shadow:0 10px 24px rgba(67,16,120,.3)!important;filter:brightness(1.06)}.bodq-btn-secondary{background:#fff!important;color:var(--bodq-accent)!important;border:1px solid #d6c5e4!important;box-shadow:none!important}.bodq-btn-secondary:hover{background:#f7f2fa!important;color:var(--bodq-accent)!important}
.bodq-alert{padding:18px 20px;border-radius:12px;background:#f7f3fb;border-left:4px solid var(--bodq-accent);margin:18px 0;line-height:1.55}.bodq-alert p:last-child{margin-bottom:0}.bodq-error{background:#fff2f2;border-color:#b32d2e}.bodq-success{background:#effaf2;border-color:#16823c}.bodq-quote{background:#fff;border:1px solid #eee7f1;border-radius:22px;padding:28px;box-shadow:var(--bodq-shadow)}.bodq-quote-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:18px;border-bottom:1px solid #eee8f1}.bodq-quote-head small{color:var(--bodq-accent);font-weight:800;letter-spacing:1px}.bodq-quote-head h2{margin:4px 0 0}.bodq-status{background:#f0e8f8;padding:8px 12px;border-radius:99px;font-weight:800;color:var(--bodq-accent);font-size:12px}.bodq-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bodq-info-card{margin:0}.bodq-info-card h3{margin-top:0}.bodq-table-wrap{overflow-x:auto;border:1px solid #e9e2ed;border-radius:13px;margin:20px 0}.bodq-table{width:100%;border-collapse:collapse;margin:0!important;background:#fff}.bodq-table th{background:#f7f3fa;color:#4c4253;font-size:12px;text-transform:uppercase;letter-spacing:.4px}.bodq-table th,.bodq-table td{padding:14px;border-bottom:1px solid #eee8f0;text-align:left}.bodq-table tbody tr:last-child td{border-bottom:0}.bodq-table small{display:block;color:#777;margin-top:5px;line-height:1.5}.bodq-total{display:flex;justify-content:flex-end;align-items:baseline;gap:18px;font-size:16px;margin:20px 0}.bodq-total strong{font-size:25px;color:var(--bodq-accent)}.bodq-actions{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.bodq-reject-form{background:#fafafa;border:1px solid #ddd;padding:18px;border-radius:12px}.bodq-files{padding:18px 20px;border:1px solid #e7dfeb;background:#faf8fc;border-radius:12px;margin:16px 0}.bodq-files ul{margin:8px 0 0;padding-left:18px}.bodq-files a{color:var(--bodq-accent);font-weight:700}.bodq-product-btn{margin-top:8px!important}
.bodq-pay-wrap{--bodq-accent:#431078;margin:0 0 24px}.bodq-pay-hero{padding:25px 26px;border-radius:18px;background:linear-gradient(135deg,#f6f0fa,#fff);border:1px solid #e8deef}.bodq-pay-hero h2{margin:2px 0 7px;font-size:27px}.bodq-pay-hero p{margin:0;color:#665e6c;line-height:1.55}.bodq-coupon-box{margin-top:14px;padding:18px 20px;border:1px solid #e5dde9;border-radius:14px;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:20px}.bodq-coupon-box>div{display:flex;flex-direction:column;gap:3px}.bodq-coupon-box span{font-size:12px;color:#7a727f}.bodq-coupon-box form{display:flex;gap:8px;align-items:center;margin:0}.bodq-coupon-box input{min-width:200px}.woocommerce-order-pay #order_review,.woocommerce-order-pay .woocommerce-checkout-payment{border-radius:16px!important;overflow:hidden}.woocommerce-order-pay #payment{background:#f8f6fa!important;border:1px solid #e5deea!important}.woocommerce-order-pay #payment .payment_box{background:#fff!important}.woocommerce-order-pay #place_order{background:var(--bodq-accent,#431078)!important;color:#fff!important;border-radius:11px!important;padding:14px 22px!important;font-weight:800!important;border:0!important}
.bodq-account-head{margin-bottom:20px}.bodq-account-head h2{margin:2px 0 6px}.bodq-account-head p{margin:0;color:#716977}
.bodq-admin-files ul{margin:8px 0 0;padding-left:18px}
@media(max-width:900px){.bodq-steps{grid-template-columns:repeat(2,1fr)}.bodq-illustrations{grid-template-columns:1fr}.bodq-illustration-card{grid-template-columns:54px 1fr}.bodq-submit-section,.bodq-coupon-box{align-items:stretch;flex-direction:column}.bodq-coupon-box form{width:100%}.bodq-coupon-box input{min-width:0;flex:1}}
@media(max-width:700px){.bodq-grid,.bodq-columns,.bodq-steps{grid-template-columns:1fr}.bodq-quote-head{align-items:flex-start;flex-direction:column}.bodq-request-card,.bodq-quote,.bodq-seo-hero{padding:18px}.bodq-submit-section{align-items:stretch}.bodq-btn{width:100%}.bodq-table{font-size:13px}.bodq-coupon-box form{flex-direction:column;align-items:stretch}.bodq-total{justify-content:space-between}.bodq-seo-lead{font-size:16px}}
.bodq-shipping-method{margin-top:20px;padding:18px;border:1px solid #e7dfeb;border-radius:14px;background:#fbf9fd}.bodq-shipping-help{margin:7px 0 0;color:#746b79;font-size:12px;line-height:1.5}.bodq-line-details{display:grid!important;gap:4px;margin-top:9px!important}.bodq-line-details span{display:block}.bodq-line-details b{color:#4c4253}.bodq-price-summary{max-width:480px;margin:20px 0 20px auto;border:1px solid #e9e2ed;border-radius:14px;background:#fff;overflow:hidden}.bodq-price-summary>div{display:flex;justify-content:space-between;gap:18px;padding:12px 16px;border-bottom:1px solid #eee8f0}.bodq-price-summary>div:last-child{border-bottom:0}.bodq-price-summary .bodq-grand-total{background:#f7f3fa;align-items:center}.bodq-price-summary .bodq-grand-total strong{font-size:24px;color:var(--bodq-accent)}


/* V0.2.5 — méthodes d'expédition natives WooCommerce */
.bodq-shipping-label{font-weight:700;margin-bottom:10px}.bodq-native-shipping{border:1px solid #e7dfee;border-radius:14px;background:#fff;padding:12px 16px;min-height:54px}.bodq-native-shipping.is-loading{opacity:.7}.bodq-shipping-placeholder{color:#756b7e;padding:8px 2px}.bodq-shipping-methods{list-style:none!important;margin:0!important;padding:0!important}.bodq-shipping-rate-row{padding:12px 4px;border-bottom:1px solid #eee7f2}.bodq-shipping-rate-row:last-child{border-bottom:0}.bodq-shipping-rate-row>input.shipping_method{margin-right:8px}.bodq-shipping-rate-row>label{font-weight:700;cursor:pointer}.bodq-shipping-rate-row .woocommerce-Price-amount{font-weight:700}.bodq-native-shipping .select2-container{max-width:100%}

/* Compatibilité cartes / modales transporteurs sur la page devis */
.bodq-native-shipping,.bodq-checkout-shipping-context,.bodq-shipping-method{overflow:visible!important}
body.bodq-quote-page .modal,body.bodq-quote-page [class*=pickup],body.bodq-quote-page [class*=relay],body.bodq-quote-page [class*=relais]{z-index:999999}

/* V0.4.0 — livraison choisie uniquement dans le vrai Checkout WooCommerce */
.bodq-shipping-notice{display:flex;gap:15px;align-items:flex-start;margin-top:20px;padding:18px 20px;border:1px solid #dfd3e8;border-radius:14px;background:#faf7fc}
.bodq-shipping-notice-icon{font-size:25px;line-height:1}
.bodq-shipping-notice strong{color:#3e2850}.bodq-shipping-notice p{margin:7px 0;line-height:1.55;color:#615868;font-size:13px}
.bodq-shipping-notice .bodq-shipping-free{color:#3f3450}.bodq-shipping-notice .bodq-btn{margin-top:8px}
.bodq-shipping-modal[hidden]{display:none!important}.bodq-shipping-modal{position:fixed;z-index:9999999;inset:0;display:grid;place-items:center;padding:20px}
.bodq-shipping-modal-backdrop{position:absolute;inset:0;background:rgba(22,13,29,.62)}
.bodq-shipping-modal-dialog{position:relative;z-index:1;width:min(620px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:20px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.28)}
.bodq-shipping-modal-dialog h3{font-size:24px;margin:3px 0 8px}.bodq-shipping-modal-dialog>p{line-height:1.55;color:#665e6d}
.bodq-shipping-modal-close{position:absolute;right:14px;top:12px;border:0;background:#f3eef6;width:38px;height:38px;border-radius:50%;font-size:25px;cursor:pointer;color:#3e2850}
.bodq-rates-list{border:1px solid #e7dfeb;border-radius:13px;overflow:hidden;margin:18px 0}.bodq-rates-list>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 15px;border-bottom:1px solid #eee8f0}.bodq-rates-list>div:last-child{border-bottom:0}.bodq-rates-list strong{white-space:nowrap;color:var(--bodq-accent)}
.bodq-rates-free{padding:13px 15px;background:#eff9f1;border-radius:11px;color:#216a36;font-weight:700}.bodq-rates-reassure{padding:13px 15px;background:#f7f3fa;border-radius:11px}
body.bodq-modal-open{overflow:hidden}
.bodq-price-summary>div:nth-child(2) strong{font-size:13px;text-align:right;color:#62576b}
@media(max-width:700px){.bodq-shipping-notice{flex-direction:column}.bodq-shipping-modal-dialog{padding:22px 18px}.bodq-rates-list>div{align-items:flex-start}.bodq-rates-list span{font-size:13px}}

/* V0.5.0 — besoins multi-produits + assistant IA */
.bodq-need-choice{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:8px 0 18px}
.bodq-choice-card{appearance:none;text-align:left;padding:18px;border:1px solid #ddd3e4;border-radius:14px;background:#fff;cursor:pointer;transition:.18s;min-height:92px}
.bodq-choice-card:hover{border-color:var(--bodq-accent);box-shadow:0 8px 24px rgba(67,16,120,.08);transform:translateY(-1px)}
.bodq-choice-card strong{display:block;color:var(--bodq-accent);font-size:15px;margin-bottom:6px}.bodq-choice-card span{font-size:13px;color:#6d6472;line-height:1.4}
.bodq-product-line{border:1px solid #e2d9e8;border-radius:14px;padding:18px;margin:0 0 14px;background:#fcfafd}
.bodq-product-line-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.bodq-product-line-head strong{color:#3e2850;font-size:16px}
.bodq-remove-product{border:0;background:transparent;color:#a12d38;text-decoration:underline;cursor:pointer}
.bodq-add-row{display:flex;align-items:center;gap:12px;margin:14px 0 20px}.bodq-add-row span{font-size:12px;color:#756d79}
.bodq-ai-box{border:1px solid #d9c7e8;background:#faf7fd;border-radius:14px;padding:18px;margin-bottom:18px}.bodq-ai-box textarea{margin-top:7px}
.bodq-ai-actions{display:flex;gap:10px;margin-top:12px}.bodq-ai-status{margin-top:12px;font-size:13px}.bodq-ai-loading{color:#6b4b84}.bodq-ai-success{display:block;padding:11px 13px;border-radius:9px;background:#edf8ef;color:#246437}.bodq-ai-error{display:block;padding:11px 13px;border-radius:9px;background:#fff0f0;color:#9b3030}
.bodq-comment-label>span{font-size:12px;color:#766c7b;font-weight:400}
@media(max-width:700px){.bodq-need-choice{grid-template-columns:1fr}.bodq-add-row{align-items:flex-start;flex-direction:column}}

/* V0.5.1 — indication des choix interprétés par l'IA */
.bodq-ai-line-note{margin-top:10px;padding:10px 12px;border-radius:9px;background:#f3edf8;color:#5a3d72;font-size:12px;line-height:1.45}

/* V0.6.0 — validation du compte avant accès au devis */
.bodq-after-account[hidden]{display:none!important}
.bodq-customer-gate{position:relative}.bodq-customer-gate.is-validated{border-color:#cfe4d4}
.bodq-account-validated{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px;padding:13px 15px;background:#edf8ef;border-radius:10px;color:#27633a}
.bodq-account-validated span{font-size:13px}.bodq-address-title{margin:22px 0 12px;color:#43364b}
.bodq-customer-status{margin-top:12px}.bodq-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.bodq-inline-login{display:inline-block;margin-left:8px;color:inherit!important;font-weight:800;text-decoration:underline}
.bodq-ai-quota{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:11px 14px;margin-bottom:14px;border-radius:10px;background:#f4eff8;color:#563d69;font-size:12px}
.bodq-ai-quota strong{white-space:nowrap}.bodq-choice-card.is-disabled{opacity:.65}
.bodq-validate-customer{margin-top:16px}
@media(max-width:700px){.bodq-ai-quota{align-items:flex-start;flex-direction:column;gap:4px}}

/* V0.6.6 — fichier d'impression obligatoire après acceptation */
.bodq-production-gate{margin-top:22px;padding:20px;border:1px solid #e4d7ed;border-radius:16px;background:#fcf9ff}
.bodq-production-form{margin-top:16px}.bodq-production-form label{display:block;font-weight:700}
.bodq-production-form input[type=file]{display:block;width:100%;margin-top:8px;padding:12px;border:1px dashed #cbb5dd;border-radius:10px;background:#fff}

/* V0.6.7 — fichiers obligatoires par ligne DTF AVANT acceptation */
.bodq-production-before-accept{margin-top:24px}
.bodq-accept-files-form{margin-top:14px}
.bodq-production-line{padding:16px 18px;margin:12px 0;border:1px solid #decde9;border-radius:14px;background:#fcf9ff}
.bodq-production-line-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:12px}
.bodq-production-line-head strong{font-size:16px;color:#431078}
.bodq-production-line-head span{font-size:13px;color:#6c6174}
.bodq-production-line label{display:block;font-weight:700}
.bodq-production-line input[type=file]{display:block;width:100%;margin-top:8px;padding:12px;border:1px dashed #b99bce;border-radius:10px;background:#fff}
.bodq-production-line small{display:block;margin-top:7px;color:#766b7d}
@media(max-width:700px){.bodq-production-line-head{display:block}.bodq-production-line-head span{display:block;margin-top:5px}}
