table tbody tr:last-child {
  font-weight: bold;
}

table td:last-child {
  font-weight: bold;
  background:inherit;
}

th.counter{
    text-align: center;
}

.name {
max-width:50px;
}

.bold {
    font-weight: bold;
}

.container {
  max-width: none;
  width: fit-content;

}

.container:after {
  content: "";
  display: table;
  clear: both;
}

.table {
    flex: 95%;
}



.legend-row{
    display: flex;
  align-items: center;
}

.no-display
{
    display:none;
}

.sellers {
    display:flex;
    max-height:50px;
    position: sticky;
    text-align: right;
    left: 30px;
    margin-bottom:-50px;
    max-width: 500px;
}

a.seller {
    padding:0px;
}

h2.seller {
    color:black;
    float:right;
    margin-top: 10px;
    margin-right: 10px;
    font-family: "Roboto", sans-serif;
    display: inline-flex;
}

div.legend {
position: fixed;
  top: 150px;
  height: fit-content;
  margin-left: 20px;
  float: right;
  right: 5px;
  width: 15%;

}

.no-border {
  border: none;
}

table.legend {
 max-width:15%;
 right: 0px;
  position: absolute;
  display: contents;
}

.title {
    font-weight:bold;
    text-align: center;
}

.box  {
  float: left;
  min-height: 40px;
  min-width: 40px;
  margin: 5px;
  padding: 7px 0 0 13px;
  border: 1px solid black;
  clear: both;
}

td, th {
    border-left:solid black 1px;
    border-top:solid black 1px;
    border-right:solid black 1px;
    border-bottom:solid black 1px;
}

th.stocks {
    vertical-align:middle;
}

a.card_link {
    color:black;
    cursor: default;
    pointer-events: none;
    text-decoration: none;
}

td.numeric{
    text-align:center;   
    vertical-align: middle; 
    background-color: #ffffff;
    
}

td.numeric_fillru{
    text-align:center;   
    vertical-align: middle; 
    background-color: #ffffff;
    font-weight: bold;
}

.good_link {
    color: #000000;
    background-color: #9acc2f;
}



.good_link :link {
    color: #000000;
}

.no_link {
    background:#fed42b;
}

.negative {
    background:crimson;
}

td.total{
    background-color: #ffffff;
}

td.good_link {
    color: #000000;
    background-color: #9acc2f;
    padding:0px;
    cursor: pointer;
}

td.good_link:hover {
    background-color: #88b81f;
}

td.good_link:active  {
    background-color: #54760c;
}


td.good_link :link {
    color: #000000;
    text-decoration: none;
}

td.no_link {
    background:#fed42b;
}

td.negative {
    background:crimson;
}

td.photo {
  width: 40px;
  text-align: center;
  padding: 2px;
  cursor: zoom-in;
}



table {
    border-collapse:separate;
    border:solid black 1px;
    border-radius:2px;
}

th.place {
    text-align:center;
}

th.logo {
    text-align:center;
}

thead.stocks {
    background: #ffcc00d1;
    color: black;
    position: sticky;
    vertical-align: middle;
}

.note{
margin: 10px;
  text-align: center;

}


.popup{
    position: fixed;
    top: 50%;
    left: 50%;
    width: 0%;
    height: 0;
    background: rgba(0, 0, 0, 0.75);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 5;
    overflow: hidden;
    opacity: 0;
    cursor: zoom-out;
}

.popup.active{
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
    width: 101%;
    height: 101%;
}




th.sort_param.desc .desc_sym,
th.sort_param .desc_sym,
th.sort_param.asc .asc_sym,
th.sort_param.desc .invert_asc_sym,
th.sort_param.asc .invert_desc_sym{
    opacity:1;
    display:inline;
    background:none;
    border:solid 1px;
    font-size: 15px;
}

th.sort_param .asc_sym,
th.sort_param.desc .asc_sym,
th.sort_param.asc .desc_sym,
th.sort_param.asc .invert_asc_sym,
th.sort_param.desc .invert_desc_sym{
    opacity:0;
    display:none;
    background:none;
    border:solid 1px;
    font-size: 15px;
}

.sort_icon {
    top: -6px;
    position: relative;

}

