#hed
{
    width: 100%;
    color: #000099;
    font-size: 14px;
    font-weight:bold;
    z-index: 99999;
    padding: 0 0 0 0;
    display: inline-block;
    margin:0 15px 20px 0 !important;
    height:43px;    
}

#content
{
    width: 100%;
    /* box-sizing: border-box;
    background-color: blue;
    
    overflow-y: auto;
    height: calc(100vh - 115px);
    overflow-x: auto;   */
    overflow-y: auto;
    overflow-x: hidden;
    height: calc(100vh - 160px);
    background-color: #FCFCFF;
}

#hedtitle
{
display: inline-block;
text-align: left;
padding: 0;
padding-top:16px;
height: 43px;
border-bottom:1px dashed #ddd;
}

#hedbtn
{
  float: right;
  display: none;
  text-align: right;
  padding: 0;
  margin:0;
}


#loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255,255,255,0.7);
  display: none;
  z-index: 9999;
}


.loader {
  border: 6px solid #f3f3f3;
  border-top: 6px solid #3498db;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  animation: spin 1s linear infinite;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@keyframes spin {
  0% { transform: translate(-50%, -50%) rotate(0deg); }
  100% { transform: translate(-50%, -50%) rotate(360deg); }
}

.loading
{
  pointer-events: none;
  user-select: none;
  opacity: 0.6;
}


.errors{
  display: block;
  height: 30px !important;
  margin-top:5px;
  width: 100%;
  font-size: 13px;
}

.errHide{
  display: none;
}

.orange_warn{
  color:#FC0;
}

.errorText{
  color:rgb(183, 1, 1);
  font-style: italic;
}

/* .server-errors{
  display:inline-block;
  color: red;
  min-height:2px;
  margin-top: 5px;
  
  
}

.wa{
  color:#FC0;
  margin-right: 6px;
  display:none;

}
.error-wa:has(.server-errors:not(:empty)) .wa{
  display:inline-block;
  /* min-height:2px; */

/* } */

.erroe-border{
  border: 1.4px solid red;
  
} */




/* Start Costum Loading */
#loadingWait {
    position: fixed;
    z-index: 99999;
    width: 100%;
    height: 100%;
    top: 0;
    display: none;
  }
  #loading_page {
    position: absolute;
    z-index: 9998 !important;
    background-color: #000;
    width: 100%;
    height: 100%;
    color: #fc0;
    text-align: center;
    padding-top: 25%;
    opacity: 0.7;
    cursor: wait;
  }
  
  #loading_text {
    position: absolute;
    z-index: 9999;
    background-color: #000;
    color: #fc0;
    text-align: center;
    padding: 10px 20px 10px 40px;
    left: 50%;
    transform: translate(-50%, 0);
    top: 50%;
    transform: translate(-50%, 0);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    font-family: Poppins;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: wait;
  }
  
  @keyframes spinner {
    to {
      transform: rotate(360deg);
    }
  }
  
  .spinner:before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 20px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    margin-left: -10px;
    border-radius: 50%;
    border: 2px solid transparent;
    border-top-color: #fc0;
    border-bottom-color: #fc0;
    animation: spinner 0.8s ease infinite;
  }

  .login_padding{
    padding:3px 0 0 10px !important;
  }

  .login_title_color{
    color:#000099 !important;
  }

  .login_btn_width{
    width:50%;
  }

  .login_footer_left{
    position: absolute; bottom : 10px; left :10px;
  }

  .login_footer_right{
    position: absolute; bottom : 10px; right :10px; 
  }

  .jq-toast-heading{
    color:#000 !important;
  }

  .side-nav li a:hover{
			background: linear-gradient(to right, white, #d0e3f4ff) !important;
			color:#000 !important;
		}

		.side-nav li a:hover div i{
			color:#000 !important;
		}


		.active_menu{
      background: linear-gradient(to right, white, #d0e3f4ff) !important;
			color:#000 !important;
		}

    .opened_menu{
      border-left:2px solid #fff;
    }

  /* End Costum Loading */

.show_desktop_only {
  display: none !important;
  margin-right: 5px;
}

/* روی تبلت و دسکتاپ نمایش داده شود */
@media (min-width: 768px) {  
  .show_desktop_only {
    display: inline-block !important;
  }
}

.hide_page{
  height:100vh; 
  width:100%; 
  display:inline-block; 
  background:url('../../../img/errorbg.jpg');
}

.login_msg{
  width: 100%;
  display: inline-block !important;
  min-height: 30px !important;
}


.dropdown-menu.open{
  border:1px solid #4896EC;
  border-radius: 2px;
}


.active.selected {
  background-color:  #4896EC !important;
}

a#bs-select-2-0.active{
  background-color:  #4896EC !important;
}

.filter-option{
  padding-left: 0 !important;
}

.dropdown-toggle{
  padding-left: 12px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  border-radius: 4px !important;
}

.filter-option-inner-inner{
  text-shadow: none !important ;
}


.nodis{
  display: none;
}

		
table thead th {
  background-color: #ccc !important;
  color:#000 !important;
  font-weight: bold !important;
  /* border-right: 1px solid #000; */
  /* font-size: 16px !important; */
}

table#data_list.dataTable tbody tr:hover {
    background-color: #4896EC;
    color:#fff !important;
    font-weight: 600;
}

table#data_list.dataTable tbody tr:hover > .sorting_1 {
    background-color: #4896EC;
    color:#fff !important ;
}

.reloadTable{
	background-color: #4896EC !important;
	color:#fff !important;
	border-color:#4896EC !important;
	font-weight: bold !important;
}

table.dataTable tbody td.sorting_1 {
    background-image: none !important;
}

table.dataTable tbody td {
    background-image: none !important;
}

/* table#data_list tbody tr {
    font-size: 16px;
} */

table.dataTable thead th.sorting::after,
table.dataTable thead th.sorting_asc::after,
table.dataTable thead th.sorting_desc::after {
    display: none !important;
}

/* .paginate_button{
  font-size: 18px !important;
  padding : 3px 12px !important;
} */

.paginate_button.current{
  background-color: #4896EC !important;
  color:#fff !important;
  border-color:#4896EC !important;
  font-weight: bold !important;
  /* font-size: 18px !important; */
  /* padding : 3px 12px !important; */
}

.div_min_width{
  min-width: 120px !important;
}

