:root {

  /*  Цвета  */
  --GREEN_SEA:    #16A085; /*GREEN SEA*/
  --EMERLAND:     #2ECC71; /*EMERLAND*/
  --NEPHRITIS:    #27AE60; /*NEPHRITIS*/
  --PETER_RIVER:  #3498DB; /*PETER RIVER*/
  --BELIZE_HOLE:  #2980B9; /*BELIZE HOLE*/
  --AMETHYST:     #9B59B6; /*AMETHYST*/
  --WISTERIA:     #8E44AD; /*WISTERIA*/
  --WET_ASPHALT:  #34495E; /*WET ASPHALT*/
  --MIDNIGHT_BLUE:#2C3E50; /*MIDNIGHT BLUE*/
  --NIGHT_SHADE:  #22313f; /*NIGHT SHADE*/
  --SUN_FLOWER:   #F1C40F; /*SUN FLOWER*/
  --ORANGE:       #F39C12; /*ORANGE*/
  --CARROT:       #E67E22; /*CARROT*/
  --PUMPKIN:      #D35400; /*PUMPKIN*/
  --ALIZARIN:     #E74C3C; /*ALIZARIN*/
  --POMEGRANATE:  #C0392B; /*POMEGRANATE*/
  --CLOUDS:       #ECF0F1; /*CLOUDS*/
  --LIGHT_SILVER: #f4f4f4; /*LIGHT SILVER*/
  --SILVER:       #e8e9eb; /*SILVER*/
  --DARK_SILVER:  #BDC3C7; /*DARK SILVER*/
  --CONCRETE:     #95A5A6; /*CONCRETE*/
  --ASBESTOS:     #7F8C8D; /*ASBESTOS*/


  /*  Переменные */
  --typeColumn: 40px; /* Колонка с типом заявки */
  --action1: calc(100vw - var(--typeColumn));  /*  Боковой блок слева для дальнейших действий по заявке*/
}