.desc_sym, .asc_sym{
    position:absolute;
    right:0px;
    bottom:0px;
    height:14px;
    width:14px;
    text-align:center;
}


.popup.active .close-btn,
.popup.active .image-name,
.popup.active .index,
.popup.active .large-image,
.popup.active .arrow-btn{
    opacity: 1;

}

.top-bar{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50px;
    background: #000;
    color: #fff;
    text-align: center;
    line-height: 50px;
    font-weight: 300;
    cursor: zoom-out;
}

.image-name{
    opacity: 0;
    cursor: zoom-out;
}

.close-btn{
    opacity: 0;
    position: absolute;
    top: 0px;
    right: 20px;
    border-radius: 50%;
    cursor: pointer;
}


.sort_param{
    cursor: pointer;
    position:relative;
}


.button {
    cursor: pointer;
    border-radius:5px;
    border-width:2px;
    border-color:black;
    border-style:solid;
    width:100px;
    height:50px;
    position:fixed;
    bottom:50px;
    right:15px;
    text-align:center;
    box-shadow: 5px 5px 5px 5px rgba(0,0,0,0.3);
}

.button:hover {
    background:#e8e8e8

}

.button:active {
    background:#bababa

}

#product_name {
  padding: 0 2px 0 2px;
  vertical-align: middle;
  white-space: nowrap;
  overflow:hidden;
}

.limited_width {
max-width: 250px;
}


.FillRuLogo, .subcol  {
    width:5%;

}


.large-image{
    margin-top: 5%;
    width: 80%;
    height: 80%;
    object-fit: contain;
    opacity: 0;
    cursor: zoom-out;
}

@media  only screen and  (max-width: 820px){
thead.stocks {
    background: #ffcc00d1;
    color: black;
    z-index: 2;
    vertical-align: middle;
}

#product_name{
    padding: 0 2px 0 2px;
  vertical-align: middle;
  white-space: nowrap;
  overflow: hidden;
}

.limited_width {
max-width: 100px;
}


div.container {
    overflow: scroll;
    max-width: none;
    width: fit-content;

}


#barcode {
    display:none;
}

.image-name {
    margin: 20px;
}

}

/* Стили для всплывающего окна */
.popup_map {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    justify-content: center;
    align-items: center;
}

.popup_map-content {
    background-color: white;
    padding: 20px;
    border-radius: 5px;
    text-align: center;
    font-weight: bold;
    width: 800px;
    margin: auto;
    overflow-y: auto;
}

.close-btn {
    font-size: 30px;
    color: #aaa;
    cursor: pointer;
}

.close-btn:hover {
    color: black;
}

/* Стили для карты */
#map {
    width: 100%;
    height: 300px;
    margin-top: 20px;
}

/* Дополнительные стили для информации */
.product-info {
    margin: 20px 0;
    text-align: left;
}

.product-info h3 {
    font-size: 20px;
    color: #333;
}

/* Контейнер иконки и текста */
.custom-icon .icon-container {
    position: relative;
    text-align: center;
}

/* Текст, который будет отображаться над иконкой */
.custom-icon .icon-text {
    position: absolute;
    top: -20px; /* Расстояние от иконки до текста */
    width: 100%;
    font-size: 14px; /* Увеличенный размер шрифта */
    font-weight: 900; /* Очень жирный шрифт */
    color: #333; /* Темный цвет текста */
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0); /* Тень для улучшения читаемости */
    font-family: Arial, sans-serif; /* Шрифт для лучшего восприятия */
}

/* Стиль для изображения-иконки */
.custom-icon .icon {
    width: 32px;
    height: 32px;
}

/* Кнопка закрытия карты */
.close-btn-map {
  font-size: 50px;        /* Размер шрифта */
  color: black;           /* Цвет крестика */
  background-color: transparent;  /* Прозрачный фон */
  border: none;           /* Убираем рамку */
  cursor: pointer;       /* Курсор в виде указателя */
  display: inline-block;  /* Сделать элемент строковым, чтобы можно было вставить в блок */
  text-align: center;     /* Центрирование текста */
  float: right;
  margin-top: -30px;
}

#additional-info h2 {
    text-align: center;
}

#chart-container{
    border: 1px solid black;
    margin-bottom: 20px;
}