/* Silme Bag Lead Chat v1.2.0 — responsive, high-contrast form */
#sblc-widget{
 --sblc-ink:#17352a;--sblc-green:#176b4a;--sblc-gold:#d9ad5b;
 position:fixed;right:22px;bottom:22px;z-index:999999;
 font-family:Arial,Helvetica,sans-serif;color:var(--sblc-ink);
 font-size:16px;line-height:1.45
}
#sblc-widget,#sblc-widget *{box-sizing:border-box}
#sblc-widget button,#sblc-widget input,#sblc-widget select,#sblc-widget textarea{font-family:inherit}
.sblc-launcher{
 display:flex;align-items:center;justify-content:center;gap:10px;
 min-height:54px;border:0;border-radius:999px;padding:13px 21px;
 background:linear-gradient(135deg,#176b4a,#104b37);color:#fff;
 font-weight:800;font-size:15px;letter-spacing:.1px;
 box-shadow:0 10px 30px #123d2d40;cursor:pointer;
 transition:transform .18s,box-shadow .18s
}
.sblc-launcher:hover{transform:translateY(-2px);box-shadow:0 14px 34px #123d2d55}
.sblc-launch-icon{display:grid;place-items:center;width:27px;height:27px;flex:0 0 27px;border-radius:50%;background:#ffffff24;color:#f8dda0;font-size:18px}
.sblc-panel{
 position:absolute;right:0;bottom:68px;width:min(440px,calc(100vw - 32px));
 max-height:min(790px,calc(100vh - 105px));overflow:hidden;
 display:flex;flex-direction:column;background:#fff;border:1px solid #dce8e0;
 border-radius:20px;box-shadow:0 24px 70px #132b2140;animation:sblc-in .2s ease-out
}
.sblc-panel[hidden]{display:none}
.sblc-header{
 flex:0 0 auto;display:flex;align-items:center;gap:12px;min-height:76px;
 padding:14px 16px;background:linear-gradient(120deg,#123f30,#1c7651);
 color:#fff;position:relative;z-index:3
}
.sblc-avatar{width:43px;height:43px;flex:0 0 43px;display:grid;place-items:center;border-radius:13px;background:#ffffff20;border:1px solid #ffffff55;color:#ffe2a7;font-family:Georgia,serif;font-size:24px;font-weight:700}
.sblc-headcopy{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}
.sblc-headcopy strong{font-size:14px;line-height:1.3;font-weight:800;letter-spacing:.1px;color:#fff}
.sblc-headcopy span{font-size:12px;line-height:1.35;font-weight:600;color:#e2f0e8}
.sblc-close{
 margin-left:auto;flex:0 0 46px;width:46px;height:46px;min-width:46px;
 display:grid;place-items:center;border:2px solid #ffffff85!important;
 border-radius:50%;background:#ffffff20!important;color:#fff!important;
 font-size:32px!important;line-height:1!important;font-weight:400!important;
 padding:0!important;cursor:pointer;box-shadow:none!important;opacity:1!important;
 visibility:visible!important
}
.sblc-close:hover,.sblc-close:focus{background:#ffffff38!important;color:#fff!important;outline:2px solid #fff;outline-offset:2px}
.sblc-close span{display:block;transform:translateY(-1px)}
.sblc-body{padding:20px 21px 18px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0}
.sblc-welcome{padding:0 0 17px}
.sblc-eyebrow{font-size:11px;letter-spacing:1.5px;font-weight:800;color:#91651d}
.sblc-welcome h2{font-family:inherit;font-size:24px;line-height:1.25;letter-spacing:-.35px;font-weight:800;margin:8px 0;color:#17382b}
.sblc-welcome p{font-size:14px;line-height:1.6;font-weight:500;color:#53665c;margin:0}
.sblc-form{display:flex;flex-direction:column;gap:14px}
.sblc-form label{display:flex;flex-direction:column;gap:7px;font-size:14px;line-height:1.35;font-weight:800;color:#263f33}
.sblc-form label>span{display:inline;color:#b64032;font-weight:800}
.sblc-form small{font-size:12px;line-height:1.4;color:#596b61;font-weight:500}
.sblc-form input,.sblc-form select,.sblc-form textarea{
 display:block;width:100%;min-width:0;min-height:48px;border:1.5px solid #cbd9d0;
 border-radius:10px;background:#fff;padding:12px 13px;
 font-size:15px!important;line-height:1.4;font-weight:500;color:#1d3328;
 outline:none;box-shadow:none;transition:border .15s,box-shadow .15s
}
.sblc-form input:focus,.sblc-form select:focus,.sblc-form textarea:focus{
 border-color:#287a52;box-shadow:0 0 0 3px #4b9a7325
}
.sblc-form textarea{resize:vertical;min-height:94px}
.sblc-form input::placeholder,.sblc-form textarea::placeholder{color:#68786f;opacity:1}
.sblc-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sblc-submit{
 display:flex;justify-content:center;align-items:center;gap:12px;width:100%;
 min-height:52px;border:0;border-radius:11px;background:#d9ad5b;color:#20382c;
 padding:14px 16px;font-size:15px;font-weight:800;cursor:pointer;
 transition:filter .15s,transform .15s
}
.sblc-submit:hover{filter:brightness(1.04);transform:translateY(-1px)}
.sblc-submit:disabled{opacity:.65;cursor:wait;transform:none}
.sblc-submit span{font-size:20px}
.sblc-privacy{text-align:center;color:#586b60;font-size:11px;line-height:1.5;font-weight:500;margin:0}
.sblc-status{font-size:13px;line-height:1.5;font-weight:700;color:#a13d35}
.sblc-status:empty{display:none}
.sblc-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.sblc-form .iti{width:100%;display:block}
.sblc-form .iti input{width:100%;padding-left:88px!important}
.sblc-form .iti__country-container{z-index:2}
.sblc-form .iti__selected-country{border-radius:9px 0 0 9px;padding:0 9px;background:#f3f7f4}
.sblc-form .iti__selected-country-primary{padding:0 7px}
.sblc-form .iti__dropdown-content{z-index:20;max-width:min(340px,calc(100vw - 70px))}
.sblc-form .iti__search-input{min-height:42px}
@keyframes sblc-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:640px){
 #sblc-widget{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));}
 .sblc-launcher{min-height:52px;padding:12px 18px;font-size:15px}
 .sblc-panel{
  position:fixed!important;inset:env(safe-area-inset-top,0px) 8px calc(env(safe-area-inset-bottom,0px) + 8px) 8px!important;
  width:auto!important;height:auto!important;max-height:none!important;min-height:0!important;
  border-radius:17px!important;border:1px solid #d7e4dc!important;
  box-shadow:0 12px 45px #102b1f55!important;z-index:1000000;
 }
 .sblc-header{min-height:76px;padding:12px 13px;gap:10px}
 .sblc-avatar{width:42px;height:42px;flex-basis:42px}
 .sblc-headcopy strong{font-size:14px}
 .sblc-headcopy span{font-size:11px}
 .sblc-close{width:48px!important;height:48px!important;min-width:48px!important;flex-basis:48px!important;font-size:34px!important}
 .sblc-body{padding:17px 16px calc(18px + env(safe-area-inset-bottom));}
 .sblc-welcome{padding-bottom:15px}
 .sblc-welcome h2{font-size:23px;line-height:1.23;margin:7px 0}
 .sblc-welcome p{font-size:14px}
 .sblc-form{gap:13px}
 .sblc-form label{font-size:14px}
 .sblc-form input,.sblc-form select,.sblc-form textarea{font-size:16px!important;min-height:49px;padding:12px}
 .sblc-form textarea{min-height:88px}
 .sblc-two{grid-template-columns:1fr;gap:13px}
 .sblc-submit{min-height:54px;font-size:16px}
 .sblc-privacy{font-size:11px}
}
@media(max-width:360px){
 .sblc-header{min-height:70px;padding:10px}
 .sblc-headcopy strong{font-size:12px}
 .sblc-headcopy span{font-size:10px}
 .sblc-close{width:44px!important;height:44px!important;min-width:44px!important;flex-basis:44px!important}
 .sblc-body{padding:14px 13px}
 .sblc-welcome h2{font-size:21px}
}
@media(prefers-reduced-motion:reduce){.sblc-panel{animation:none}.sblc-launcher,.sblc-submit{transition:none}}

/* v1.3.0: native country-code selector; no external scripts or stylesheets */
#sblc-widget .sblc-phone-field{display:flex;flex-direction:column;gap:7px}
#sblc-widget .sblc-phone-controls{display:grid;grid-template-columns:minmax(132px,42%) minmax(0,1fr);gap:8px;width:100%}
#sblc-widget .sblc-phone-controls select{width:100%;min-width:0;max-width:100%;font-size:14px!important;padding:10px 8px!important;white-space:normal}
#sblc-widget .sblc-phone-controls input{width:100%;min-width:0}
#sblc-widget .sblc-phone-help{display:block}
@media(max-width:640px){
 #sblc-widget .sblc-phone-controls{grid-template-columns:minmax(125px,40%) minmax(0,1fr);gap:7px}
 #sblc-widget .sblc-phone-controls select{font-size:13px!important;padding:10px 6px!important;min-height:49px}
 #sblc-widget .sblc-phone-controls input{min-height:49px}
}
@media(max-width:350px){
 #sblc-widget .sblc-phone-controls{grid-template-columns:1fr}
}

/* v1.4.0 mobile layout correction:
   Never squeeze the email and phone fields into two half-width columns on phones.
   Keep country selector and number input readable at narrow viewport widths. */
@media screen and (max-width: 640px) {
  #sblc-widget .sblc-two {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
    width: 100% !important;
  }
  #sblc-widget .sblc-two > label {
    width: 100% !important;
    min-width: 0 !important;
  }
  #sblc-widget .sblc-phone-field {
    width: 100% !important;
    min-width: 0 !important;
  }
  #sblc-widget .sblc-phone-controls {
    display: grid !important;
    grid-template-columns: minmax(118px, 42%) minmax(0, 1fr) !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  #sblc-widget .sblc-phone-controls select,
  #sblc-widget .sblc-phone-controls input {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 50px !important;
    min-height: 50px !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
  }
  #sblc-widget .sblc-phone-controls select {
    padding: 8px 24px 8px 9px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  #sblc-widget .sblc-phone-controls input {
    padding: 10px 11px !important;
  }
}
@media screen and (max-width: 360px) {
  #sblc-widget .sblc-phone-controls {
    grid-template-columns: minmax(108px, 40%) minmax(0, 1fr) !important;
    gap: 6px !important;
  }
  #sblc-widget .sblc-phone-controls select {
    font-size: 12px !important;
    padding-left: 7px !important;
  }
}

/* v1.5.0: reliable phone controls layout.
   Use a DIV wrapper (not a direct label span) and stack both controls.
   This prevents the required-asterisk label rule and theme CSS from collapsing the input. */
#sblc-widget .sblc-form label.sblc-phone-field > .sblc-phone-controls {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 9px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
#sblc-widget .sblc-form label.sblc-phone-field > .sblc-phone-controls > select,
#sblc-widget .sblc-form label.sblc-phone-field > .sblc-phone-controls > input {
  display: block !important;
  position: static !important;
  float: none !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 50px !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 11px 13px !important;
  border: 1.5px solid #cbd9d0 !important;
  border-radius: 10px !important;
  background-color: #fff !important;
  color: #1d3328 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  box-sizing: border-box !important;
}
#sblc-widget .sblc-form label.sblc-phone-field > .sblc-phone-controls > select {
  cursor: pointer !important;
  white-space: normal !important;
}
#sblc-widget .sblc-form label.sblc-phone-field > .sblc-phone-controls > input {
  text-align: left !important;
}
#sblc-widget .sblc-form label.sblc-phone-field > .sblc-phone-controls > input:focus,
#sblc-widget .sblc-form label.sblc-phone-field > .sblc-phone-controls > select:focus {
  border-color: #287a52 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px #4b9a7325 !important;
}


/* v1.5.1: repair form flow and isolate layout from theme styles */
#sblc-widget .sblc-body,
#sblc-widget .sblc-form,
#sblc-widget .sblc-form > label,
#sblc-widget .sblc-two,
#sblc-widget .sblc-phone-field {
  min-width: 0;
  max-width: 100%;
}
#sblc-widget .sblc-form {
  width: 100%;
  align-items: stretch;
}
#sblc-widget .sblc-two {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 12px;
  width: 100%;
}
#sblc-widget .sblc-phone-controls {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 9px !important;
  width: 100% !important;
}
#sblc-widget .sblc-phone-controls > select,
#sblc-widget .sblc-phone-controls > input {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}
#sblc-widget .sblc-phone-field > small {
  display: block;
  margin-top: 1px;
}
@media screen and (max-width: 640px) {
  #sblc-widget .sblc-two {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 13px !important;
  }
}