.comment_scroll{
  height:40px;
  overflow-y:auto;
}

.comment_text{
  display:table-cell;
  vertical-align:middle;
  height:40px;
}

.comment_scroll_2{
  height:60px;
  overflow-y:auto;
}

.comment_text_2{
  display:table-cell;
  vertical-align:middle;
  height:60px;
}

.comment_scroll_3{
    height:40px;
    max-width:120px;
    overflow-y:auto;
    overflow-x:hidden;
}

.comment_text_3{
    text-align:center;
    word-wrap:break-word;
    overflow-wrap:break-word;
    white-space:normal;
}

.icon_other{
  color:#000099;
  font-size: 18px;
  cursor: pointer;
  transition: transform .2s;
  margin-left:15px;
}
.icon_other:hover{
  transform: scale(1.5);
}

.icon_trash{
  color:#990000;
  font-size: 18px;
  cursor: pointer;
  margin-right :3px;
  transition: transform .2s;
  margin-left:15px;
}
.icon_trash:hover{
  transform: scale(1.5);
}

.last_icon{
  margin-left:0 !important;
}

.greentxt{
  color:green;
}

.redtxt{
  color:red;
}

.textBox{
  display: inline-block;
  background-color: #fff;
  padding: 4px 15px;
  border-radius: 15px;
}

.actions{
  color: #000 !important;
  font-weight: bold;
  padding: 4px 15px;
  text-align: center;
  border-radius: 5px;
  border:1px solid #aaa;
  outline: none !important;
}

.bootstrap-select .dropdown-menu li a img {
    margin-right: 5px;
    vertical-align: middle;
}

.filter-option-inner-inner img {
    margin-right: 5px;
    vertical-align: middle;
}

.blue_text{
  color:blue;
  cursor: pointer;
  font-weight: bold;
  font-size: 12px;
}

.scroll-box {  
  padding-left:10px; 
  padding-top: 0 !important;
  padding-bottom: 10px;
  margin-left:10px; 
  margin-bottom: 30px !important;
}

.ps{
  color:#999;
}

.bootstrap-select .dropdown-menu li.selected a .ps {
    color: #fff !important;
}

.checkbox-inline {
    display: inline-block;
    margin-right:0 !important;
    margin-top:-3px !important;
}
.checkbox-inline_2 {
    display: inline-block;
    margin-left:10px;
}

.checkbox-inline_3{
  display: inline-block;
  padding-left:14px !important;
}

.use_profile{
  color:blue;
}

.device_back{
  display:inline-block; width:45px; height:45px; text-align: center; padding-top:9px; background : #fff; border-radius:15%;
}

.dmodel{
  font-size:12px;
  font-weight: bold;
  color:#272727;
  font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
}

.freq{
  display:inline-block !important;
  width: 80px !important;
}

.infobox{
  display:none;
  position: absolute;
  min-width: 300px;
  min-height: 200px;
  border-radius: 10px;
  border:2px solid #000;
  z-index: 99999;
  background-color: #eee;
  padding: 20px 10px ;
  margin : 0 auto 0 auto;
  left: 50%;
  transform: translateX(-50%);
}

.hostup{
  display: inline-block;
  padding: 3px 10px;
  border-radius: 5px;
  color:green;
  background-color: #fff;
  margin-bottom: 3px;
}

.hostdown{
  display: inline-block;
  padding: 3px 10px;
  border-radius: 5px;
  color:red;
  background-color: #fff;
  margin-bottom: 3px;
}

.packetloss{
  display: inline-block;
  padding: 3px 10px;
  border-radius: 5px;
  color:#fc0;
  background-color: #fff;
  margin-bottom: 3px;
}

.lasttime{
  display: inline-block;
  padding: 3px 10px;
  border-radius: 5px;
  color:blue;
  background-color: #fff;
  margin-bottom: 3px;
}

.nameclass{
  display: inline-block;
  padding: 3px 10px 3px 18px;
  border-radius: 5px;
  color:#000;
  background-color: #fff;
  margin-bottom: 3px;
}

.nameclass_2{
  display: inline-block;
  padding: 3px 5px;
  border-radius: 5px;
  color:#000;
  background-color: #fff;
  margin-bottom: 3px;
}

.nameclass_3{
  display: inline-block;
  padding: 3px 10px 3px 10px;
  border-radius: 5px;
  color:#000;
  background-color: #fff;
  margin-bottom: 3px;
}

.nameclass_4{
  display: inline-block;
  padding: 3px 10px 3px 10px;
  border-radius: 5px;
  color:blue;
  background-color: #fff;
  margin-bottom: 3px;
}

.nameclass_5{
  display: inline-block;
  padding: 3px 10px 3px 10px;
  border-radius: 5px;
  background-color: #fff;
  margin-bottom: 3px;
}

.padding_l10{
  padding-left:5px;
}

.padding_l100{
  padding-left:5px;
}

.cus_width{
  min-width: 130px;
}

.working{
  display: inline-block;
  padding: 3px 10px;
  border-radius: 5px;
  color:#000;
  background-color: #ddd;
  margin-bottom: 3px;
  font-size:12px;
  height:23px;
  min-width:155px;
}


.dots::after {
    content: "";
    animation: dots 1.5s steps(4, end) infinite;
}

@keyframes dots {
    0%   { content: ""; }
    25%  { content: "."; }
    50%  { content: ".."; }
    75%  { content: "..."; }
    100% { content: ""; }
}

.filters_continer{
  display: inline-block;
  width:100%;
  padding : 10px 0;
  margin-bottom: 20px;
  position: relative;
}

.filters{
  display: inline-block;
  width:100%;
  border:1px solid #ccc;
  padding : 10px;
  border-radius:5px;
  background-color: #eee;
}

#apply_filter{
  width:100%;
  padding-right: 5px;
  padding-left: 5px;
}

#close_filter{
  position: absolute;
  display: flex;
  flex-direction: column; flex-wrap: nowrap; -ms-flex-align: center; flex: content;
  padding:0 !important;
  text-align: center;
  border-radius: 50%;
  background-color: #eee;
  border: 1px solid #ccc;
  width:18px;
  height:18px;
  color:black;
  font-size: 15px;
  cursor: pointer;
  top: 0;
  right: 5px;
  margin: 0 !important;
}

.pre_green{
  color: green;
}

.pre_red{
  color: red;
}

