@font-face {
  font-display: swap;
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url("/static/fonts/roboto/roboto-v30-cyrillic_latin-regular.woff2") format('woff2');
}
@font-face {
  font-display: swap;
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url("/static/fonts/roboto/roboto-v30-cyrillic_latin-700.woff2") format('woff2');
}
body {
  font-family: Roboto;
  font-size: 14px;  
}

h1{
  font-size: 28px;
  font-family: Roboto;
  font-weight: 700;
  color: #0F1379;
}
h4{
  font-family: Roboto;
  font-weight: 700;
  color: #0F1379;
}
h6{
  font-family: Roboto;
  font-weight: 600;
  font-size: 19px;
  color:#EC0000;
  padding: 0 0 0 0 ;
}
.footer-container {
  background-color: #0F1379 !important;
  border-top: 5px solid #EC0000 !important;
}

header, footer {
  background: #0F1379;
  height: 96px;
  max-width: 1704px;
  margin: 0 auto;        
}

header .nav a {font-size: 18px}

footer div.container {
  background: #0F1379;
  border-radius: 12px;
  /* height: 96px; */
  /* margin-top: 0px; */
}

a.grey-dark {
  color: #737796;
  text-decoration: none;
}
.text-gray {
  color: #232323;
}
.primary-default {
  color: #0F1379;
}

.breadcrumb li.active {
  color: #0F1379;
}
.container {
  padding: 0;
}
/* контейнер после кофнигуратора расчета АУП */
.container-gray {
  background: #F3F2F8;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.white-box {
  background: #ffffff;
  border-radius: 24px;
  width: 100%;
}
.gray-box {
  border-radius: 24px;
  width: 100%;    
}
.gray-box h4 {
  color: #232323;
  font-size: 24px;
}
.col-form-label {
  color: #232323;
  font-size: 16px;
  font-weight: bold;
}
.blue-box {
  background: #0F1379;
  border-radius: 12px;
  padding: 12px 16px;
}
.table th, .table td {
  background: none !important;
  border-color: #BAC3E1;
  vertical-align: middle;
}
.form-check-input:checked {
  background-color: #0F1379;
  border-color: #0F1379;
}
.noUi-touch-area {
    background-color: #0F1379;
    margin-top: 5px;
    margin-left: 5px;
    height: 8px;
    width: 8px;
    border-radius: 4px;
}
.noUi-connect {
    background: #0F1379;
}
.noUi-horizontal {
  height: 6px;
}
.noUi-horizontal .noUi-handle {
    width: 34px;
    height: 28px;
    right: -17px;
    top: -12px;
}
.noUi-handle:after, .noUi-handle:before {
    content: None;
}
.noUi-horizontal .noUi-handle {
    width: 20px;
    height: 20px;
    border-radius: 10px;
    right: -18px;
    top: -9px;
}

.btn-primary {
  background-color: #0F1379;
  border-color: #0F1379;
}
.btn-secondary {
  background-color: #BAC3E1;
  border-color: #BAC3E1;
  color: #0F1379;
}

.align-middle {
  /* display: flex;
  align-items: center;
  justify-content: flex-end;   */
  vertical-align: middle !important;
  
}
.text-bold {
  font-weight: bold;
}

.nav-tabs .nav-link {
  color: #0F1379;
}

.nav-tabs button[id^="branch-tab-"]:not(#add-branch-btn) {
  font-weight: bold;
}

/* #myTabContent .tab-pane {
  min-height: 600px;
} */

/* Стили для выделения строк с узлами/оросителями */
.branchTable .sprinkler-row {
  background-color: #BAC3E1;
  font-weight: 500;
}

.branchTable .sprinkler-row td {
  vertical-align: middle;
}

.branchTable .section-row {
  background-color: #ffffff;
}

.branchTable .section-row td {
  vertical-align: middle;
}

.branchTable .node-row {
  background-color: #BAC3E1;
  font-weight: 600;
}

.branchTable .node-row td {
  vertical-align: middle;
}


/* изменения в html коде  */
table.parameters_aup td {
    padding: 5.5px 5px; 
}


#annular_bool {
    /* margin-left: auto;  */
    width: 20px; /* ширина чекбокса */
    height: 20px; /* высота чекбокса */
    cursor: pointer; /* курсор при наведении */
    accent-color: #0F1379;
}
#annular_feed {
    display: none;
}