@media screen {
  * {
    font-family: 'Podkova', serif;
    font-size: 14px;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
}

* HTML {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

/*  Тело документа  */
body {
  width: 100vw;
  overflow-x: hidden;
  color: #5f7370;
}

/*  Флаги статуса  */
.f-one {
      color: var(--DARK_SILVER);
    }

    .f-two {
      color: var(--BELIZE_HOLE);
    }

    .f-three {
      color: var(--GREEN_SEA);
    }

    .f-four {
      color: var(--ALIZARIN);
    }



/*  Для скрола  */
  ::-webkit-scrollbar-track
  {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    border-radius: 4px;
    background-color: #F5F5F5;
  }

  ::-webkit-scrollbar
  {
    width: 6px;
    background-color: #F5F5F5;
  }

  ::-webkit-scrollbar-thumb
  {
    border-radius: 1px;
    -webkit-box-shadow: inset 0 0 3px rgba(0,0,0,.3);
    background-color: var(--POMEGRANATE);
  }


/* стили для настольных компьютеров и ноутбуков */
@media only screen  and (min-width: 480px) {
  .typeName {
    font-size:16px;
  }

  .fa-burn, .fa-clipboard-check  {
    color: var(--GREEN_SEA);
  }

  .fa-gas-pump, .fa-trash-alt  {
    color: var(--POMEGRANATE);
  }

  .fa-route, .fa-tools, .fa-pencil-alt  {
    color: var(--BELIZE_HOLE);
  }

  .fa-road {
    color: var(--ASBESTOS);
  }

  #head {
    margin: 0px;
    height: 34px;
    padding-right: 20px;
    padding-left: 20px;
    top:  0px;
    z-index: 999;
    color: var(--CLOUDS);
    background: var(--WET_ASPHALT);
    border-bottom: 1px solid var(--SILVER); /* Линия снизу от текста */
    display: grid;
    grid-template-columns: 50px 50px repeat(2, 1fr);
    grid-template-rows: minmax(34px, 1fr);
    align-items: center;
  }

  #addRequest {
    justify-self: start;
    align-self: center;
  }

  #message {
    justify-self: end;
    align-self: center;
  }


  #logo {

    display: grid;
    grid-template-columns:  1fr 26px;
    grid-template-rows: auto;
    column-gap: 8px;
    justify-self: end;
    align-self: center;
  }

  #logo > div:first-child {
    justify-self: end;
    align-self: center;
  }

  #logo > div:last-child {
    justify-self: start;
    align-self: center;
  }

  
  .wrapper > div {
    display: grid;
    position: relative;
    grid-template-columns: var(--action1) var(--typeColumn) 100px 50px 80px repeat(3, 1fr) 60px 200px 50px 200px repeat(3, 1fr) var(--typeColumn);
    grid-template-rows: minmax(40px, 1fr);
    border-bottom: 1px solid var(--SILVER); /* Линия снизу от текста */
    word-wrap: break-word; /* Перенос слов */
    column-gap: 0px;
    margin-left: calc(0px - var(--action1));
    min-width: calc(100vw + (calc(var(--action1) - var(--typeColumn) )));
  }

  .wrapper > div:first-child {
    background: var(--GREEN_SEA);
    font-weight: 600;
    color: var(--CLOUDS);
    position: sticky;
    top:  0px;
    z-index: 999;
  }
    
  .wrapper > div:not(:first-child):nth-child(odd) {
    background: var(--LIGHT_SILVER);
  }


  /* Стили СТРОК по их статусу (открыта, закрыта, в работе, отменена) */
  
  /* Открытая заявка */
  .request_status1 {
    background: none;
  }

  /* Пролонгированная заявка */
  .request_status2 {
    background: #3498DB25;
  }

  /* Закрытая заявка */
  .request_status3 {
    background: #2ECC7125;
  }

  /* Отмененная заявка */
  .request_status4 {
    background: #C0392B25;
  }


  .x {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, auto));
    grid-template-rows: unset;
    /*grid-column-gap: 20px;*/
    justify-content: justify;
    
  }
  .x > div {
    margin: 0px;
    display: grid;
    cursor: pointer;
    background: #16A085;
  }

  .x > div:nth-child(even) {
    background: var(--GREEN_SEA);
  }

  .x > div:nth-child(odd) {
    background: var(--BELIZE_HOLE);
  }

  .x > div.loading {
    background: var(--BELIZE_HOLE);
  }

  .x > div > a {
    display: block; /* Ссылка как блочный элемент */
    text-decoration: none; /* Отменяем подчеркивание у ссылки */
    justify-self: center;
    align-self: center;
    color: #fff;
  }

  
  .wrapper > div > div:not(:first-child):nth-of-type(n)  {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: unset;
    align-items: center;
    text-align: center;
    justify-content: start;
    overflow-x: hidden;
  }

  .y, .a, .b, .d, .e, .k,.k2 {
    justify-items: center;
  }

  .c, .f, .g, .i, .k, .k2 {
     padding: 0 4px;
  }

  div.c  {
    color: #4e1b1b;
    font-weight: bold;
  }

  /*Гос номер */
  div.c > span {
    font-size:  12px;
    font-weight: normal;
    padding: 0;
    margin: 0;
    color: #5f7370;
  }

  div.hc {
    color:  #fff;
  }


  .y:hover {
    cursor: grabbing;
  }

  .wrapper > div > div:not(:last-child) {
    border-right: 1px solid var(--SILVER);
  }



}


.pagination {
  bottom: 15px; 
  right: 30px; 
  z-index: 999;
  color: var(--WET_ASPHALT);
  position: fixed;
  line-height: 40px;
  cursor: pointer;
  opacity: 1;
}

#report {
  bottom: 15px; 
  left: 155px; 
  z-index: 999;
  color: var(--WET_ASPHALT);
  position: fixed;
  line-height: 40px;
  cursor: pointer;
  opacity: 1;
}

#icon-staff {
  bottom: 15px; 
  left: 30%; 
  z-index: 999;
  color: var(--WET_ASPHALT);
  position: fixed;
  line-height: 40px;
  cursor: pointer;
  opacity: 1;
}

#icon-exit-staff {
  bottom: 15px; 
  left: 50%; 
  z-index: 999;
  color: var(--WET_ASPHALT);
  position: fixed;
  line-height: 40px;
  cursor: pointer;
  opacity: 1;
}

#filter, #addRequest {
  cursor: pointer;
}

#filter:hover {
  opacity: 1;
  color: var(--PETER_RIVER);
}

#addRequest:hover {
  opacity: 1;
  color: var(--PETER_RIVER);
}

.pagination:hover, .drain_report:hover {
  opacity: 1;
  color: var(--PETER_RIVER);
}