.precheck_status{
  display: inline-block;
  width: 14px;
}

.brow{
  margin:0 15px 10px 15px !important;
}

.lbrow{
  border:1px solid #aaa !important;
  padding-left:5px;
}

.rbrow{
  border:1px solid #aaa !important;
  border-left:none !important;
  padding-left:5px;
}

.ntop_border{
  border-top:none !important;
}

.bold_title{
  font-weight: bold;
}

.gray_title{
  background-color: #eee;
}

.has_fix_height{
  display: block;
  height: 110px;
}


/* موبایل بزرگ */
@media (max-width: 576px) {
    .charts{
      display:block; height:200px;
    }
}

@media (min-width: 576px) {
    .charts{
      display:block; height:200px;
    }
}

/* تبلت */
@media (min-width: 768px) {
    .charts{
      display:block; height:250px;
    }
}

/* لپ‌تاپ */
@media (min-width: 992px) {
    .charts{
      display:block; height:300px;
    }
}

/* مانیتور بزرگ */
@media (min-width: 1200px) {
    .charts{
      display:block; height:350px;
    }
}

/* مانیتورهای 4K */
@media (min-width: 1920px) {
    .charts{
      display:block; height:350px;
    }
}

#net_setting{
  display: none;
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: #f9fadc;
  z-index: 99999;
  padding:5px 10px;
  font-size: 11px;
  font-weight: bold;
}

.net_alert{
  margin-right:10px;
}

.net_btn{
  display: inline-block;
  padding : 2px 0;
  width: 60px;
  border-radius: 5px;
  border-color: #aaa;
  background-color: #ccc;
  color: #000;
  text-align: center;
  cursor: pointer;
  margin-left: 5px;;
}

.icon_size{
  font-size: 18px;
}
.icon_holder{
  display: block;
  width:33px;
  height:33px;
  border-radius:10px;
  padding:5px;
  background-color: #fff;
  text-align: center;
  font-size:18px;
}

.font_fa{
  font-family: Nazanin !important;
  font-size:14px !important;
  direction: rtl !important;
}


.cus_item{
  width:100% !important;
  display: block;
  text-align: left;
  margin-bottom: 2px;
}

.auto_search{
  width:100% !important; display:none;
}

.btn_selected{
  background-color: darkgreen !important;
  border-color: #000 !important;
}

.map_mode{
  cursor: pointer;
  display: inline-block;
  padding: 0 10px;
  border: 1px solid #ccc;
  border-radius: 10px;
  margin-bottom: 5px;
}

.map_mode_selected{
  color:#fff;
  background-color: #3f3f3f;
}

.cancel_new_point{
  display:none;
}

.map_btn{
  position: absolute;
  color:red;
  font-size: 18px;
  cursor: pointer;
  right:25px ; top:5px;
}

.map_btn_2{
  position: absolute;
  color:#5b5b5b;
  font-size: 18px;
  cursor: pointer;
  right:50px; top:5px;
}

.map_input{
  display: inline-block;
  padding: 3px 10px;
  border: 1px solid #ccc;
  border-radius: 10px;
  margin-bottom: 5px;
  width: calc(100% - 60px);
  font-size: 10px;
  outline: none;
}


.wifi-marker{
    width:30px;
    height:30px;
    border-radius:50%;
    background:red;
    display:flex;
    align-items:center;
    justify-content:center;
    animation: pulse 1.2s ease-in-out infinite;
    box-shadow:0 0 10px rgba(255,0,0,.6);
}

.wifi-marker i{
    color:#fff;
    font-size:18px;
}

@keyframes pulse{
    0%,100%{
        transform:scale(1);
    }
    50%{
        transform:scale(1.15);
    }
}


.wifi-marker_2{
    width:15px;
    height:15px;
    border-radius:50%;
    background:red;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap: nowrap;
    flex-direction: row;
    box-shadow:0 0 10px rgba(255,0,0,.3);
}

.wifi-marker_2 i{
    color:#fff;
    font-size:9px;
}

@keyframes pulse_2{
    0%,100%{
        transform:scale(1);
    }
    50%{
        transform:scale(1.15);
    }
}

.map_fa_popup{
  font-family: Nazanin !important;
  font-size:12px !important;
  direction: rtl !important;
  color:#000;
}

.map_en_popup{
  font-size:12px !important;
  color:#000;
}

.bootstrap-select.map_select_small .dropdown-toggle {
    height: 27px !important;
    display: flex !important;
    align-items: center !important;

    padding-top: 4px !important;
    padding-bottom: 0 !important;

    margin-top: -2px !important;

    font-size: 12px !important;
    background-color: #fff !important;
}

/* گزینه‌های منوی بازشده */
.bootstrap-select.map_select_small .dropdown-menu > li > a,
.bootstrap-select.map_select_small .dropdown-menu .dropdown-item,
.bootstrap-select.map_select_small .dropdown-menu .text {
    font-size: 11px !important;
    padding-top: 4px !important;
    padding-bottom: 0 !important;
}

.input_small {
    height: 28px !important;
    font-size: 12px !important;
    padding: 2px 55px 2px 8px !important;
    line-height: 24px !important;
}

.small_btn {
    height: 28px !important;
    font-size: 12px !important;
    padding: 2px 8px 2px 8px !important;
    line-height: 24px !important;
}


.small_btn_2 {
    height: 25px !important;
    font-size: 12px !important;
    padding: 0 8px 2px 8px !important;
    line-height: 24px !important;
}

.compass {
    width: 60px;
    height: 60px;
    background: white;
    border-radius: 50%;
    border: 2px solid #333;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-family: Arial;
}

.sector_setting_height{
  margin-top: 10px;
  display:block;
  height: 300px;
  overflow-y:auto;
}

.map_row_scroll{
  display:block;
  height: 210px;
  overflow-y:auto;
  width: 100%;
}

#popup {
    display: none;
    position: fixed;
    overflow: hidden;
    left: -230px;
    top: 66px;
    background: #fff;
    border: 2px solid #aaa;
    border-radius: 4px;
    z-index: 9991;
    width: 226px;
}

#popup.popup-flex{
    display:flex;
    flex-direction:column;
}

#popupHeader{
    flex:0 0 auto;
    background:#000035;
    color:#fff;
    padding:5px 10px;
    cursor:move;
    user-select:none;

    display:flex;
    justify-content:space-between;
    align-items:center;
}

