/**
 * Building Rates Search - Autocomplete Dropdown styling only
 */

/* Position context for the absolute suggestions dropdown */
.search-wrapbx { position: relative; width: 100%; }

/* Autocomplete Dropdown Container */
.search-autocomplete-dropdown { position: absolute; top: 100%; left: 0; right: 0; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 8px; margin-top: 8px; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); max-height: 280px; overflow-y: auto; z-index: 99999; }

/* Individual Suggestion Item */
.autocomplete-item { padding: 12px 16px; cursor: pointer; border-bottom: 1px solid #f1f5f9; text-align: left; transition: background-color 0.2s ease, border-left-color 0.2s ease; border-left: 3px solid transparent; }
.autocomplete-item:last-child { border-bottom: none; }
/* Hover and Keyboard Highlight States */
.autocomplete-item:hover, .autocomplete-item.autocomplete-active { background-color: #f8fafc; border-left-color: #0073aa; }
/* Matching Text Highlight */ .autocomplete-item strong { color: #000000; font-weight: 700; }

/* Autocomplete Typography */ .autocomplete-title { font-size: 15px; font-weight: 600; color: #1e293b; line-height: 1.4; }

.autocomplete-address { font-size: 12px; color: #64748b; margin-top: 4px; line-height: 1.3; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
/* No Suggestions Found Row */
.autocomplete-item.no-suggestions { color: red; font-style: normal; cursor: default; text-align: center; padding: 16px; font-weight: 600;}
/* Loading Overlay inside the search result card */
.search-result-bx { position: relative; }
.building-search-loader { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(255, 255, 255, 0.75); display: none; /* Controlled by JS */ align-items: center; justify-content: center; z-index: 10; border-radius: 12px; }
.building-search-loader .spinner { width: 36px; height: 36px; border: 3px solid #f3f3f3; border-top: 3px solid #0073aa; border-radius: 50%; animation: spin 0.7s linear infinite; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

/* Dim content when loading details */
.search-result-bx.is-loading .result-top,
.search-result-bx.is-loading .result-bottom { opacity: 0.25; pointer-events: none; }


/* search rates 07-07-2026 */
.search-wrapbx{display: flex;width: 100%;max-width: 630px;margin: 30px auto 0 auto;position: relative;}
.search-wrapbx .search-btn{position: absolute;right: 10px;top: 10px;display: inline-block; background: #2D788C;text-align: center;color: #FFFFFF !important; border-radius: 10px;  
  padding: 12px 25px; transition: all 0.3s; -webkit-transition: all 0.3s;line-height: 1; font-weight: 400;border: 0px;outline: none;cursor: pointer;}
.search-input{padding: 18px 117px 18px 64px;border: 0;background: #fff url(../images/search-icon.svg) no-repeat 22px center;border-radius: 10px;box-shadow: 0 0 18px 3px rgba(0,0,0,0.06);display: block;}

.builder-search-result{padding: 80px 0;background: #F5F5F5;}
.result-top{border-bottom: 2px dashed #B5B5B5;padding-bottom: 22px;position: relative;}
.building-name{font-size: 24px;font-weight: 600;color: #373A52;}
.result-bottom{margin-top: 22px;}
.result-bottom{display: flex;justify-content: space-between;}
.result-bottom-left{display: flex;flex-wrap:wrap;column-gap:50px;row-gap: 20px;}
.search-result-bx{padding: 40px;background: var(--site-white);border-radius:15px;box-shadow: 0 0 18px 3px rgba(0,0,0,0.06);position:relative;overflow: hidden;}
.search-result-bx:before{position: absolute;content:"";left: 0;top:0;height: 3px;background: #2D788C;width: 100%;}
.building-address-bx{padding-left: 33px;position: relative;margin-top: 10px;font-size: 18px;}
.result-lable{font-size: 18px;}
.building-address-bx:before{position: absolute;content:"";left: 0;top: 2px;background-image: url(../images/location-icon.svg);background-repeat: no-repeat;background-position: center;width: 19px;height: 22px;}
.result-top:before{width:53px;height:53px;background-image: url(../images/elect-icon.svg);background-repeat: no-repeat;background-position: center;position: absolute;right: 0px;top: 0px;content: '';}
.network-provider{display: inline-block;padding:10px 20px;font-size: 18px;font-weight: 600;color: #2D788C;background-color: #eaf1f3;border-radius: 10px;}
.result-value{font-size: 24px;color:#000;font-weight: 600;margin-top: 5px;}
/* search rates 07-07-2026 */

.builder-search-result.not-found{display: none !important;}

@media only screen and (min-width:1199px){ 
.search-wrapbx .search-btn:hover{background: #191434;}
}
@media (max-width:1400px){
.result-lable{font-size: 17px;}
}
/* Tablet */
@media (max-width:991px){

.builder-search-result{padding:60px 0;}
.search-result-bx{padding:30px;}
.result-bottom{flex-direction:column;gap:25px;}
.result-bottom-left{gap:30px;flex-wrap: wrap;}
.building-name{font-size:22px;padding-right:60px;}
.building-address-bx{font-size:17px;}
.network-provider,.result-lable{font-size:16px;}
.result-value{font-size:22px;}
.result-top:before{width:45px;height:45px;background-size:45px;top: -7px;}

}

/* Mobile */
@media (max-width:767px){

.builder-search-result{padding:40px 0;}
.search-wrapbx{display:flex;flex-direction:column;max-width:100%;margin-top:25px;}
.search-input{padding:16px 20px 16px 50px;background-position:16px center;background-size:20px;font-size:16px;}
.search-wrapbx .search-btn{position:static;width:100%;margin-top:15px;padding:15px 20px;}
.search-result-bx{padding:25px 20px;border-radius:12px;}
.result-top{padding-bottom:18px;}
.building-name{font-size:20px;padding-right:55px;}
.building-address-bx{font-size:16px;padding-left:28px;}
.building-address-bx:before{width:16px;height:20px;background-size:contain;}
.result-bottom{margin-top:20px;gap:20px;}
.result-bottom-left{flex-direction:column;gap:20px;}
.network-provider{padding:8px 16px;font-size:15px;}
.result-lable{font-size:15px;}
.result-value{font-size:20px;}
.result-top:before{width:40px;height:40px;background-size:contain;}

}

/* Small Mobile */
@media (max-width:480px){
.search-result-bx{padding:20px 15px;}
.building-name{font-size:18px;line-height:1.4;padding-right:45px;}
.building-address-bx{font-size:15px;}
.network-provider{width:100%;text-align:center;}
.result-lable{font-size:14px;}
.result-value{font-size:18px;}
}