#addRequest {
  bottom: 15px; 
  left: 30px; 
  z-index: 999;
  color: var(--WET_ASPHALT);
  position: fixed;
  line-height: 40px;
  cursor: pointer;
  opacity: 1;
}

#filter {
  bottom: 15px; 
  left: 90px; 
  z-index: 999;
  color: var(--WET_ASPHALT);
  position: fixed;
  line-height: 40px;
  cursor: pointer;
  opacity: 1;
}


 .filter {
  display: none;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}


/*-- Основной контейнер --*/
.modalLogin {
  display: none;
  width:280px;
  height:200px;
  position:absolute;
  left:50%;
  top:50%;
  margin:-100px 0 0 -150px;
}


/*-- Форма для логина --*/

.login {
  padding: 10px 20px 20px 20px; 
  background: var(--color00);

}

.login input {
  padding: 15px 10px;
  margin-bottom: 15px;
  width: 240px;
  line-height: 18px;
  border: 1px solid var(--SILVER);
  -webkit-transition: border-width 0.5s ease;
  -o-transition: border-width 0.5s ease;
  transition: border-width 0.5s ease;
  border-radius: 2px;
  color: var(--CLOUDS);
}

.login input:focus {
  outline: none;
  line-height: 18px;
  color: #444;
  border-color: var(--BELIZE_HOLE);
  border-left-width: 35px;
  width: 205px;
  -webkit-transition: border-width 1s ease;
  -o-transition: border-width 1s ease;
  transition: border-width 1s ease;
  border-radius: 2px;
}

.login button {
  width: 262px;
  height: 100%;
  padding: 20px 10px;
  background: var(--BELIZE_HOLE);
  color: var(--CLOUDS);
  border: none;
  margin-top: 20px;
  border-radius: 2px;
  cursor: pointer;
}


/*-- Форма для меню --*/

.filterForm {
  
  padding: 10px 20px 20px 20px; 
  margin-top: 10px; 
  background: var(--color00);
}

.filterForm input, .filterForm select {
  display: block;
  padding: 6px 10px;
  margin: 4px 0px 0px 0px;
  width: 100%;
  line-height: 18px;
  border: 1px solid var(--SILVER);
  background-color: #eee;
/*   -webkit-transition: border-width 0.1s ease; */
/*   -o-transition: border-width 0.1s ease; */
/*   transition: border-width 0.1s ease; */
  border-radius: 2px;
  color: #444;
}

.filterForm select option {
  color: #444;
}

.filterForm input:focus {
  outline: none;
  line-height: 18px;
  color: var(--BELIZE_HOLE);
  border-color: var(--color03);
  border-left-width: 35px;
}

.filterForm button {
  width: 100%;
/*  height: 100%;*/
  padding: 16px 10px;
  background-color: var(--color03);
  color: var(--color00);
/*   display: block; */
  border: none;
  margin-top: 10px;
  position: relative;
  max-height: 60px;
  border-radius: 0 0 2px 2px;
  border-bottom-width: 2px;
}

 
div[class*="blocked_"] {
  color: #e91e63;
  font-weight: bold;
}


/*  Модальное окно для каждой заявки на полный экран  */
#fullScreenModal {
  margin: 0px;
  padding: 0px;
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 1100;
  width: 100%;
  height: 100vh;
  background: #000;
  opacity:0.5;
  overflow-y: auto;
  display: none;
}


/*  --------- Форма добавления новой заявки ---------  */

.ui-autocomplete-category {
        font-weight: bold;
        padding: .2em .4em;
        margin: .8em 0 .2em;
        line-height: 1;
    }

/* Основной контейнер (блок) для формы */
.form-container {
  margin: 0;
  position: fixed;               /* 2 */
  top: 50%;
  left: 50%;                         /* 3 */
  transform: translate(-50%, -50%);  /* 4 */
  border: 1px solid #2C3E50;
  background: #e8e9eb;
  border-radius: 5px;
  box-shadow: 0 0 10px rgba(0,0,0,0.5);
  overflow: hidden;
  z-index: 1101;
  width: 320px;
  display: none;
}

/* Заголовок для формы  оформление*/
.form-header  {
  background: #3498DB;
  border-bottom: 1px solid #2C3E50;
  padding: 8px 30px;
  text-transform: uppercase;
  font-size: 12px;
  color: #fff;
  
}