.popup_title{
    font-size:12px;
    font-weight: bold;
}

.popup_close{
    cursor:pointer;
    font-size:14px;
    padding:4px 6px;
    border-radius:4px;
    transition:.2s;
}

.popup_close:hover{
    background:rgba(255,255,255,.2);
}

.popupBody{
    padding:0;
    background-color: #eee;

    height:100vh; 
    max-height: calc(100vh - 66px);
    flex:0 1 auto;       

    line-height: 2;

    overflow-y:auto;   
    overflow-x:hidden;
}



#resultPopup {
    display: none;
    position: fixed;
    overflow: hidden;
    left: 226px;
    top: 66px;
    background: #fff;
    border: 2px solid #aaa;
    border-radius: 4px;
    z-index: 9992;
    width: 700px;
}

#popup.popup-flex{
    display:flex;
    flex-direction:column;
}

#resultPopupHeader{
    flex:0 0 auto;
    background:#000035;
    color:#fff;
    padding:5px 10px;
    cursor:move;
    user-select:none;

    display:flex;
    justify-content:space-between;
    align-items:center;
}

.resultPopupBody{
    padding:0;
    background-color: #eee;

    height:300px; 
    flex:0 1 auto;       

    line-height: 2;

    overflow-y:auto;   
    overflow-x:hidden;

    padding: 10px;
}


.a_tabs{
  padding-top:4px !important; 
  padding-bottom:0 !important;
}

@media (max-width:768px){

  .a_tabs{
  padding-top:8px !important; 
  padding-bottom:8px !important;
}

}

.device_location{
  display: inline-block;
  width: 90px;
  color:#000;
}


.blue_link{
  color:blue;
  cursor: pointer;
  font-size: 13px;
  display: none;
}

.blue_link_show{
  color:blue;
  cursor: pointer;
  font-size: 13px;
}

.blue_link_2{
  color:black;
  font-size: 13px;
  font-weight: bold;
}

.show_coverage_radius{
  color:rgb(0, 0, 154);
  font-size: 13px;
  font-weight: bold;
}

.azimuth_degree_show{
  color:blue;
  font-size: 12px;
  font-weight: bold;
  display: block;
  height: 20px;
  padding: 0 0 0 3px;
  margin-top: -5px !important;
}

.azimuth_degree_show_2{
  color:blue;
  font-size: 12px;
  font-weight: bold;
  display: inline-block;
  padding: 0 20px 1px 20px;
  border:2px solid blue;
  border-radius:5px;
  margin-left:5px;
  margin-top:20px;
}

.small_label{
  font-size: 11px !important;
}

.normal_capitalization{
  text-transform: none !important;
}

.dark-popup .leaflet-popup-content-wrapper {
    background: #141414 !important;
    color: #dddddd !important;
    border: 1px solid #444 !important;
    border-radius: 6px !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.8) !important;
}
.dark-popup .leaflet-popup-tip { background: #141414 !important; border: 1px solid #444 !important; }
.dark-popup .leaflet-popup-close-button { color: #aaa !important; padding: 8px 8px 0 0 !important; }

.tooltip-container {
    position: relative;
}

.tooltip-container .small_label {
    position: relative;
    display: block;
    width: 226px;
}

.tooltip {
    max-width: none !important;
    box-sizing: border-box;
}

.tooltip-inner {
    width: 226px !important;
    max-width: none !important;

    padding: 8px 12px !important;
    box-sizing: border-box;

    white-space: normal;
    text-align: left;
}

.tooltip .tooltip-arrow,
.tooltip .arrow {
    display: none !important;
}

/* .tooltip-inner {
    width: 226px !important;
    max-width: 226px !important;

    white-space: normal;
    text-align: left;
    padding: 8px 12px;

    box-sizing: border-box;
}

.tooltip {
    box-sizing: border-box;
}

.tooltip .tooltip-arrow,
.tooltip .arrow {
    display: none;
} */


.site-label-icon{
    background:none;
    border:none;
}

.site-text{
    white-space: nowrap;
    background: rgba(255,255,255,.9);
    border: 2px solid #1976d2;
    border-radius: 4px;
    padding: 2px 6px;
    font-size: 12px;
    font-weight: bold;
    color: #1976d2;
    box-shadow: 0 1px 3px rgba(0,0,0,.3);
}

.line-distance-label{
    background: #1976d2;
    border: 1px solid #1976d2;
    border-radius: 4px;
    padding: 2px 6px;
    font-size: 11px;
    font-weight: bold;
    color: #fff;
    white-space: nowrap;
}



#loadingText {
    display: inline-flex;
    gap: 1px;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 2px;
}

/* ===== هر نقطه ===== */
#loadingText span {
    opacity: 0;
    animation: dotFade 1.5s infinite ease-in-out;
}

/* ===== تاخیر هر نقطه (هر نیم ثانیه) ===== */
#loadingText span:nth-child(1) {
    animation-delay: 0s;
}
#loadingText span:nth-child(2) {
    animation-delay: 0.5s;
}
#loadingText span:nth-child(3) {
    animation-delay: 1s;
}

/* ===== انیمیشن ===== */
@keyframes dotFade {
    0%, 100% {
        opacity: 0;
        transform: scale(0.5);
    }
    20% {
        opacity: 1;
        transform: scale(1);
    }
    80% {
        opacity: 1;
        transform: scale(1);
    }
}

#line_list {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    height: 200px;      /* یا max-height */
    overflow-y: auto;
    overflow-x: hidden;

    padding: 5px;
}

.line_list_title {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    height: 25px;      /* یا max-height */
    overflow-x: hidden;
}

.line_cell{
  display: inline-block;
  font-weight: bold;
  font-size: 12px;
  padding:5px;
}

.color-box{
  display: block;
  width: 60px;
  height: 16px;
  border:1px solid #aaa;
  border-radius: 1px;
}

.image-box{
  font-size:16px;
}


.point-tooltip{
  font-weight: bold;
  font-size:12px;
}
.point-tooltip-persian{
  font-family: Nazanin !important;
  font-weight: bold;
  font-size:14px;
  direction: rtl;
}


.point-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    box-sizing:border-box;
    box-shadow:0 0 8px rgba(0,0,0,.35);
}

.point-icon i{
    display:block;
    line-height:1;
    margin:0;
    padding:0;
}