.wiget {
    width: 40%;
    /*max-width: 120px;*/ /* или нужная ширина */
    height: auto;
    padding: 0px;
    font-size: 14px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    text-align: right;
    background-color: transparent;
    /*border-color: #0F1379;*/
}
    .wiget:hover {
        border: 2px solid #0F1379; /* более толстая рамка и нужный цвет */        
    }
    .wiget:focus {
        outline: 1px solid #0F1379;
        outline-offset: 0px;
      
    }



    .loader-container {
      display: none;       
      
      position: fixed; /* на весь экран */
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 9999; /* Переносим z-index сюда, чтобы перекрыть ВСЮ страницу */

      
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      
      /* Интерактив */
      pointer-events: auto;     
      cursor: wait;     
      background: rgba(255, 255, 255, 0.8); /* Чуть плотнее фон, чтобы контент под ним был менее активным визуально */
    }

    .loader {        
        width: 11em; 
        height: 11em;    
        border: 1.2em solid transparent;     
        border-top: 1.2em solid #0F1379;  
        /* border-top: 1.2em solid #010105;      */
        border-radius: 50%;
        animation: load3 1.4s infinite linear;
        margin-bottom: 20px; /* Отступ между спиннером и текстом h1 */
    }

  
  


    
  
  @-webkit-keyframes load3 {
    0% {
      -webkit-transform: rotate(0deg);
      transform: rotate(0deg);
    }
    100% {
      -webkit-transform: rotate(360deg);
      transform: rotate(360deg);
    }
  }
  @keyframes load3 {
    0% {
      -webkit-transform: rotate(0deg);
      transform: rotate(0deg);
    }
    100% {
      -webkit-transform: rotate(360deg);
      transform: rotate(360deg);
    }
  }



@media (min-width: 300px) {
  /* h1{
    font-size: 24px;
  } */
  .logo {
    height: 55px;
  }
  /* контейнер для всей формы (главная, конфи расчет АУП, основная форма ) */
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {    
      max-width: 90%;
      
  }
  .container-gray {
    padding: 10px;
    border-radius: 36px;
  }
  .white-box {
    padding: 10px 20px;
    margin-bottom: 1em;
  }
  .gray-box {
    padding: 10px;
  }
}
@media (min-width: 1600px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
      max-width: 1704px;
  }
  header, footer {
    border-radius: 12px;
  }
  /* h1{
    font-size: 36px;
  } */
  .logo {
    margin-left: 1.5rem !important;
    height: 68px;
  }
  .container-gray {
    border-radius: 36px;
    padding: 30px;
  }
  .white-box {
    padding: 20px 40px;
  }
  .gray-box {
    background: #F3F2F8;
    padding: 20px 40px;
  }
}

/* Код под занчок технической помощи  */
.icon {
        width: 65px;
        height: 65px;
        z-index: 99993;
    }

    .icon.icon-top {
        position: fixed;
        top: 50px;
        left: auto;
        right: 33px;
        bottom: auto;
    }

    .icon-block {
        position: absolute;
        width: 65px;
        height: 65px;
        top: 0;
        right: 0;

        border-radius: 50px;
        background-color: #0f1379;
        color: #fff;
        font-size: 40px;

        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
        z-index: 2;
        transition: width .6s ease-in-out,
            opacity .2s ease-in-out;
        will-change: width;
        cursor: pointer;
    }

    .icon-block:before,
    .icon-block:after {
        content: '';
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        border-radius: 100%;
        will-change: transform, opacity;
    }

    .icon-block:before {
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: 100px;
        height: 100px;
        background-color: #0f1379;
        opacity: 0;
        animation: circle-fill-anim 2.3s infinite ease-in-out .6s;
        box-shadow: 0 0 2px 0 #0f1379;
    }

    .icon-block:after {
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: 130px;
        height: 130px;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;

        border: 1px solid #0f1379;
        opacity: 0;
        animation: circle-anim 2.2s infinite ease-in-out .6s;
    }


    .svg-icon {
        display: inline-block;
        width: 1em;
        height: 1em;
        fill: currentColor;
        position: relative;
    }

    @keyframes circle-fill-anim {

        0%,
        100% {
            transform: translate(-50%, -50%) rotate(0) scale(0.6) skew(1deg);
            opacity: .2;
        }

        50% {
            transform: translate(-50%, -50%) rotate(0) scale(1) skew(1deg);
            opacity: .2;
        }
    }

    @keyframes circle-anim {
        0% {
            transform: translate(-50%, -50%) rotate(0) scale(0.5) skew(1deg);
            opacity: .01;
        }

        30% {
            transform: translate(-50%, -50%) rotate(0) scale(0.7) skew(1deg);
            opacity: .5;
        }

        100% {
            transform: translate(-50%, -50%) rotate(0) scale(1) skew(1deg);
            opacity: .01;
        }
    }