/* Заголовок для формы */
.form-header h2 {
  margin: 0;
  text-align: center;
}

/* Отступы для основной формы */
.form1 {
  margin: 0px 0px 10px 0px;
  padding: 10px 20px;
}

.form-control {
  margin: 0px 0px;
  padding: 8px 0px;
  position: relative;
}

.form-control label {
  display: none;
}

.form-control input,
.form-control select,
.form-control textarea {
  background: #f4f4f4;
  border: 1px solid var(--CONCRETE);
  border-radius: 4px;
  padding: 8px;
  font-size: 14px;
  display: block;
  width: 100%;
}

input#form-tabn, .staff_tabn {
  display: none;
}

/*   Для правки изображений в форме   */
#form-images {
  margin: 0px;
  padding: 0px;
  display: grid;
  grid-template-columns: repeat(2, minmax(24px, auto));
  grid-template-rows: 1fr;
  column-gap: 10px;
  align-content: center;
  justify-content: space-between;
  align-items: center;
}



.u-files {
  max-height: 160px;
  overflow-y: auto;
}

.fa-file-image {
  font-size:24px;
  color: #F1C40F;
}
.fa-file-word {
  font-size:24px;
  color: #2980B9;
}
.fa-file-excel {
  font-size:24px;
  color: #27AE60;
}
.fa-file-pdf {
  font-size:24px;
  color: #C0392B;
}

 /* для элемента input c type="checkbox" */
.checkbox input.custom-checkbox {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

/* для элемента label, связанного с .custom-checkbox */
.checkbox input.custom-checkbox+label {
  display: inline-flex;
  align-items: center;
  user-select: none;
  padding-left: 4px;
}

/* для ссылки, связанной с .custom-checkbox */
.checkbox input.custom-checkbox + label a {
  padding: 4px 2px;
  text-decoration: none;
  color: #34495E;
  border-radius: 4px;
}

.checkbox input.custom-checkbox+label a:hover {
  background: #2C3E50;
  color: #fff;
}

/* создание в label псевдоэлемента before со следующими стилями */
.checkbox input.custom-checkbox+label::before {
  content: '';
  display: inline-block;
  width: 1.4em;
  height: 1.4em;
  flex-shrink: 0;
  flex-grow: 0;
  border: 1px solid #adb5bd;
  border-radius: 0.25em;
  margin-right: 0.5em;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50% 50%;
}

/* стили при наведении курсора на checkbox */
.checkbox input.custom-checkbox:not(:disabled):not(:checked)+label:hover::before {
  border-color: #b3d7ff;
}

/* стили для активного чекбокса (при нажатии на него) */
.checkbox input.custom-checkbox:not(:disabled):active+label::before {
  background-color: #b3d7ff;
  border-color: #b3d7ff;
}

/* стили для чекбокса, находящегося в фокусе */
.checkbox input.custom-checkbox:focus+label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* стили для чекбокса, находящегося в фокусе и не находящегося в состоянии checked */
.checkbox input.custom-checkbox:focus:not(:checked)+label::before {
  border-color: #80bdff;
}

/* стили для чекбокса, находящегося в состоянии checked */
.checkbox input.custom-checkbox:checked+label::before {
  border-color: #2980B9;
  background-color: #2980B9;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

/* стили для чекбокса, находящегося в состоянии disabled */
.checkbox input.custom-checkbox:disabled+label::before {
  background-color: #e9ecef;
}





/*  Убираем подсветку во всех браузерах при фокусировке и добавляем свой цвет */
.form-control input:focus,
.form-control select:focus,
.form-control textarea:focus {
  outline: 0;
  outline-offset: 0;
  border-color: #2C3E50;
}

.form-control textarea {
  height: 50px;
}

/* Удалили стрелку вниз для полей select при выборке в поле */
.form-control select,
.form3-body .row select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}



/* Удалили стрелки вниз для полей input[type="number"] */
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

/* Серый текст для select в форме */
select#form-reason,
select#form-reason2,
select#form-area,
select#form-type  {
  color: grey;
}

select#form-type option:nth-child(2) {
  /*color: red;*/
}

/* Обводка для полей ввода в форме (положительный результат) */
.form-control.success input,
.form-control.success select,
.form-control.success textarea  {
  border-color: #16A085;
}

/* Обводка для полей ввода в форме (отрицательный результат) */
.form-control.error input,
.form-control.error select,
.form-control.error textarea  {
  border-color: #C0392B;
}