.text-ellipsis {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.item_del{
  color:#ff0000;
  cursor: pointer;
}

.item_save{
  color:#008000;
  cursor: pointer;
}

.pitem_save, .litem_save{
  color:#008000;
  cursor: pointer;
}


.item_hide{
  color:#000099;
  cursor: pointer;
}

.pitem_hide, .litem_hide{
  color:#000099;
  cursor: pointer;
}

.item_edit{
  color:#000099;
  cursor: pointer;
}

.point_editing{
  color:#ff0000;
  cursor: pointer;
}

.line_editing{
  color:#ff0000;
  cursor: pointer;
}

.point-list-scroll {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    
    /* ======== بخش مربوط به ارتفاع و اسکرول ======== */
    height: 150px;           /* ارتفاع ثابت */
    min-height: 0;           /* جلوگیری از کشیده شدن توسط Flexbox والد */
    max-height: 150px;       /* برای اطمینان بیشتر */
    overflow-y: auto;        /* اسکرول عمودی */
    
    /* ======== بخش مربوط به بچه‌ها ======== */
    align-items: flex-start; /* بچه‌ها کشیده نشوند */
    align-content: flex-start; /* بچه‌ها از بالا چیده شوند (مهم برای wrap) */
    
    font-size: 12px;
}

/* ======== قانون اجباری برای بچه‌ها ======== */
.point-list-scroll > div {  /* یا دقیقتر: .text-ellipsis */
    height: auto !important; /* هر ارتفاعی که دارند را نادیده بگیر */
    min-height: 0 !important;
    flex-shrink: 0;          /* جلوی جمع شدن عرض را می‌گیرد (اختیاری) */
    align-self: flex-start;  /* override کردن align-items در صورت نیاز */
}

.point-list-scroll-title {
    margin-top:10px;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    font-size: 12px;
    font-weight: bold;
    color: #000;
    width: 100%;
}

.line-list-scroll-title {
    margin-top:10px;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    font-size: 12px;
    font-weight: bold;
    color: #000;
    width: 100%;
}

#point_title{
  color:#000;
  font-size: 12px;
  font-weight: bold;
}

#line_title{
  color:#000;
  font-size: 12px;
  font-weight: bold;
}

.title_accr{
  color:#000;
  font-size: 12px;
  font-weight: bold;
}

.go_to_other_point{
  cursor: pointer;
}


.go_to_other_line{
  cursor: pointer;
}

.thick-box{
  display: block;
  width: 60px;
  height: 1px;
  border-top-color: #000;
  border-top-style: solid;
}

.line-type-box{
  position: relative;
  display: block;
  width: 60px;
  height: 1px;
  border-top-color: #000;
  border-top-width: 4px;
}

.line-type-box-a {
  position: absolute;
  left: 0;
  top: 3px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 12px;
  height: 12px;
  padding: 0;

  border: 1px solid #aaa;
  border-radius: 50%;
  font-size: 9px;
  line-height: 1;
  box-sizing: border-box;
}


.line-type-box-b {
  position: absolute;
  right: 0;
  top: 3px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 12px;
  height: 12px;
  padding: 0;

  border: 1px solid #aaa;
  border-radius: 50%;
  font-size: 9px;
  line-height: 1;
  box-sizing: border-box;
}


