/* VEPHORA Checkout Pro 2.2.1 — restored 2.2.0 layout + names on one row */
:root{--vcp-black:#0b0b0b;--vcp-border:#e5e5e5;--vcp-muted:#727272;--vcp-soft:#faf8f5}
body.woocommerce-checkout:not(.woocommerce-order-received){overflow-x:hidden}
body.woocommerce-checkout:not(.woocommerce-order-received) .main-page-wrapper{padding-bottom:30px}
body.woocommerce-checkout:not(.woocommerce-order-received) .site-content{width:min(1180px,calc(100% - 32px));max-width:1180px;margin-inline:auto}
body.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,430px);gap:34px;align-items:start;width:100%;max-width:100%;min-width:0}

/* Progress */
.vephora-progress{display:flex;align-items:flex-start;justify-content:center;width:min(760px,100%);margin:0 auto 24px;padding:6px 0}
.vephora-progress span{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:120px;color:#aaa;font-size:12px;font-weight:600;text-align:center}
.vephora-progress span b{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#d8d8d8;color:#fff;font-size:12px}
.vephora-progress span.is-done b,.vephora-progress span.is-active b{background:#111}.vephora-progress span.is-active{color:#111;font-weight:800}
.vephora-progress i{width:105px;height:1px;margin-top:16px;background:#dedede}

/* Coupon */
body.woocommerce-checkout .woocommerce-form-coupon-toggle{grid-column:1/-1;width:100%;margin:0 0 8px;text-align:center}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{display:inline-block;margin:0;padding:13px 18px;border:0;border-radius:12px;background:#fafafa;color:#555;font-size:13px}
body.woocommerce-checkout form.checkout_coupon{grid-column:1/-1;max-width:620px;margin:0 auto 20px;padding:18px;border:1px solid var(--vcp-border);border-radius:16px}

/* Summary */
.vephora-order-summary{grid-column:2;grid-row:1 / span 2;position:sticky;top:22px;width:100%;min-width:0;padding:22px;border:1px solid var(--vcp-border);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.045);overflow:hidden}
.vephora-section-heading{display:flex;align-items:center;gap:12px;margin:0 0 16px}.vephora-section-heading h2{margin:0;color:#111;font-size:24px;line-height:1.2;font-weight:800;text-transform:none}.vephora-heading-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid #ece7e0;border-radius:13px;background:#faf8f5;font-size:19px}
body.woocommerce-checkout .vephora-order-summary .woocommerce-checkout-review-order-table{display:table!important;width:100%!important;max-width:100%;margin:0;border:0;table-layout:fixed}
body.woocommerce-checkout #order_review>.woocommerce-checkout-review-order-table,body.woocommerce-checkout #order_review .woocommerce-checkout-review-order-table,body.woocommerce-checkout form.checkout>.woocommerce-checkout-review-order-table{display:none!important}
body.woocommerce-checkout .vephora-order-summary table th,body.woocommerce-checkout .vephora-order-summary table td{min-width:0;padding:14px 0;border-bottom:1px solid #e9e9e9;vertical-align:middle;overflow-wrap:anywhere}
body.woocommerce-checkout .vephora-order-summary table th:first-child,body.woocommerce-checkout .vephora-order-summary table td:first-child{width:70%;padding-right:10px;text-align:left}
body.woocommerce-checkout .vephora-order-summary table th:last-child,body.woocommerce-checkout .vephora-order-summary table td:last-child{width:30%;text-align:right;white-space:normal}
.vephora-product-line{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:11px;min-width:0}.vephora-checkout-thumb{width:54px!important;height:54px!important;max-width:54px;object-fit:contain;padding:3px;border:0;border-radius:9px;background:#fff}.vephora-product-name{min-width:0;color:#171717;font-weight:700;line-height:1.35;overflow-wrap:anywhere}body.woocommerce-checkout .product-quantity{display:block;margin-top:4px;color:#777;font-size:12px}
.vephora-free-shipping-row td,.vephora-delivery-row td{width:100%!important;padding:13px 0!important;text-align:left!important}.vephora-free-shipping{width:100%;min-width:0}.vephora-free-shipping strong{display:block;margin-bottom:8px;color:#696969;font-size:12px;font-weight:700;line-height:1.45;white-space:normal;overflow-wrap:anywhere}.vephora-free-shipping>span{display:block;width:100%;height:7px;overflow:hidden;border-radius:99px;background:#e9e9e9}.vephora-free-shipping>span i{display:block;height:100%;border-radius:99px;background:#111;transition:width .3s}.vephora-delivery-estimate{width:100%;padding:12px;border-radius:11px;background:var(--vcp-soft);color:#555;font-size:12px;line-height:1.45;text-align:center;white-space:normal;overflow-wrap:anywhere}.vephora-delivery-estimate strong{color:#111}.vephora-summary-trust-row,.vephora-summary-trust,.vephora-checkout-trust{display:none!important}

/* Customer form */
body.woocommerce-checkout #customer_details{grid-column:1;width:100%;min-width:0;margin:0!important}
body.woocommerce-checkout #customer_details>.col-1,body.woocommerce-checkout #customer_details>.col-2{float:none!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}
body.woocommerce-checkout .woocommerce-billing-fields{width:100%;padding:0;border:0;background:transparent;box-shadow:none}
body.woocommerce-checkout .woocommerce-billing-fields>h3{margin:0 0 18px;color:#111;font-size:25px;font-weight:800;text-transform:none}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px 16px;width:100%;max-width:100%;padding:22px;border:1px solid var(--vcp-border);border-radius:18px;background:#fff;box-shadow:0 9px 28px rgba(0,0,0,.04)}
body.woocommerce-checkout .form-row{float:none!important;clear:none!important;width:100%!important;max-width:100%!important;min-width:0;margin:0!important;padding:0!important}
body.woocommerce-checkout .form-row-first,body.woocommerce-checkout .form-row-last{grid-column:span 1!important}
body.woocommerce-checkout .form-row-wide{grid-column:1/-1!important}
body.woocommerce-checkout .form-row label{display:block;margin:0 0 7px;color:#222;font-size:13px;font-weight:700}
body.woocommerce-checkout .form-row .required{color:#d92d20}
body.woocommerce-checkout input.input-text,body.woocommerce-checkout textarea,body.woocommerce-checkout select,body.woocommerce-checkout .select2-container--default .select2-selection--single{display:block!important;box-sizing:border-box!important;width:100%!important;max-width:none!important;min-width:0!important;min-height:52px;margin:0!important;padding:11px 14px!important;border:1px solid #ddd!important;border-radius:12px!important;background:#fff!important;color:#111!important;font-size:16px!important;box-shadow:none!important;transition:border-color .2s,box-shadow .2s}
body.woocommerce-checkout .select2-container{display:block!important;width:100%!important;max-width:none!important}body.woocommerce-checkout textarea{min-height:90px;resize:vertical}body.woocommerce-checkout input.input-text:focus,body.woocommerce-checkout textarea:focus,body.woocommerce-checkout select:focus,body.woocommerce-checkout .select2-container--open .select2-selection--single{outline:0!important;border-color:#111!important;box-shadow:0 0 0 4px rgba(17,17,17,.055)!important}
/* Empty additional-fields container fix */
body.woocommerce-checkout #customer_details>.col-2:empty,body.woocommerce-checkout .woocommerce-additional-fields:empty,body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper:empty,body.woocommerce-checkout .woocommerce-additional-fields:not(:has(.form-row)){display:none!important}

/* Payment */
body.woocommerce-checkout #order_review{grid-column:1;width:100%;min-width:0;margin:18px 0 0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body.woocommerce-checkout #order_review_heading,.woocommerce-order-review-heading,.wd-checkout-review-title{display:none!important}
body.woocommerce-checkout #payment{margin:0!important;padding:0!important;border:0!important;background:transparent!important}
body.woocommerce-checkout #payment:before{content:'Mode de paiement';display:block;margin:0 0 16px;color:#111;font-size:25px;font-weight:800}
body.woocommerce-checkout #payment ul.payment_methods{margin:0 0 14px!important;padding:0!important;border:1px solid #e8e1d8!important;border-radius:14px!important;background:#fbf8f4!important}
body.woocommerce-checkout #payment ul.payment_methods li{padding:17px!important}body.woocommerce-checkout #payment div.payment_box{margin:11px 0 0!important;padding:14px!important;border-radius:10px!important;background:#fff!important;color:#666!important}.vephora-secure-note{margin:4px 0 10px;color:#666;font-size:12px;text-align:center}
body.woocommerce-checkout #place_order{width:100%;min-height:58px;margin:0;padding:15px 20px;border:0;border-radius:13px;background:var(--vcp-black)!important;color:#fff!important;font-size:15px;font-weight:800;letter-spacing:.25px;box-shadow:0 10px 24px rgba(0,0,0,.13)}
.vephora-phone-error{display:block;margin-top:6px;color:#d92d20;font-size:12px}.woocommerce-checkout .form-row.woocommerce-invalid #billing_phone{border-color:#d92d20!important;box-shadow:0 0 0 3px rgba(217,45,32,.08)!important}
.vephora-whatsapp-help{position:fixed;right:16px;bottom:92px;z-index:9998;display:flex;flex-direction:column;padding:10px 15px;border-radius:999px;background:#111;color:#fff!important;text-decoration:none;box-shadow:0 10px 28px rgba(0,0,0,.2)}.vephora-whatsapp-help span{font-size:10px;opacity:.75}.vephora-whatsapp-help strong{font-size:13px}

/* Sticky CTA */
.vephora-sticky-order{display:none}
body.woocommerce-checkout:not(.woocommerce-order-received) .wd-toolbar{display:none!important}

@media(max-width:900px){
 body.woocommerce-checkout:not(.woocommerce-order-received){padding-bottom:96px}
 body.woocommerce-checkout:not(.woocommerce-order-received) .site-content{width:calc(100% - 20px);margin-inline:auto;padding-inline:0!important}
 body.woocommerce-checkout form.checkout{display:flex!important;flex-direction:column!important;gap:22px!important;width:100%!important;max-width:100%!important;min-width:0!important}
 .vephora-order-summary{order:1;position:static;width:100%;max-width:100%;min-width:0;padding:18px 16px;border-radius:17px}
 body.woocommerce-checkout #customer_details{order:2;width:100%;min-width:0}
 body.woocommerce-checkout #order_review{order:3;width:100%;min-width:0;margin-top:0!important}
 body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{padding:18px 16px;gap:14px 12px;border-radius:17px}
 .vephora-sticky-order{position:fixed;left:0;right:0;bottom:0;z-index:99999;display:flex;align-items:center;gap:12px;padding:10px max(12px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));border-top:1px solid #e6e6e6;background:rgba(255,255,255,.97);box-shadow:0 -9px 30px rgba(0,0,0,.12);backdrop-filter:blur(12px)}
 .vephora-sticky-total{flex:0 0 92px;min-width:0}.vephora-sticky-total small{display:block;margin-bottom:2px;color:#555;font-size:11px;font-weight:700}.vephora-sticky-total strong{display:block;color:#111;font-size:17px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .vephora-sticky-submit{flex:1;min-width:0;min-height:58px;padding:12px 16px;border:0;border-radius:12px;background:#090909;color:#fff;font-size:13px;font-weight:800;letter-spacing:.2px;white-space:nowrap;box-shadow:0 8px 20px rgba(0,0,0,.15)}.vephora-sticky-submit span{margin-left:9px;font-size:20px;vertical-align:-2px}
 body.woocommerce-checkout #payment .place-order #place_order{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;clip-path:inset(50%)!important}
}

@media(max-width:600px){
 .vephora-progress{width:100%;margin:0 auto 18px;padding:6px 0;overflow:hidden}.vephora-progress span{min-width:78px;font-size:10px;gap:6px}.vephora-progress span b{width:28px;height:28px;font-size:10px}.vephora-progress i{flex:1;min-width:18px;width:auto;margin:14px -8px 0}
 body.woocommerce-checkout .woocommerce-form-coupon-toggle{margin-bottom:18px}body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{max-width:100%;padding:12px 14px;font-size:12px;line-height:1.5}
 .vephora-section-heading h2,body.woocommerce-checkout .woocommerce-billing-fields>h3,body.woocommerce-checkout #payment:before{font-size:21px}
 .vephora-heading-icon{flex-basis:38px;width:38px;height:38px}
 body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 body.woocommerce-checkout .form-row label{font-size:12px}
 body.woocommerce-checkout .vephora-order-summary table th,body.woocommerce-checkout .vephora-order-summary table td{padding:12px 0;font-size:12px}body.woocommerce-checkout .vephora-order-summary table th:first-child,body.woocommerce-checkout .vephora-order-summary table td:first-child{width:69%;padding-right:7px}body.woocommerce-checkout .vephora-order-summary table th:last-child,body.woocommerce-checkout .vephora-order-summary table td:last-child{width:31%;padding-left:3px;font-size:12px}
 .vephora-product-line{grid-template-columns:44px minmax(0,1fr);gap:8px}.vephora-checkout-thumb{width:44px!important;height:44px!important;max-width:44px}.vephora-product-name{font-size:12px;line-height:1.3}.vephora-free-shipping strong,.vephora-delivery-estimate{font-size:11px}
}

@media(max-width:430px){
 body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:13px 10px;padding-inline:14px}
 body.woocommerce-checkout .form-row-first,body.woocommerce-checkout .form-row-last{grid-column:span 1!important}
 body.woocommerce-checkout .form-row-wide{grid-column:1/-1!important}
 .vephora-sticky-total{flex-basis:78px}.vephora-sticky-total strong{font-size:15px}.vephora-sticky-submit{font-size:12px;padding-inline:12px}
}