/* Визуализация значков корректного или неверного ввода в строке ввода */
.form-control i  {
  position: absolute;
  top: 18px;
  right: 10px;
  visibility: hidden;
}

.form-control.success i.fa-check-circle  {
  visibility: visible;
  color: #16A085;
}

.form-control.error i.fa-exclamation-circle  {
  visibility: visible;
  color: #C0392B;
}

/* Визуализируем кнопку загрузки файлов */
.form-control span.label {
  position: relative;
  z-index: 0;
  display: inline-block;
  width: 100%;

  border: 1px solid var(--CONCRETE);
  border-radius: 4px;
  padding: 8px;
  font-size: 14px;
  text-align: center;

  background: #2980B9;
  cursor: pointer;
  color: #fff;
  text-transform:uppercase;
}

#form-upload {
    display: inline-block;
    position: absolute;
    z-index: 1;
    width: 0.1px;
    height: 0.1px;
    top: -1000px;
    left: -1000px;
    opacity: 0;
    cursor: pointer;
}


/* Надписи под вводом об ошибке или... */
.form-control small {
  visibility: hidden;
  position: absolute;
  bottom: -6px;
  right: 4px;
  font-size: 12px;
}

.form-control.error small {
  color: #C0392B;
  visibility: visible;
}

/* Кнопки формы Добавить и Отменить*/
.form-action  {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr;
  grid-column-gap: 20px;
  justify-content: space-between;
  align-content: center;
  margin-top: 10px;
}

.form1 button {
  color: #fff;
  box-shadow: none;
  border: 1px solid #2C3E50;
  width: 100%;
  padding: 8px;
  border-radius: 4px;
  font-size: 14px;
  text-transform: uppercase;
}

button#form-cancel-button {
  background: #7F8C8D;
}

button#form-ok-button {
  background: #3498DB;
}

#form-cancel-button:hover,
#form-ok-button:hover {
  cursor: pointer;
  background: #34495E;
}





/* --------------- Модальное окно вывода истории по заявке -----------------*/
.ecr {
  margin: 0;
  padding: 0;
  z-index: 10202;
  width: 600px;
  position: fixed;
  transform: translate(-50%, -50%);
  top: 50%; 
  left: 50%;
  display: none;
  box-shadow: 0 0 10px rgba(0,0,0,0.5);
}

.ecr > div {
  display: grid;
  grid-template-columns: 60px 240px 120px 24px 24px 24px;
  grid-template-rows: minmax(20px, 1fr);
  background:#fff;
  overflow-x: hidden;
  word-wrap: break-word;
  justify-content: space-around;
  align-content: space-around;
  align-items: center;
  padding: 8px 0px;
}

.ecr > div:nth-of-type(odd)  {
    background: #e8e9eb; /* Цвет фона */
 } 

.ecr > div:first-child {
  background:#2980B9;
  color: #fff;
  display: grid;
  align-items: start;
  grid-template-columns: 1fr;
  grid-template-rows: minmax(20px, 1fr);
  text-align: center;
  border-radius: 4px 4px 0px 0px;
}

.ecr > div:first-child > div:first-child {
  border-radius: 4px 4px 0px 0px;
  background: #2C3E50;
  padding: 8px;
  position: relative;
  top: -8px;
}

.ecr > div:last-child {
  background:#2980B9;
  border-radius: 0px 0px 4px 4px;
  padding: 8px 0px;
  text-transform: uppercase;
  font-size: 12px;
  color: #fff;
  grid-template-columns: 1fr;
  text-align: center;
  cursor: pointer;
}

.ecr > div:last-child:hover {
  background: #2C3E50;
}

.pick_ecr {
  font-size: 24px;
  cursor: pointer;
}

.unixtime, .h_event, .h_note, .h_files, .h_status {
  display: none;
}

.lookatimg img {
   z-index: 11002;
  object-fit: cover;
  width: 600px;
  height: auto;
}

/*+++++++++++++++++  ПОДТВЕРЖДЕНИЕ СЛИВОВ ПО ЧАСТЯМ  ++++++++++++++++++++*/
.form2, .form3, .form4 {
  margin: 0px;
  padding: 0px;
  z-index: 10202;
  display:none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: 2px solid #2C3E50;
  background: #e8e9eb;
  border-radius: 5px;
  box-shadow: 0 0 10px rgba(0,0,0,0.5);
  overflow: auto;
  width: 320px;
}