.map-line-label-wrapper {
    width: 0 !important;
    height: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.map-line-label {
    position: absolute;
    left: 0;
    top: 0;
    transform: translate(-50%, -50%);
    min-width: max-content;
    padding: 5px 10px;
    border: 2px solid;
    border-radius: 8px;
    background: #fffdf2;
    color: #252525;
    font-family: Nazanin, sans-serif;
    font-size: 12px;
    line-height: 1.5;
    text-align: center;
    white-space: nowrap;
    box-shadow: 0 2px 7px rgba(0, 0, 0, 0.18);
    pointer-events: none;
}

.map-line-label__title {
    font-weight: bold;
}

.map-line-label__distance {
    direction: ltr;
    color: #555;
}

.layer_tabs {
  position: absolute;
  inset: 0;
  z-index: 9999;
  background: #eee;
  color: #000;
  font-weight: bold;
  text-align: center;
  margin-top:0;
  cursor: not-allowed;
  border-radius: 1px;
  padding-top:20px;
  font-size: 12px;
}

.accor_padding{
  padding: 4px 10px !important;
  font-size: 12px !important;
  font-weight: bold !important;
  background-color: #97C05C;
  color:#fff !important
}

.accor_padding.collapsed{
  background-color: #212121;
}

.minus-ac{
  color:#fff !important;
  font-weight: bold;
}

.ti-minus{
  color:#fff !important;
  font-weight: bold;
}

.plus-ac{
  font-weight: bold;
}

.ti-plus{
  font-weight: bold;
}

.accor_padding_content{
  padding: 10px !important;
}


.wireless-marker {
    position: relative;
    width: 40px;
    height: 40px;

    border-radius: 50%;
    overflow: visible;

    box-shadow:
        0 0 3px rgba(255, 0, 0, 1),
        0 0 6px rgba(255, 0, 0, 0.80),
        0 0 10px rgba(255, 0, 0, 0.55),
        0 0 14px rgba(70, 0, 0, 0.25);

    animation: wireless-neon 1.2s ease-in-out infinite alternate;
}

.wireless-marker::before {
    content: "";
    position: absolute;
    inset: -4px;

    border-radius: 50%;

    /*
     * فقط یک‌چهارم دایره نمایش داده می‌شود.
     * ابتدا و انتهای قوس به‌آرامی محو می‌شوند.
     */
    background: conic-gradient(
        from 0deg,
        transparent 0deg,
        rgba(255, 255, 255, 0.3) 10deg,
        #fff 30deg,
        #fff 60deg,
        rgba(255, 255, 255, 0.3) 80deg,
        transparent 90deg,
        transparent 360deg
    );

    /* تبدیل دایره پر به یک حلقه باریک */
    -webkit-mask: radial-gradient(
        farthest-side,
        transparent calc(100% - 2px),
        #000 calc(100% - 2px)
    );

    mask: radial-gradient(
        farthest-side,
        transparent calc(100% - 2px),
        #000 calc(100% - 2px)
    );

    pointer-events: none;
    z-index: 5;

    animation: rotate-wireless-border 1.05s linear infinite;
}

@keyframes rotate-wireless-border {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.wireless-icon {
    position: absolute;
    top: 50%;
    left: 50%;

    width: 72px;
    height: 72px;

    background-color: #ff0000;
    border-radius: 50%;
    overflow: hidden;

    /*
     * 30 تقسیم بر 72 تقریباً برابر 0.416 است
     */
    transform:
    translate(-50%, -50%)
    scale(0.555) /* 40 / 72 */
    rotate(var(--icon-rotate, 0deg));

    transform-origin: center;
}


.wifi-dot {
    position: absolute;
    left: 50%;
    bottom: 10px;

    width: 0;
    height: 0;

    /* مخروط کوتاه‌تر و باریک‌تر */
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 11px solid #fff;

    transform: translateX(-50%);
    opacity: 0;

    animation: show-wifi-cone 1.05s ease-in-out infinite;
}

/* قسمت نیم‌دایره بالای مخروط */
.wifi-dot::before {
    content: "";
    position: absolute;

    width: 14px;
    height: 5px;

    left: -7px;
    top: -13px;

    background-color: #fff;
    border-radius: 50%;
}

/* تنظیمات مشترک موج‌ها */
.wifi-wave {
    position: absolute;
    left: 50%;

    border-style: solid;
    border-color: #fff transparent transparent transparent;
    border-radius: 50%;

    transform: translateX(-50%);
    opacity: 0;

    will-change: opacity;
}

.wifi-wave-1 {
    bottom: -6px;

    width: 40px;
    height: 40px;
    border-width: 5px;

    animation: show-wave-1 1.05s ease-in-out infinite;
}

.wifi-wave-2 {
    bottom: -10px;

    width: 57px;
    height: 57px;
    border-width: 6px;

    animation: show-wave-2 1.05s ease-in-out infinite;
}

.wifi-wave-3 {
    bottom: -14px;

    width: 74px;
    height: 74px;
    border-width: 7px;

    animation: show-wave-3 1.05s ease-in-out infinite;
}

@keyframes show-wifi-cone {
    0% {
        opacity: 0;
    }

    15%,
    88% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes show-wave-1 {
    0%,
    15% {
        opacity: 0;
    }

    35%,
    88% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes show-wave-2 {
    0%,
    35% {
        opacity: 0;
    }

    55%,
    88% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes show-wave-3 {
    0%,
    55% {
        opacity: 0;
    }

    75%,
    88% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.map_list_row{
  padding:5px;
  border-bottom:1px solid #aaa; 
}
.map_list_row:hover{
  background-color: #fff;
}

.map_list_text{
  padding-top:2px;
  font-size: 12px;

}



/* ظرف اصلی آیکون نقاط A و B */
.map-line-point-wrapper {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
}

/* دایره نقاط ابتدا و انتهای خط */
.map-line-point {
	width: 100%;
	height: 100%;
	box-sizing: border-box;

	display: flex;
	align-items: center;
	justify-content: center;

	border: 2px solid var(--point-color, #1976d2);
	border-radius: 50%;

	background-color: var(--point-color, #1976d2);
	color: #fff;

	font-family: Arial, sans-serif;
	font-size: var(--point-font-size, 12px);
	font-weight: 700;
	line-height: 1;

	text-align: center;
	user-select: none;
	pointer-events: none;
}

/* ظرف اصلی برچسب وسط خط */
.map-line-label-wrapper {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
}

/* برچسب عنوان و فاصله */
.map-line-label {
	min-width: 90px;
	box-sizing: border-box;
	padding: 6px 10px;

	background-color: rgba(255, 255, 255, 0.95);
	border: 2px solid var(--line-color, #1976d2);
	border-radius: 8px;

	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.22);

	text-align: center;
	white-space: nowrap;

	transform: translate(-50%, -50%);
	pointer-events: none;
	user-select: none;
}

/* عنوان خط */
.map-line-label__title {
	margin-bottom: 3px;

	color: #222;
	font-family: Tahoma, Arial, sans-serif;
	font-size: 13px;
	font-weight: 700;

	direction: rtl;
	text-align: center;
}

/* فاصله خط */
.map-line-label__distance {
	color: #555;
	font-family: Arial, sans-serif;
	font-size: 12px;
	font-weight: 500;

	direction: ltr;
	text-align: center;
}

/*
 * استایل عمومی عنوان
 */
.map-line-label__title {
	text-align: center;
	font-weight: 700;
	line-height: 1.4;
	white-space: nowrap;
}

/*
 * عنوان فارسی
 */
.map-line-label__title--persian {
	font-family: "Nazanin", Arial, sans-serif;
	direction: rtl;
}

/*
 * عنوان انگلیسی
 */
.map-line-label__title--english {
	font-family: Tahoma, Arial, sans-serif;
	direction: ltr;
  font-size: 10px;
}




/* ظرف آیکون نقطه */
.point-icon-wrapper {
	/*
	 * به margin دست نزنید.
	 * Leaflet از margin برای تنظیم iconAnchor استفاده می‌کند.
	 */
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
}

/* دایره نقطه */
.point-icon {
	width: var(--point-size, 34px);
	height: var(--point-size, 34px);
	box-sizing: border-box;

	display: flex;
	align-items: center;
	justify-content: center;

	background-color: var(--point-color, #1976d2);
	border: 2px solid var(--point-color, #1976d2);
	border-radius: 50%;

	color: #fff;
	cursor: pointer;
	user-select: none;
}

/* آیکون داخل دایره */
.point-icon i {
	display: block;
	margin: 0;
	padding: 0;

	color: #fff;
	font-size: var(--point-font-size, 20px);
	line-height: 1;

	text-align: center;
	pointer-events: none;
}

/* لیبل فارسی و انگلیسی */
.leaflet-tooltip.point-tooltip,
.leaflet-tooltip.point-tooltip-persian {
	box-sizing: border-box;

	padding: 5px 9px;

	background-color: #fff !important;

	border: 2px solid
		var(--point-tooltip-border-color, #1976d2)
		!important;

	border-radius: 6px !important;

	box-shadow: none !important;
	filter: none !important;

	color: #222;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;

	text-align: center !important;
	white-space: nowrap;

	user-select: none;
	pointer-events: none;
}

/* عنوان انگلیسی */
.leaflet-tooltip.point-tooltip {
	direction: ltr;
	font-family: Arial, sans-serif;
}

/* عنوان فارسی */
.leaflet-tooltip.point-tooltip-persian {
	direction: rtl;
	font-family: Tahoma, Arial, sans-serif;
}

/*
 * رنگ مثلث اشاره‌گر برابر رنگ همان دایره
 */
.leaflet-tooltip-top.point-tooltip::before,
.leaflet-tooltip-top.point-tooltip-persian::before {
	display: block !important;
	content: "" !important;

	border-top-color:
		var(--point-tooltip-border-color, #1976d2)
		!important;
}

.leaflet-tooltip.point-tooltip,
.leaflet-tooltip.point-tooltip-persian {
	color: var(--point-tooltip-border-color, #1976d2) !important;
  font-size: 12px;
  font-weight: bold;
}

.leaflet-tooltip.point-tooltip span,
.leaflet-tooltip.point-tooltip-persian span {
	display: block;
	white-space: pre !important;
	text-align: center;
}

.leaflet-tooltip.point-tooltip,
.leaflet-tooltip.point-tooltip-persian {
	white-space: pre !important;
	text-align: center !important;
}

.leaflet-compass {
	width: 60px;
	height: 60px;
	box-sizing: border-box;

	display: grid;

	grid-template-columns:
		20px 20px 20px;

	grid-template-rows:
		20px 20px 20px;

	grid-template-areas:
		". north ."
		"west center east"
		". south .";

	align-items: center;
	justify-items: center;

	background-color: rgba(255, 255, 255, 0.92);
	border: 1px solid #1976d2;
	border-radius: 50%;

	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);

	color: #1976d2;
	font-family: Arial, sans-serif;
	font-size: 10px;
	font-weight: 700;

	direction: ltr;
	user-select: none;
}

.leaflet-compass__north {
	grid-area: north;
	color: #e53935;
}

.leaflet-compass__west {
	grid-area: west;
}

.leaflet-compass__east {
	grid-area: east;
}

.leaflet-compass__south {
	grid-area: south;
}

.leaflet-compass__center {
	grid-area: center;

	width: 5px;
	height: 5px;

	background-color: #1976d2;
	border-radius: 50%;
}

#echart_loading, #echart_no_data{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 10;
  text-align: center;
}


/*
* ظرف اصلی آیکون کلاینت
*/
.client-wireless-marker {
	--client-size: 20px;
	--client-signal-duration: 1.05s;

	position: relative;

	width: var(--client-size);
	height: var(--client-size);

	border-radius: 50%;
	overflow: visible;

	box-shadow:
		0 0 2px rgba(0, 119, 255, 1),
		0 0 4px rgba(0, 119, 255, 0.75),
		0 0 7px rgba(0, 119, 255, 0.45);

	animation:
		client-wireless-neon
		0.75s
		ease-in-out
		infinite
		alternate;
}

/*
* حلقه چرخان دور آیکون
*/
.client-wireless-marker::before {
	content: "";

	position: absolute;
	inset: -2px;
	z-index: 5;

	border-radius: 50%;

	background: conic-gradient(
		from 0deg,
		transparent 0deg,
		rgba(255, 255, 255, 0.3) 10deg,
		#fff 30deg,
		#fff 60deg,
		rgba(255, 255, 255, 0.3) 80deg,
		transparent 90deg,
		transparent 360deg
	);

	-webkit-mask: radial-gradient(
		farthest-side,
		transparent calc(100% - 1px),
		#000 calc(100% - 1px)
	);

	mask: radial-gradient(
		farthest-side,
		transparent calc(100% - 1px),
		#000 calc(100% - 1px)
	);

	pointer-events: none;

	animation:
		rotate-client-border
		1.1s
		linear
		infinite;
}

/*
* چرخش قوس بیرونی
*/
@keyframes rotate-client-border {
	from {
		transform: rotate(360deg);
	}

	to {
		transform: rotate(0deg);
	}
}

/*
* نور آبی آیکون
*/
@keyframes client-wireless-neon {
	from {
		box-shadow:
			0 0 2px rgba(0, 119, 255, 0.65),
			0 0 4px rgba(0, 119, 255, 0.4),
			0 0 6px rgba(0, 119, 255, 0.25);
	}

	to {
		box-shadow:
			0 0 3px rgba(0, 153, 255, 1),
			0 0 6px rgba(0, 153, 255, 0.8),
			0 0 9px rgba(0, 119, 255, 0.55);
	}
}

/*
* دایره اصلی آیکون
*
* ساختار داخلی همچنان 72px است،
* ولی با scale به 20px تبدیل می‌شود.
*/
.client-wireless-icon {
	position: absolute;
	top: 50%;
	left: 50%;

	width: 72px;
	height: 72px;

	background-color: #087cff;
	border-radius: 50%;
	overflow: hidden;

	transform:
		translate(-50%, -50%)
		scale(0.278)
		rotate(
			var(--icon-rotate, 0deg)
		);

	transform-origin: center;
}

/*
* قسمت مرکزی گیرنده
*/
.client-wifi-dot {
	position: absolute;
	left: 50%;
	bottom: 10px;

	width: 0;
	height: 0;

	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	border-top: 11px solid #fff;

	transform: translateX(-50%);
	opacity: 0;

	animation:
		client-receive-dot
		var(--client-signal-duration)
		ease-in-out
		infinite;
}

/*
* نیم‌دایره بالای گیرنده
*/
.client-wifi-dot::before {
	content: "";

	position: absolute;
	left: -7px;
	top: -13px;

	width: 14px;
	height: 5px;

	background-color: #fff;
	border-radius: 50%;
}

/*
* تنظیمات مشترک موج‌ها
*/
.client-wifi-wave {
	position: absolute;
	left: 50%;

	border-style: solid;

	border-color:
		#fff
		transparent
		transparent
		transparent;

	border-radius: 50%;

	transform: translateX(-50%);
	opacity: 0;

	will-change: opacity;
}

/*
* موج کوچک
*/
.client-wifi-wave-1 {
	bottom: -6px;

	width: 40px;
	height: 40px;

	border-width: 5px;

	animation:
		client-receive-wave-1
		var(--client-signal-duration)
		ease-in-out
		infinite;
}

/*
* موج متوسط
*/
.client-wifi-wave-2 {
	bottom: -10px;

	width: 57px;
	height: 57px;

	border-width: 6px;

	animation:
		client-receive-wave-2
		var(--client-signal-duration)
		ease-in-out
		infinite;
}

/*
* موج بزرگ
*/
.client-wifi-wave-3 {
	bottom: -14px;

	width: 74px;
	height: 74px;

	border-width: 7px;

	animation:
		client-receive-wave-3
		var(--client-signal-duration)
		ease-in-out
		infinite;
}

/*
* موج بزرگ:
* ابتدا ظاهر می‌شود و تا پایان باقی می‌ماند.
*/
@keyframes client-receive-wave-3 {
	0% {
		opacity: 0;
	}

	8%,
	88% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

/*
* موج متوسط:
* بعد از موج بزرگ ظاهر می‌شود؛
* موج بزرگ همچنان قابل مشاهده است.
*/
@keyframes client-receive-wave-2 {
	0%,
	24% {
		opacity: 0;
	}

	32%,
	88% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

/*
* موج کوچک:
* بعد از موج متوسط ظاهر می‌شود؛
* دو موج قبلی حذف نمی‌شوند.
*/
@keyframes client-receive-wave-1 {
	0%,
	46% {
		opacity: 0;
	}

	54%,
	88% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

/*
* قسمت مرکزی:
* در آخر ظاهر می‌شود و تمام موج‌ها
* تا آن زمان باقی می‌مانند.
*/
@keyframes client-receive-dot {
	0%,
	66% {
		opacity: 0;
	}

	74%,
	88% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

/*
* ضربدر قرمز کلاینت آفلاین
*/
.client-offline-icon {
	position: absolute;
	top: -5px;
	right: -5px;
	z-index: 20;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 12px;
	height: 12px;

	color: #fff;
	background-color: #e00000;

	border: 1px solid #fff;
	border-radius: 50%;

	box-shadow:
		0 1px 3px rgba(0, 0, 0, 0.4);

	font-size: 8px;
	line-height: 1;

	pointer-events: none;
}

.client-offline-icon i {
	display: block;
	margin: 0;
	padding: 0;

	font-size: 8px;
	line-height: 1;

	transform: none;
}

/*
* حالت قطع ارتباط:
* دایره آبی کم‌رنگ می‌شود، نه خاکستری.
*/
.client-wireless-marker.client-is-offline
.client-wireless-icon {
	background-color: #8fcaff;
	filter: none;
}

/*
* نور بیرونی کلاینت آفلاین
*/
.client-wireless-marker.client-is-offline {
	box-shadow:
		0 0 2px rgba(91, 174, 255, 0.75),
		0 0 5px rgba(91, 174, 255, 0.4);

	animation: none;
}

/*
* سیگنال کلاینت آفلاین کاملاً مخفی باشد
*/
.client-wireless-marker.client-is-offline
.client-wifi-wave,
.client-wireless-marker.client-is-offline
.client-wifi-dot {
	display: none;
	animation: none;
	opacity: 0;
}

/*
* قوس بیرونی کلاینت آفلاین
*/
.client-wireless-marker.client-is-offline::before {
	animation: none;
	opacity: 0.4;

	background: conic-gradient(
		from 0deg,
		transparent 0deg,
		rgba(255, 255, 255, 0.8) 20deg,
		rgba(255, 255, 255, 0.8) 70deg,
		transparent 90deg,
		transparent 360deg
	);
}

/*
* لیبل نام مالک
*/
/*
* تنظیمات مشترک لیبل مالک
*/
.client-owner-tooltip {
	direction: ltr;
	text-align: left;

	display: inline-block !important;

	width: max-content !important;
	min-width: max-content !important;
	max-width: none !important;

	/*
	* جلوگیری از شکستن خودکار متن
	* تگ br همچنان خط جدید ایجاد می‌کند
	*/
	white-space: nowrap !important;
	word-break: normal !important;
	overflow-wrap: normal !important;

	padding: 4px 8px;

	color: #111 !important;
  font-weight: bold;
  font-size: 11px;
	background-color: #fffbed !important;

	line-height: 1.4;
}

/*
* حاشیه لیبل کلاینت آنلاین
*/
.client-owner-tooltip-online {
	border-color: #087cff !important;
}

/*
* حاشیه لیبل کلاینت آفلاین
*/
.client-owner-tooltip-offline {
	border-color: #8fcaff !important;
}

/*
* مثلث شیری‌رنگ لیبل آنلاین
*/
.leaflet-tooltip-top.client-owner-tooltip-online::before {
	border-top-color: #fffbed !important;
}

/*
* مثلث شیری‌رنگ لیبل آفلاین
*/
.leaflet-tooltip-top.client-owner-tooltip-offline::before {
	border-top-color: #fffbed !important;
}

.client-owner-tooltip {
	color: #111 !important;
	background-color: #fffbed !important;
	border-color: #fffbed !important;
}

.leaflet-tooltip-top.client-owner-tooltip::before {
	border-top-color: #fffbed !important;
}

/*
* مثلث لیبل مالک
*/
.leaflet-tooltip-top.client-owner-tooltip::before {
	border-top-color: #087cff;
}

/*
* ظرف لیبل فاصله
*/
.client-line-label-wrapper {
	width: 0;
	height: 0;

	background: transparent;
	border: 0;
}

/*
* لیبل فاصله نزدیک کلاینت
*/
.client-line-label {
	direction: ltr;
	text-align: center;

	position: absolute;
	left: 0;
	top: 0;

	transform:
		translate(-50%, -50%)
		translate(
			var(--label-offset-x, 0),
			var(--label-offset-y, -42px)
		);

	padding: 2px 5px;

	color: #087cff;
	background-color: rgba(255, 255, 255, 0.96);

	border: 1px solid #087cff;
	border-radius: 3px;

	box-shadow:
		0 1px 3px rgba(0, 0, 0, 0.2);

	font-size: 9px;
	font-weight: bold;
	line-height: 1.3;
	white-space: nowrap;

	pointer-events: none;
}

/*
* لیبل فاصله کلاینت آفلاین
*/
.client-line-label-offline {
	color: #d00000;
	border-color: #d00000;
	background-color: rgba(255, 245, 245, 0.96);
}


.bootstrap-select
> select.alert_class
~ .dropdown-toggle.bs-placeholder
.filter-option-inner-inner {
	color: #ccc !important;
}

.with_20_fix{
  width: 200px !important;
}