/* ==========================================================
   CBP Theme-Proof Reset (scoped)
   Fix: fields overflow / weird margins / width issues across themes
   ========================================================== */

.cbp_wrap,
.cbp_wrap * {
  box-sizing: border-box !important;
}

.cbp_wrap {
  width: 100% !important;
  max-width: 760px;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  direction: rtl;
  font-family: inherit !important;
}


.cbp_wrap,
.cbp_wrap input,
.cbp_wrap select,
.cbp_wrap textarea,
.cbp_wrap button,
.cbp_wrap a{font-family:inherit !important;}
/* Direction overrides (new option) */
.cbp_wrap.cbp_dir_ltr{
  direction:ltr !important;
  text-align:left;
}
.cbp_wrap.cbp_dir_ltr input,
.cbp_wrap.cbp_dir_ltr select,
.cbp_wrap.cbp_dir_ltr textarea{
  direction:ltr !important;
  text-align:left;
}
.cbp_wrap.cbp_dir_rtl{
  direction:rtl !important;
}

.cbp_form {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

.cbp_card {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden;
}

/* Force inputs/selects to stay inside the card in ALL themes */
.cbp_wrap input,
.cbp_wrap select,
.cbp_wrap button,
.cbp_wrap textarea {
  max-width: 100% !important;
}

.cbp_field input,
.cbp_field select,
.cbp_field textarea {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
  transform: none !important;
}

/* Some themes style selects strangely */
.cbp_field select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-clip: padding-box;
}