.form2-header  {
  background: #3498DB;
  border-bottom: 2px solid #2C3E50;
  padding: 10px 20px;
  text-transform: uppercase;
  font-size: 12px;
  color: #fff;
  
}

.form2-header h2, .form3-header h2 {
  margin: 0;
  text-align: center;
}

.form2-body, .form3-body {
  margin-top: 10px;
  position: relative;
  overflow: auto;
  max-height: 300px;  
}

.form2-body::-webkit-scrollbar-track
  {
    -webkit-box-shadow: inset 0 0 2px rgba(0,0,0,0.3);
    border-radius: 2px;
    background-color: #F5F5F5;
  }

.form2-body::-webkit-scrollbar
  {
    width: 2px;
    background-color: #F5F5F5;
  }

.form2-body::-webkit-scrollbar-thumb
  {
    border-radius: 4px;
    -webkit-box-shadow: inset 0 0 3px rgba(0,0,0,.3);
    background-color: #2980B9;
  }


.row:nth-of-type(odd)  {
    background: #e8e9eb; /* Цвет фона */
 } 

.row {
 display: grid;
  grid-template-columns: 140px 60px 80px;
  grid-template-rows: minmax(40px, 1fr);
  grid-gap: 0px;
  background:#fff;
  overflow-x: hidden;
  word-wrap: break-word;
  justify-content: space-around;
  align-content: space-around;
  align-items: center;
}

.row input {
  padding: 6px;
  border-radius: 4px;
  font-size: 14px;
  box-shadow: none;
  border: 1px solid #2C3E50;
}

.form2-buttons button:first-child {
    grid-area: f2badd;
    background: #27AE60;
}

.form2-buttons button:last-child {
    grid-area: f2bcancel;
    background: #7F8C8D;
}

.form2-buttons button:nth-child(2) {
    grid-area: f2bapply;
    background: #2980B9;
}

.form2-buttons {
  margin-bottom: 8px;
  padding: 8px;
  display: grid;
  grid-gap: 20px 10px;
  grid-template-areas:
  "f2badd f2badd"
  "f2bapply f2bcancel";
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 40px 40px;
}

.form2 button {
  color: #fff;
  box-shadow: none;
  border: 1px solid #2C3E50;
  width: 100%;
  padding: 6px;
  border-radius: 4px;
  font-size: 14px;
  text-transform: uppercase;
}


.form2 button {
  background: #ccc;
}

.form2 button:hover {
  cursor: pointer;
  background: #34495E;
}
/*+++++++++++++++++                                  ++++++++++++++++++++*/


/*------------------  Всплывающее окно отчета   -------------------------*/

.form3, .form4 {
  margin: 0px;
  padding: 0px;
  border: 2px solid #2C3E50;
  background: #e8e9eb;
  border-radius: 5px;
  box-shadow: 0 0 10px rgba(0,0,0,0.5);
  overflow: auto;
  width: 320px;
}

.form3-header  {
  background: #3498DB;
  border-bottom: 2px solid #2C3E50;
  padding: 10px 20px;
  text-transform: uppercase;
  font-size: 12px;
  color: #fff;
  margin-bottom: -10px;
  
}

.form3-header h2 {
  margin: 0;
  text-align: center;
}

.form3-body {
  max-height: 400px;
}

.form3-body::-webkit-scrollbar-track
  {
    -webkit-box-shadow: inset 0 0 2px rgba(0,0,0,0.3);
    border-radius: 2px;
    background-color: #F5F5F5;
  }

.form3-body::-webkit-scrollbar
  {
    width: 2px;
    background-color: #F5F5F5;
  }

.form3-body::-webkit-scrollbar-thumb
  {
    border-radius: 4px;
    -webkit-box-shadow: inset 0 0 3px rgba(0,0,0,.3);
    background-color: #2980B9;
  }

.form3-body .row {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: minmax(30px, 1fr);
  grid-gap: 0px;
  background:#e8e9eb;
  overflow-x: hidden;
  word-wrap: break-word;
  justify-content: space-around;
  align-content: space-around;
  align-items: center;
  padding: 8px;
}

.form3-body .row input,
.form3-body .row select {
  padding: 10px;
  border-radius: 4px;
  font-size: 14px;
  box-shadow: none;
  border: 1px solid #2C3E50;
}

.form3-body .row select  {
  color: grey;
  width:  100%;
}

.form3-body .row2 {
  display: grid;
  grid-template-columns: 4px 1fr ;
  grid-template-rows: minmax(20px, 1fr);
  grid-gap: 0px;
  background:#fff;
  overflow-x: hidden;
  word-wrap: break-word;
  justify-content: space-around;
  align-content: space-around;
  padding: 8px;
}


.form3-body .row:nth-of-type(odd) {
  /*background: #fff; /* Цвет фона */*/
}

.form3-body .row2:nth-of-type(even)  {
    /*background: #e8e9eb; /* Цвет фона */*/
 } 


.form3-buttons button:first-child, .form4-buttons button:first-child, .form3 input[type=submit], .form4 input[type=submit] {
    grid-area: f2bapply;
    background: #27AE60;
}

.form3-buttons button:last-child, .form4-buttons button:last-child {
    grid-area: f2bcancel;
    background: #7F8C8D;
}

.form3-buttons, .form4-buttons {
  margin-bottom: 8px;
  padding: 8px;
  display: grid;
  grid-gap: 20px 10px;
  grid-template-areas:
  "f2bapply f2bcancel";
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 40px;
}

.form3 button, .form3 input[type=submit], .form4 button, .form4 input[type=submit] {
  color: #fff;
  box-shadow: none;
  border: 1px solid #2C3E50;
  width: 100%;
  padding: 6px;
  border-radius: 4px;
  font-size: 14px;
  text-transform: uppercase;
  cursor: pointer;
}

.form3 button:hover, .form3 input[type=submit]:hover, .form4 button:hover, .form4 input[type=submit]:hover {
  cursor: pointer;
  background: #34495E;
}

 /* для элемента input c type="checkbox" */
.row2 .custom-checkbox {
  position: relative;
  z-index: -1;
  opacity: 0;
}

/* для элемента label, связанного с .custom-checkbox */
.row2 .custom-checkbox+label {
  display: inline-flex;
  align-items: center;
  user-select: none;
  padding-left: 0px;
}






/* создание в label псевдоэлемента before со следующими стилями */
.row2 input.custom-checkbox+label::before {
  content: '';
  display: inline-block;
  width: 1.4em;
  height: 1.4em;
  flex-shrink: 0;
  flex-grow: 0;
  border: 1px solid #adb5bd;
  border-radius: 0.25em;
  margin-right: 0.5em;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50% 50%;
}

/* стили при наведении курсора на checkbox */
.row2  input.custom-checkbox:not(:disabled):not(:checked)+label:hover::before {
  border-color: #b3d7ff;
}

/* стили для активного чекбокса (при нажатии на него) */
.row2  input.custom-checkbox:not(:disabled):active+label::before {
  background-color: #b3d7ff;
  border-color: #b3d7ff;
}

/* стили для чекбокса, находящегося в фокусе */
.row2  input.custom-checkbox:focus+label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* стили для чекбокса, находящегося в фокусе и не находящегося в состоянии checked */
.row2 input.custom-checkbox:focus:not(:checked)+label::before {
  border-color: #80bdff;
}

/* стили для чекбокса, находящегося в состоянии checked */
.row2  input.custom-checkbox:checked+label::before {
  border-color: #2980B9;
  background-color: #2980B9;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

/* стили для чекбокса, находящегося в состоянии disabled */
.row2  input.custom-checkbox:disabled+label::before {
  background-color: #e9ecef;
}



/*+++++++++++++++++  ДОБАВЛЕНИЕ/ПРАВКА СОТРУДНИКА  ++++++++++++++++++++*/

.form4 div.staff_tabn {
  display:  none;
}

.row4 {
  display: grid;
  grid-template-columns: 1fr 92px;
  grid-template-rows: minmax(20px, 1fr); 
  grid-gap: 10px;
  overflow: hidden;
  justify-content: space-around; 
  align-content: space-around;
  padding: 8px;
}

.row4 div:first-child {
  background: #fff;
  color:  grey;
  align-items: center;
  padding: 6px;
  border-radius: 4px;
}



.knobs, .layer
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  
}

.buttonCheck
{
    position: relative;
    width: 92px;
    height: 28px;
    margin: 0px auto 0 auto;
    padding:  0px;
    overflow: hidden;
}


.buttonCheck.b2
{
    border-radius: 4px;
}