/* Strong select styling (Wilaya/Commune) to resist theme overrides */
.cbp_field select{
  min-height:48px !important;
  height:48px !important;
  padding:12px 44px 12px 14px !important;
  font-size:15px !important;
  line-height:1.2 !important;
  background-color:var(--cbp-input-bg,#fff) !important;
  border:1.5px solid var(--cbp-input-border, rgba(0,0,0,.14)) !important;
  border-radius:var(--cbp-radius-field,14px) !important;
  color:inherit;
  background-image: linear-gradient(45deg, transparent 50%, var(--cbp-primary) 50%), linear-gradient(135deg, var(--cbp-primary) 50%, transparent 50%);
  background-position: calc(100% - 22px) 50%, calc(100% - 16px) 50%;
  background-size: 6px 6px, 6px 6px;
  background-repeat:no-repeat;
}
.cbp_dir_rtl .cbp_field select{
  padding-right:14px !important;
  padding-left:44px !important;
  background-position: 18px 50%, 24px 50%;
}
.cbp_dir_ltr .cbp_field select{
  padding-left:14px !important;
  padding-right:44px !important;
  background-position: calc(100% - 22px) 50%, calc(100% - 16px) 50%;
}


/* Fix buttons baseline in some themes */
.cbp_wrap button {
  line-height: normal !important;
}

/* ==========================================================
   COD Booster Pro — Phase 1 UI (Minimal / Mobile-like on Desktop)
   ========================================================== */

:root{
  --cbp-primary:#b83375;
  --cbp-button:#b83375;
  --cbp-border:rgba(0,0,0,.12);
  --cbp-shadow:0 10px 26px rgba(0,0,0,.06);
}

/* ==========================================================
   Variations UI (modern chips)
   - Default: transparent chip with primary border
   - Selected: filled with primary (same as price accent)
   ========================================================== */

.cbp_variations{ margin: 12px 0 6px; }

.cbp_var_group{ margin: 10px 0; }

.cbp_var_label{
  font-weight: 700;
  font-size: 13px;
  margin: 0 0 8px;
  opacity: .9;
}

.cbp_var_opts,
.cbp_var_options{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.cbp_var_opt{
  appearance:none;
  border:1.8px solid var(--cbp-selection-bg,var(--cbp-primary)) !important;
  background: transparent !important;
  color: var(--cbp-selection-bg,var(--cbp-primary)) !important;
  padding: 10px 14px !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  cursor: pointer;
  box-shadow: none !important;
  transition: transform .08s ease, background-color .18s ease, color .18s ease, border-color .18s ease;
}

.cbp_var_opt:hover{ transform: translateY(-1px); }

.cbp_var_opt[aria-pressed="true"]{
  background: var(--cbp-selection-bg,var(--cbp-primary)) !important;
  border-color: var(--cbp-selection-bg,var(--cbp-primary)) !important;
  color: #fff !important;
}

.cbp_var_opt.cbp_disabled{
  opacity: .35;
  cursor: not-allowed;
  transform:none;
}

.cbp_var_badge{
  margin-top: 8px;
  font-weight: 700;
  color: var(--cbp-selection-bg,var(--cbp-primary)) !important;
}

/* Page wrapper */
.cbp_wrap{
  max-width:760px;
  margin:18px auto;
  padding:0 12px;
  direction: rtl;
  font-family: inherit !important;
}

/* Top header OUTSIDE card */
.cbp_top{
  margin-bottom:10px;
  text-align:center;
}

.cbp_title{
  margin:0;
  font-size:22px;
  font-weight:900;
  color:#111;
  line-height:1.25;
  word-break:break-word;
}

.cbp_price_line{
  margin-top:6px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
}

.cbp_unit_price{
  font-size:20px;
  font-weight:900;
  color:var(--cbp-primary);
}

/* Old price NOT bold, normal size */
.cbp_unit_price del,
.cbp_unit_price del *{
  font-weight: 400 !important;
  opacity: .65;
  font-size: inherit !important;
}
.cbp_unit_price ins,
.cbp_unit_price ins *{
  font-weight: 900 !important;
  text-decoration: none !important;
}

.cbp_heading_text{
  margin-top:8px;
  font-size:13px;
  color:#666;
  line-height:1.6;
}

/* Card */
.cbp_card{
  background:var(--cbp-card-bg,#fff);
  border:1px solid var(--cbp-border);
  border-radius:var(--cbp-radius-card,22px);
  box-shadow:var(--cbp-shadow);
  overflow:hidden;
}

/* Inside spacing */
.cbp_body{
  padding:14px 14px 10px;
}

/* Grid */
.cbp_grid_2{
  display:grid;
  grid-template-columns: 1fr;
  gap:10px;
}

@media (min-width: 768px){
  .cbp_grid_2{ grid-template-columns: 1fr 1fr; }
}

/* Fields */
.cbp_field{ margin:0; }

.cbp_field input,
.cbp_field select,
.cbp_field textarea{
  width:100% !important;
  padding:14px 14px !important;
  border:1.5px solid var(--cbp-input-border, rgba(0,0,0,.14)) !important;
  border-radius:var(--cbp-radius-field,14px) !important;
  font-size:15px !important;
  line-height:1.35 !important;
  outline:none !important;
  background:var(--cbp-input-bg,#fff) !important;
  box-shadow:none !important;
  color:#111 !important;
  font-weight:400 !important;
}

.cbp_field input::placeholder,
.cbp_field textarea::placeholder{
  color:#999 !important;
  font-weight:400 !important;
  opacity:1 !important;
}

.cbp_field input:focus,
.cbp_field select:focus{
  border-color: var(--cbp-primary);
  box-shadow: 0 0 0 4px var(--cbp-focus-ring, rgba(0,0,0,.10));
}


/* Phone error line */
.cbp_phone_error{
  margin-top:6px;
  font-size:12px;
  font-weight:800;
  color:#b00020;
  min-height:16px;
}

/* Qty row (smaller) */
.cbp_qty_wrap{
  margin-top:10px;
}

.cbp_qty_row{
  display:flex;
  align-items:center;
  gap:8px;
}

.cbp_qty_btn{
  width:38px;
  height:38px;
  border-radius:calc(var(--cbp-radius-field,14px) - 2px);
  border:1px solid rgba(0,0,0,.14);
  background:var(--cbp-input-bg,#fff);
  font-size:18px;
  font-weight:900;
  cursor:pointer;
  flex:0 0 auto;
}

.cbp_qty_input{
  flex:1;
  min-width:90px;
  text-align:center;
  padding:10px 12px;
  border-radius:var(--cbp-radius-field,14px);
  border:1.5px solid var(--cbp-input-border, rgba(0,0,0,.14));
  font-size:15px;
  height:38px;
}

/* ==========================================================
   Summary (collapsible)
   ========================================================== */

.cbp_summary{
  margin-top:12px;
  border-top:1px solid var(--cbp-summary-border, rgba(0,0,0,.08));
  padding-top:10px;
}

.cbp_summary_head{
  background: var(--cbp-summary-bg, transparent);
  color: var(--cbp-summary-text, inherit);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  cursor:pointer;
  padding:10px 10px;
  border:1px dashed rgba(0,0,0,.18);
  border-radius:var(--cbp-radius-field,14px);
}

.cbp_summary_head .cbp_head_left{
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:900;
  color:#222;
}

.cbp_summary_head .cbp_head_total{
  font-weight:900;
  color:var(--cbp-primary);
}

.cbp_summary_arrow{
  width:26px;
  height:26px;
  border-radius:10px;
  border:1px solid rgba(0,0,0,.12);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  color:#222;
}

.cbp_summary_body{
  margin-top:10px;
}

.cbp_summary.cbp_collapsed .cbp_summary_body{
  display:none;
}

.cbp_summary.cbp_collapsed .cbp_summary_arrow{
  transform: rotate(0deg);
}

.cbp_summary:not(.cbp_collapsed) .cbp_summary_arrow{
  transform: rotate(180deg);
}

.cbp_sum_row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:8px 0;
  font-size:14px;
  color:#222;
}

/* Shipping type selector */
.cbp_shiptype{
  margin:10px 0 6px;
  border:1px solid rgba(0,0,0,.10);
  border-radius:var(--cbp-radius-field,14px);
  padding:10px;
  background:var(--cbp-input-bg,#fff);
}

.cbp_shiptype_title{
  font-size:13px;
  font-weight:900;
  color:#222;
  margin-bottom:8px;
}

.cbp_shiptype_row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:6px 4px;
  cursor:pointer;
  font-size:13px;
}

.cbp_shiptype_row span{
  flex:1;
  font-weight:700;
  color:#222;
}

.cbp_shiptype_row input{
  margin:0;
  transform: scale(1.0);
}

.cbp_ship_price{
  font-weight:800;
  color:var(--cbp-primary);
  font-size:13px;
}

.cbp_shiptype_warn{
  margin-top:6px;
  font-size:12px;
  font-weight:800;
  color:#b00020;
  min-height:16px;
}

/* Submit */
.cbp_submit{
  margin-top:12px;
  width:100%;
  padding:14px 16px;
  background:var(--cbp-button-bg, var(--cbp-button));
  color:var(--cbp-button-text,#fff);
  border:none;
  border-radius:var(--cbp-radius-button,16px);
  font-size:16px;
  font-weight:900;
  cursor:pointer;
}

.cbp_submit:disabled{
  opacity:.65;
  cursor:not-allowed;
}


/* Mobile sticky order button */
.cbp_mobile_sticky_order{display:none;}
@media (max-width:767px){
  .cbp_mobile_sticky_order{
    display:block;
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:9999;
    padding:10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
    background:rgba(255,255,255,.96);
    backdrop-filter:saturate(180%) blur(8px);
    box-shadow:0 -8px 24px rgba(0,0,0,.08);
  }
  .cbp_mobile_sticky_btn{
    width:100%;
    display:block;
    padding:14px 16px;
    background:var(--cbp-button-bg, var(--cbp-button));
    color:var(--cbp-button-text,#fff);
    border:none;
    border-radius:var(--cbp-radius-button,16px);
    font-size:16px;
    font-weight:900;
    line-height:1.2;
    cursor:pointer;
  }
  .cbp_wrap.cbp_has_mobile_sticky{padding-bottom:92px !important;}
}

/* Mobile actions */
.cbp_mobile_actions{
  display:flex;
  gap:10px;
  margin-top:10px;
}

.cbp_mobile_actions a{
  flex:1;
  text-align:center;
  padding:12px;
  border-radius:var(--cbp-radius-button,16px);
  font-weight:900;
  text-decoration:none;
  color:#fff;
  font-size:14px;
}

/* Ensure text color works even if the theme forces link colors */
.cbp_wa_btn{ background:var(--cbp-wa-bg,#25D366) !important; color:var(--cbp-wa-text,#fff) !important; }
.cbp_call_btn{ background:var(--cbp-call-bg,#111) !important; color:var(--cbp-call-text,#fff) !important; }

/* Message */
.cbp_message{
  margin-top:10px;
  text-align:center;
  font-weight:800;
  color:#0a7b2e;
  min-height:18px;
}

/* =========================================
   CBP Theme-Compatibility Width Fix
   ========================================= */

.cbp_wrap,
.cbp_wrap * {
  box-sizing: border-box;
}

.cbp_wrap{
  width: 100% !important;
  max-width: 760px;
  margin: 18px auto !important;
  padding: 0 12px !important;
  display: block;
}

.cbp_card,
.cbp_form{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
}

.cbp_field input,
.cbp_field select,
.cbp_qty_input{
  width: 100% !important;
  max-width: 100% !important;
}

@media (max-width: 480px){
  .cbp_wrap{ padding: 0 10px !important; }
}

@media (max-width: 768px){
  .cbp_wrap{
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .cbp_card{
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* Text selection colors */
.cbp_wrap ::selection{
  background: var(--cbp-selection-bg, var(--cbp-primary));
  color: var(--cbp-selection-text, #fff);
}
.cbp_wrap ::-moz-selection{
  background: var(--cbp-selection-bg, var(--cbp-primary));
  color: var(--cbp-selection-text, #fff);
}



/* Summary arrow (CSS chevron) */
.cbp_summary_arrow{
  width:26px;
  height:26px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--cbp-summary-border, rgba(0,0,0,.14));
  border-radius:999px;
  background: var(--cbp-card-bg,#fff);
  flex:0 0 auto;
}
.cbp_summary_arrow:before{
  content:'';
  width:9px;
  height:9px;
  border-right:2px solid var(--cbp-primary);
  border-bottom:2px solid var(--cbp-primary);
  transform: rotate(45deg);
  transition: transform .2s ease;
}
.cbp_summary:not(.cbp_collapsed) .cbp_summary_arrow:before{
  transform: rotate(-135deg);
}



.cbp_free_ship{
  margin-top:6px;
  font-size:13px;
  color: var(--cbp-primary);
}


/* Extra theme-proof rules */
.cbp_wrap .cbp_submit,
.cbp_wrap .cbp_wa_btn,
.cbp_wrap .cbp_call_btn,
.cbp_wrap .cbp_qty_btn,
.cbp_wrap .cbp_var_opt,
.cbp_wrap .cbp_shiptype_row{
  border-radius: var(--cbp-radius-button,16px) !important;
}
.cbp_wrap .cbp_submit{
  background: var(--cbp-button-bg, var(--cbp-primary)) !important;
  color: var(--cbp-button-text,#fff) !important;
  border: 1px solid var(--cbp-button-bg, var(--cbp-primary)) !important;
  font-weight: 700 !important;
}
.cbp_wrap .cbp_wa_btn{ background: var(--cbp-wa-bg,#25D366) !important; color: var(--cbp-wa-text,#fff) !important; }
.cbp_wrap .cbp_call_btn{ background: var(--cbp-call-bg,#111) !important; color: var(--cbp-call-text,#fff) !important; }
.cbp_wrap.cbp_mobile_two .cbp_grid_2{ grid-template-columns: 1fr 1fr !important; }
@media (min-width:768px){ .cbp_wrap.cbp_mobile_two .cbp_grid_2{ grid-template-columns:1fr 1fr !important; } }
.cbp_lp_gallery{ display:flex; flex-direction:column; gap:12px; margin-bottom:18px; }
.cbp_lp_main_media img, .cbp_lp_thumb img{ display:block; width:100%; height:auto; border-radius:var(--cbp-gallery-radius,20px); }
.cbp_lp_main_media{ background:#fff; border:1px solid rgba(0,0,0,.08); border-radius:var(--cbp-gallery-radius,20px); overflow:hidden; }
.cbp_lp_thumbs{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.cbp_lp_thumb{ background:#fff; border:1px solid rgba(0,0,0,.12); padding:0; border-radius:var(--cbp-gallery-radius,20px); overflow:hidden; cursor:pointer; }
.cbp_lp_thumb.is-active{ border-color:var(--cbp-primary); box-shadow:0 0 0 2px var(--cbp-focus-ring, rgba(184,51,117,.18)); }
.cbp_landing_layout{ display:grid; grid-template-columns:1fr; gap:24px; }
@media (min-width:992px){ .cbp_landing_layout{ grid-template-columns:minmax(0,1fr) minmax(0,520px); align-items:start; } }
.cbp_upsells{ margin:24px auto 0; max-width:980px; }
.cbp_upsells_title{ margin:0 0 12px; font-size:22px; }
.cbp_upsells_grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
@media (min-width:900px){ .cbp_upsells_grid{ grid-template-columns:repeat(4,minmax(0,1fr)); } }
.cbp_upsell_card{ display:flex; flex-direction:column; gap:8px; text-decoration:none !important; color:inherit !important; background:#fff; border:1px solid rgba(0,0,0,.08); border-radius:18px; padding:10px; }
.cbp_upsell_img img{ width:100%; height:auto; border-radius:14px; }
.cbp_upsell_name{ font-weight:700; font-size:14px; }
.cbp_upsell_price{ color:var(--cbp-primary); font-weight:700; }


/* Final force styles */
.cbp_wrap .cbp_field{margin:0 !important;}
.cbp_wrap .cbp_grid_2{gap:8px !important;}
.cbp_wrap .cbp_field input,
.cbp_wrap .cbp_field select,
.cbp_wrap .cbp_field textarea{height:48px !important; min-height:48px !important; padding:10px 14px !important; border-radius:var(--cbp-radius-field,14px) !important; box-sizing:border-box !important;}
.cbp_wrap .cbp_field select{appearance:none !important; -webkit-appearance:none !important; background-image:none !important;}
.cbp_wrap .cbp_qty_btn{height:40px !important; width:40px !important;}
.cbp_wrap .cbp_qty_input{height:40px !important;}
.cbp_wrap input::placeholder, .cbp_wrap textarea::placeholder{font-weight:400 !important;}
.cbp_wrap .cbp_var_opt{background:transparent !important; color:var(--cbp-selection-bg,var(--cbp-primary)) !important; border:1.5px solid var(--cbp-selection-bg,var(--cbp-primary)) !important;}
.cbp_wrap .cbp_var_opt[aria-pressed="true"]{background:var(--cbp-selection-bg,var(--cbp-primary)) !important; color:var(--cbp-selection-text,#fff) !important; border-color:var(--cbp-selection-bg,var(--cbp-primary)) !important;}
.cbp_wrap .cbp_after_submit_actions{margin-top:10px;}
.cbp_wrap .cbp_after_submit_actions .button,
.cbp_upsell_card .button{display:block !important; width:100% !important; text-align:center !important; border-radius:var(--cbp-radius-button,16px) !important; padding:10px 14px !important; background:transparent !important; color:var(--cbp-primary) !important; border:1.5px solid var(--cbp-primary) !important; box-shadow:none !important;}
.cbp_lp_thumb.is-active{border-color:var(--cbp-primary) !important; box-shadow:0 0 0 2px rgba(0,0,0,.05);}
@media (max-width:767px){
  .cbp_wrap.cbp_mobile_two .cbp_grid_2{grid-template-columns:1fr 1fr !important; gap:8px !important;}
  .cbp_wrap.cbp_mobile_two .cbp_field input,
  .cbp_wrap.cbp_mobile_two .cbp_field select{padding-inline:10px !important; font-size:14px !important;}
}

/* robust field geometry */
.cbp_wrap .cbp_field input,
.cbp_wrap .cbp_field select,
.cbp_wrap .cbp_field textarea{
  border:1.5px solid var(--cbp-input-border, rgba(0,0,0,.14)) !important;
  background-clip:padding-box !important;
  padding-block:8px !important;
  min-height:44px !important;
  height:44px !important;
}
.cbp_wrap .cbp_qty_btn,.cbp_wrap .cbp_qty_input{min-height:40px !important;height:40px !important;}
.cbp_wrap .cbp_qty_row{align-items:center !important;}
.cbp_wrap .cbp_after_submit_actions{display:block !important;margin-top:10px !important;}
.cbp_wrap .cbp_addcart_btn{display:block !important;width:100% !important;text-align:center !important;border-radius:var(--cbp-radius-button,16px) !important;padding:12px 14px !important;background:#fff !important;color:var(--cbp-primary) !important;border:1.5px solid var(--cbp-primary) !important;text-decoration:none !important;font-weight:700 !important;}
.cbp_wrap .cbp_addcart_btn:hover{opacity:.92;transform:translateY(-1px);}
body .cbp_wrap .cbp_submit{background:var(--cbp-button-bg, var(--cbp-primary)) !important;color:var(--cbp-button-text,#fff) !important;border:1px solid var(--cbp-button-bg, var(--cbp-primary)) !important;}
body .cbp_wrap .cbp_field input::placeholder, body .cbp_wrap .cbp_field textarea::placeholder{font-weight:400 !important;}


/* Unified primary/add-to-cart buttons */
.cbp_submit,
.cbp_addcart_btn{
  display:block !important;
  width:100% !important;
  min-height:56px !important;
  padding:14px 18px !important;
  border-radius:var(--cbp-radius-button,16px) !important;
  text-align:center !important;
  font-weight:700 !important;
  font-size:16px !important;
  text-decoration:none !important;
  box-shadow:none !important;
  transition:all .18s ease !important;
}
.cbp_submit{
  background:var(--cbp-button-bg,var(--cbp-primary)) !important;
  color:var(--cbp-button-text,#fff) !important;
  border:1.5px solid var(--cbp-button-bg,var(--cbp-primary)) !important;
}
.cbp_submit.cbp_btn_outline{
  background:transparent !important;
  color:var(--cbp-button-bg,var(--cbp-primary)) !important;
}
.cbp_addcart_btn{
  margin-top:12px !important;
  background:transparent !important;
  color:var(--cbp-primary) !important;
  border:1.5px solid var(--cbp-primary) !important;
}
.cbp_wrap .cbp_field input,
.cbp_wrap .cbp_field select,
.cbp_wrap .cbp_field textarea,
.cbp_wrap .cbp_qty_btn,
.cbp_wrap .cbp_qty_input{
  min-height:46px !important;
  height:46px !important;
}
.cbp_wrap .cbp_field input,
.cbp_wrap .cbp_field textarea{
  padding-top:10px !important;
  padding-bottom:10px !important;
}
.cbp_wrap input::placeholder,
.cbp_wrap textarea::placeholder{font-weight:400 !important;opacity:.85 !important;}
.cbp_wrap .cbp_field,
.cbp_wrap .cbp_row{overflow:visible !important;}
.cbp_wrap .cbp_card{overflow:visible !important;}
.cbp_wrap .cbp_commune,
.cbp_wrap .cbp_wilaya{position:relative;z-index:2;}
/* Hello Elementor / Blocksy stronger reset */
.elementor .cbp_wrap .cbp_submit,
.elementor .cbp_wrap .cbp_addcart_btn,
.theme-blocksy .cbp_wrap .cbp_submit,
.theme-blocksy .cbp_wrap .cbp_addcart_btn,
.cbp_wrap .cbp_submit,
.cbp_wrap .cbp_addcart_btn{
  font-family:inherit !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
}

.cbp_after_submit_actions{width:100% !important;}


/* FIX4 final button and field geometry */
body .cbp_wrap .cbp_submit,
body .cbp_wrap .cbp_addcart_btn{
  min-height:48px !important;
  height:auto !important;
  padding:12px 16px !important;
  border-radius:var(--cbp-radius-button,16px) !important;
  font-size:16px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
}
body .cbp_wrap .cbp_submit{
  background:var(--cbp-button-bg, var(--cbp-primary)) !important;
  color:var(--cbp-button-text,#fff) !important;
  border:1.5px solid var(--cbp-button-bg, var(--cbp-primary)) !important;
}
body .cbp_wrap .cbp_submit.cbp_btn_outline{
  background:transparent !important;
  color:var(--cbp-button-bg, var(--cbp-primary)) !important;
  border:1.5px solid var(--cbp-button-bg, var(--cbp-primary)) !important;
}
body .cbp_wrap .cbp_addcart_btn{
  background:transparent !important;
  color:var(--cbp-primary) !important;
  border:1.5px solid var(--cbp-primary) !important;
}
body .cbp_wrap .cbp_field input,
body .cbp_wrap .cbp_field select,
body .cbp_wrap .cbp_field textarea{
  min-height:42px !important;
  height:42px !important;
  padding:8px 14px !important;
  border-radius:var(--cbp-radius-field,14px) !important;
}
body .cbp_wrap .cbp_qty_btn,
body .cbp_wrap .cbp_qty_input{
  min-height:42px !important;
  height:42px !important;
}
body .cbp_wrap .cbp_field input::placeholder,
body .cbp_wrap .cbp_field textarea::placeholder{
  font-weight:400 !important;
}
/* stronger resets for Hello Elementor / Blocksy */
.elementor-page .cbp_wrap button,
.elementor-page .cbp_wrap a,
.elementor .cbp_wrap button,
.elementor .cbp_wrap a,
.theme-blocksy .cbp_wrap button,
.theme-blocksy .cbp_wrap a{
  text-transform:none !important;
  box-shadow:none !important;
  line-height:1.2 !important;
}

body .cbp_wrap .cbp_submit, body .cbp_wrap .cbp_addcart_btn{min-height:46px !important;padding:11px 16px !important;}
body .cbp_wrap .cbp_submit.cbp_btn_outline{background:#fff !important;color:var(--cbp-button-bg,var(--cbp-primary)) !important;border:1.5px solid var(--cbp-button-bg,var(--cbp-primary)) !important;}
body .cbp_wrap .cbp_addcart_btn{color:var(--cbp-primary) !important;border-color:var(--cbp-primary) !important;}


/* === FINAL OVERRIDES === */
body .cbp_wrap{max-width:760px !important;}
body .cbp_wrap .cbp_card{overflow:visible !important;}
body .cbp_wrap .cbp_field input,
body .cbp_wrap .cbp_field select,
body .cbp_wrap .cbp_field textarea{min-height:48px !important;height:48px !important;padding:10px 14px !important;border-radius:var(--cbp-radius-field,14px) !important;font-size:15px !important;line-height:1.2 !important;}
body .cbp_wrap .cbp_field input::placeholder,
body .cbp_wrap .cbp_field textarea::placeholder{font-weight:400 !important;font-size:13px !important;opacity:.82 !important;}
body .cbp_wrap .cbp_qty_btn, body .cbp_wrap .cbp_qty_input{min-height:44px !important;height:44px !important;}
body .cbp_wrap .cbp_submit, body .cbp_wrap .cbp_addcart_btn{display:block !important;width:100% !important;min-height:46px !important;padding:11px 16px !important;border-radius:var(--cbp-radius-button,16px) !important;font-size:16px !important;font-weight:700 !important;line-height:1.2 !important;text-align:center !important;text-decoration:none !important;box-shadow:none !important;}
body .cbp_wrap .cbp_submit{background:var(--cbp-button-bg,var(--cbp-primary)) !important;color:var(--cbp-button-text,#fff) !important;border:1.5px solid var(--cbp-button-bg,var(--cbp-primary)) !important;}
body .cbp_wrap .cbp_submit.cbp_btn_outline{background:#fff !important;color:var(--cbp-button-bg,var(--cbp-primary)) !important;border:1.5px solid var(--cbp-button-bg,var(--cbp-primary)) !important;}
body .cbp_wrap .cbp_addcart_btn{margin-top:12px !important;background:#fff !important;color:var(--cbp-primary) !important;border:1.5px solid var(--cbp-primary) !important;}
body .cbp_wrap .cbp_after_submit_actions{display:block !important;width:100% !important;margin-top:10px !important;}
body .cbp_wrap .cbp_commune, body .cbp_wrap .cbp_wilaya{position:relative;z-index:3;}
.elementor-page .cbp_wrap button,.elementor-page .cbp_wrap a,.elementor .cbp_wrap button,.elementor .cbp_wrap a,.theme-blocksy .cbp_wrap button,.theme-blocksy .cbp_wrap a{box-shadow:none !important;text-transform:none !important;letter-spacing:0 !important;}
.cbp_lp_gallery{display:flex;flex-direction:column;gap:12px;margin-bottom:18px;}
.cbp_lp_main_media{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:var(--cbp-gallery-radius,20px);overflow:hidden;}
.cbp_lp_main_media img,.cbp_lp_thumb img{display:block;width:100%;height:auto;border-radius:var(--cbp-gallery-radius,20px);}
.cbp_lp_thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.cbp_lp_thumb{background:#fff;border:1px solid rgba(0,0,0,.12);padding:0;border-radius:var(--cbp-gallery-radius,20px);overflow:hidden;cursor:pointer;}
.cbp_lp_thumb.is-active{border-color:var(--cbp-primary) !important;box-shadow:0 0 0 2px rgba(0,0,0,.05);}

/* FINAL OVERRIDES */
body .cbp_wrap .cbp_field input::placeholder,
body .cbp_wrap .cbp_field textarea::placeholder{
  color: var(--cbp-placeholder-color,#9ca3af) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  opacity: 1 !important;
}
body .cbp_wrap .cbp_field input,
body .cbp_wrap .cbp_field textarea,
body .cbp_wrap .cbp_field select{
  min-height: 52px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}
body .cbp_wrap .cbp_addcart_btn,
.elementor .cbp_wrap .cbp_addcart_btn,
.theme-blocksy .cbp_wrap .cbp_addcart_btn{
  background: #fff !important;
  color: var(--cbp-primary,#b83375) !important;
  border: 1.5px solid var(--cbp-primary,#b83375) !important;
}
body .cbp_wrap .cbp_submit{
  min-height: 46px !important;
  padding: 11px 16px !important;
}
body .cbp_wrap .cbp_submit.cbp_btn_outline{
  background: #fff !important;
  color: var(--cbp-button-bg,var(--cbp-primary)) !important;
  border: 1.5px solid var(--cbp-button-bg,var(--cbp-primary)) !important;
}
body .cbp_wrap .cbp_submit:not(.cbp_btn_outline){
  background: var(--cbp-button-bg,var(--cbp-primary)) !important;
  color: var(--cbp-button-text,#fff) !important;
  border: 1.5px solid var(--cbp-button-bg,var(--cbp-primary)) !important;
}


/* FIX8 final tweaks */
body .cbp_wrap .cbp_field input::placeholder,
body .cbp_wrap .cbp_field textarea::placeholder{font-size:14px !important; color:var(--cbp-placeholder-color,#9ca3af) !important;}
body .cbp_wrap .cbp_field input, body .cbp_wrap .cbp_field select, body .cbp_wrap .cbp_field textarea{min-height:46px !important; padding-top:10px !important; padding-bottom:10px !important;}


/* Final placeholder/font forcing */
html body .cbp_wrap .cbp_field input::placeholder,
html body .cbp_wrap .cbp_field textarea::placeholder,
html body .cbp_wrap input::placeholder,
html body .cbp_wrap textarea::placeholder{
  color: var(--cbp-placeholder-color,#9ca3af) !important;
  opacity: 1 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}
html body .cbp_wrap .cbp_field input,
html body .cbp_wrap .cbp_field select,
html body .cbp_wrap .cbp_field textarea{
  min-height: 46px !important;
  padding-top: 11px !important;
  padding-bottom: 11px !important;
}


/* FIX11 theme font + stronger input colors */
html body .cbp_wrap,
html body .cbp_wrap *,
html body .cbp_wrap input,
html body .cbp_wrap select,
html body .cbp_wrap textarea,
html body .cbp_wrap button,
html body .cbp_wrap a{
  font-family: var(--cbp-theme-font, inherit) !important;
}
html body .cbp_wrap .cbp_field input,
html body .cbp_wrap .cbp_field select,
html body .cbp_wrap .cbp_field textarea,
html body .cbp_wrap input.cbp_qty_input{
  background-color: var(--cbp-input-bg,#fff) !important;
  border-color: var(--cbp-input-border,#d9dde3) !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}
html body .cbp_wrap .cbp_field input:focus,
html body .cbp_wrap .cbp_field select:focus,
html body .cbp_wrap .cbp_field textarea:focus,
html body .cbp_wrap input.cbp_qty_input:focus{
  border-color: var(--cbp-primary,#b83375) !important;
  box-shadow: 0 0 0 4px var(--cbp-focus-ring, rgba(184,51,117,.14)) !important;
}
html body .cbp_wrap .cbp_qty_btn{
  background-color: var(--cbp-input-bg,#fff) !important;
  border-color: var(--cbp-input-border,#d9dde3) !important;
  color: inherit !important;
}


/* FIX12 stronger theme font + placeholder + gallery */
html body .cbp_wrap,
html body .cbp_wrap *,
html body .cbp_wrap input,
html body .cbp_wrap select,
html body .cbp_wrap button,
html body .cbp_wrap a,
html body .cbp_wrap textarea{
  font-family: var(--cbp-theme-font, inherit) !important;
}
html body .cbp_wrap .cbp_field input::placeholder,
html body .cbp_wrap .cbp_field textarea::placeholder,
html body .cbp_wrap input::placeholder,
html body .cbp_wrap textarea::placeholder{
  color: var(--cbp-placeholder-color,#9ca3af) !important;
  -webkit-text-fill-color: var(--cbp-placeholder-color,#9ca3af) !important;
  opacity: 1 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}
html body .cbp_wrap .cbp_lp_main_media{min-height:320px;}
html body .cbp_wrap .cbp_lp_main_image{transition:opacity .18s ease;}


/* FIX13 placeholder + theme font hard force */
html body .cbp_wrap .cbp_field input::-webkit-input-placeholder,
html body .cbp_wrap .cbp_field textarea::-webkit-input-placeholder,
html body .cbp_wrap input::-webkit-input-placeholder,
html body .cbp_wrap textarea::-webkit-input-placeholder{
  color: var(--cbp-placeholder-color,#9ca3af) !important;
  -webkit-text-fill-color: var(--cbp-placeholder-color,#9ca3af) !important;
  opacity:1 !important;
  font-size:16px !important;
}
html body .cbp_wrap .cbp_field input:-ms-input-placeholder,
html body .cbp_wrap .cbp_field textarea:-ms-input-placeholder{
  color: var(--cbp-placeholder-color,#9ca3af) !important;
}
html body .cbp_wrap .cbp_field input::-moz-placeholder,
html body .cbp_wrap .cbp_field textarea::-moz-placeholder{
  color: var(--cbp-placeholder-color,#9ca3af) !important;
  opacity:1 !important;
  font-size:16px !important;
}
html body .cbp_wrap,
html body .cbp_wrap .cbp_card,
html body .cbp_wrap .cbp_body,
html body .cbp_wrap .cbp_field input,
html body .cbp_wrap .cbp_field select,
html body .cbp_wrap .cbp_field textarea,
html body .cbp_wrap .cbp_submit,
html body .cbp_wrap .cbp_addcart_btn,
html body .cbp_wrap .cbp_wa_btn,
html body .cbp_wrap .cbp_call_btn{
  font-family: var(--cbp-theme-font, inherit) !important;
}


/* FIX14 final theme/placeholder/summary/gallery */
html body .cbp_wrap,
html body .cbp_wrap *,
html body .cbp_wrap input,
html body .cbp_wrap select,
html body .cbp_wrap textarea,
html body .cbp_wrap button{
  font-family: var(--cbp-theme-font, inherit) !important;
}
html body .cbp_wrap .cbp_summary_head .cbp_head_left,
html body .cbp_wrap .cbp_summary_arrow{
  color: var(--cbp-summary-text,#222) !important;
}
html body .cbp_wrap .cbp_field select.cbp-empty,
html body .cbp_wrap .cbp_field select.cbp-empty option:first-child,
html body .cbp_wrap select.cbp-empty,
html body .cbp_wrap select.cbp-empty option:first-child{
  color: var(--cbp-placeholder-color,#9ca3af) !important;
}
html body .cbp_wrap .cbp_field select:not(.cbp-empty),
html body .cbp_wrap select:not(.cbp-empty){
  color: inherit !important;
}
html body .cbp_wrap .cbp_field input::placeholder,
html body .cbp_wrap .cbp_field textarea::placeholder,
html body .cbp_wrap input::placeholder,
html body .cbp_wrap textarea::placeholder,
html body .cbp_wrap input::-webkit-input-placeholder,
html body .cbp_wrap textarea::-webkit-input-placeholder{
  color: var(--cbp-placeholder-color,#9ca3af) !important;
  -webkit-text-fill-color: var(--cbp-placeholder-color,#9ca3af) !important;
  opacity: 1 !important;
  font-size: 15px !important;
}
html body .cbp_wrap .cbp_lp_main_media{min-height:360px; display:flex; align-items:center; justify-content:center;}
html body .cbp_wrap .cbp_lp_main_media img,
html body .cbp_wrap .cbp_lp_main_image{max-width:100%; max-height:520px; width:auto; height:auto; object-fit:contain;}


/* Final polish: tighter top rows, better shipping extras, auto-open summary support */
html body .cbp_wrap .cbp_location_row{margin-top:8px !important;}
html body .cbp_wrap .cbp_location_row + .cbp_shipping_extra{margin-top:12px !important;}
html body .cbp_wrap .cbp_shipping_extra + .cbp_shipping_extra{margin-top:8px !important;}
html body .cbp_wrap .cbp_field input[name="name"],
html body .cbp_wrap .cbp_field input[name="phone"]{margin-bottom:0 !important;}
html body .cbp_wrap .cbp_grid_2{gap:8px !important;}
html body .cbp_wrap .cbp_phone_error{display:block !important; min-height:18px !important; margin-top:6px !important; color:#d63638 !important; font-size:12px !important; line-height:1.35 !important;}
html body .cbp_wrap .cbp_summary:not(.cbp_collapsed) .cbp_summary_body{display:block !important;}