.checkbox2
{
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    opacity: 0;
    cursor: pointer;
    z-index: 3;
}

.knobs
{
    z-index: 2;
}

.layer
{
    width: 100%;
    background-color: #27AE60;
    opacity: 0.1;
    transition: 0.5s ease all;
    z-index: 1;
}


/* Button 18 */
#button-18 .knobs:before, #button-18 .knobs span,
#button-19 .knobs:before, #button-19 .knobs span
{
    content: 'ДА';
    position: absolute;
    top: 4px;
    left: 12px;
    color: #fff;
    font-size: 10px;
    font-weight: bold;
    text-align: center;
    /*line-height: 1;*/
    background-color: #16A085;
    border-radius: 4px;
}

#button-18 .knobs:before,
#button-19 .knobs:before
{
    top: 50%;
    left: 13px;
    width: 30px;
    height: 20px;
    margin-top: -7px;
    background-color: transparent;
    z-index: 2;
}

#button-18 .knobs span,
#button-19 .knobs span
{
    width: 30px;
    height: 20px;
    padding: 4px 4px;
    transition: 0.5s ease all, left 0.5s cubic-bezier(0.18, 0.89, 0.35, 1.15);
    z-index: 1;
}

#button-18 .checkbox2:active + .knobs:before,
#button-19 .checkbox2:active + .knobs:before
{
    left: 8px;
    width: 52px;
    height: 4px;
    color: transparent;
    margin-top: -2px;
    background-color: #3498DB;
    transition: 0.5s ease all;
    overflow: hidden;
}

#button-18 .checkbox2:active + .knobs span,
#button-19 .checkbox2:active + .knobs span
{
    width: 56px;

}

#button-18 .checkbox2:checked:active + .knobs:before,
#button-19 .checkbox2:checked:active + .knobs:before
{
    left: auto;
    right: 10px;
    background-color: #3498DB;
}

#button-18 .checkbox2:checked:active + .knobs span,
#button-19 .checkbox2:checked:active + .knobs span
{
    margin-left: -38px;
}

#button-18 .checkbox2:checked + .knobs:before,
#button-19 .checkbox2:checked + .knobs:before
{
    content: 'НЕТ';
    left: 52px;
}

#button-18 .checkbox2:checked + .knobs span,
#button-19 .checkbox2:checked + .knobs span
{
    left: 52px;
    background-color: #2980B9;
}

#button-18 .checkbox2:checked ~ .layer,
#button-19 .checkbox2:checked ~ .layer
{
    background-color: #2980B9;
}

span.year {
  margin: 0;
  padding: 0;
  font-size: 11px;
  line-height: 1;
}





/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 12000; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 35% auto; /* 15% from the top and centered */
  padding: 40px 20px;
  border: 3px solid #888;
  width: 80%; /* Could be more or less, depending on screen size */
}

/* The Close Button */
.modal_close {
    color: var(--POMEGRANATE:);
    float: right;
    position: relative;
    font-size: 50px;
    font-weight: bold;
    bottom: 22px;
}

.modal_close:hover,
.modal_close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

/* Modal Header */
.modal-header {
  padding: 10px 26px;
  background-color: var(--BELIZE_HOLE);
  color: white;
}

/* Modal Body */
/*.modal-body {padding: 10px 26px;}*/

/* Modal Footer */
.modal-footer {
  padding: 10px 26px;
  background-color: var(--BELIZE_HOLE);
  color: white;
}

/* Modal Content */
.modal-content {
  position: relative;
  background-color: #fefefe;
  margin: auto;
  padding: 0;
  border: 1px solid #888;
  width: 80%;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
  animation-name: animatetop;
  animation-duration: 0.4s
}

/* Add Animation */
@keyframes animatetop {
  from {top: -300px; opacity: 0}
  to {top: 0; opacity: 1}
}

div.modal-body {
  display: grid;
  grid-template-columns: repeat(4, 1fr) ;
/*  grid-template-rows: minmax(20px, 1fr);*/
  grid-gap: 0px;
  background:#fff;
  overflow-x: hidden;
  word-wrap: break-word;
  justify-content: center;
  align-content: center;
  align-items: center;
  padding: 8px;
}

div.photos img {
    width: 300px;
    height: auto;
    padding: 10px;
    margin: 10px0;
    cursor: pointer;
    z-index: 12000;
}