body {
    background-color: #FFF;
}

/* Убираем горизонтальную прокрутку в каталоге (встраиваемый режим) */
html, body {
    max-width: 100%;
    /* overflow-x: hidden; */
}

#body, #bodyContent {
    width: 100%;
}

.in_apa_table {
    position: relative;
    display: flex;
    width: 100%;
}

.in_apa_table .rows {
    position: relative;
    display: table-row;
}

.in_apa_table .cels {
    position: relative;
    display: table-cell;
    padding: 0px;
    vertical-align: top;
}

.in_apa_table .cels.l {
    /* width: 60%; */
    flex-grow: 1;
}

.in_apa_table .cels.r {
    min-width: 350px;
    max-width: 450px;
    margin-left: 10px;
    /* flex-shrink: 0; */
}

.apa_param {
    position: relative;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    overflow: auto;
}

.bord.kn_support{
    transition: 0.3s;
}

.bord.kn_support:hover{
    background-color: #57B !important;
    color: #fff !important;
}

.apa_param {
    /* scrollbar-width: 8px;
    scrollbar-color: #D9D9D9 #E7E7E7; */
}

.apa_param::-webkit-scrollbar {
    height: 8px;
    width: 8px;
}

.apa_param::-webkit-scrollbar-track {
    background: none;
}

.apa_param::-webkit-scrollbar-thumb {
    background-color: #E7E7E7;
    border-radius: 4px;
    border: 1px solid #D9D9D9;
}

#apaContent .cat_bar {
    position: relative;
    height: 40px;
    width: 100%;
    box-sizing: border-box;
}

#apaContent .cat_bar span {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    color: #999;
    z-index: 2;
}

#apaContent .cat_bar .fake {
    position: absolute;
    left: 0px;
    top: 0px;
    right: 1px;
    bottom: 0px;
    border-color: #CCC;
    border-style: solid;
    border-width: 0px 0px 1px 0px;
    z-index: 1;
}

#apaContent .cat_bar input[type="radio"] {
    position: absolute;
    cursor: pointer;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    opacity: 0;
    z-index: 3;
}

#apaContent .cat_bar input[type="radio"]:checked~.fake {
    border-width: 0px 1px 0px 1px;
}

#apaContent .cat_bar input[type="radio"]:checked~span {
    color: #57B;
}

#apaPlan .pre {
    width: 60px;
    height: 60px;
    margin: 5px;
}

/* #planRen{padding-left: 115px;} */

@media all and (max-width: 900px) {
    .in_apa_table {
        display: block;
    }

    .in_apa_table .rows {
        display: block;
    }

    .in_apa_table .cels {
        display: block;
    }

    .in_apa_table .cels.l {
        width: 100%;
    }

    .in_apa_table .cels.r {
        width: 100%;
    }

    .apa_param {
        position: relative;
        height: auto;
    }
    #planRen{padding-left: 0;}
}

#modCall .err_msg {
    margin-left: 5px;
    color: #ff0000;
}

.blur-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(5px);
    pointer-events: all; 
    z-index: 9999; 
    display: flex;
    justify-content: center;
    align-items: center;
}

.blur-overlay .overlayInfo{
    background: white;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    max-width: 500px;
    width: 90%;
    text-align: center;
    pointer-events: all; /* Важно: разрешаем события внутри модалки */
    animation: modalAppear 0.2s ease-out;
}

@keyframes modalAppear {
    from {
      opacity: 0;
      transform: scale(0.9) translateY(-20px);
    }
    to {
      opacity: 1;
      transform: scale(1) translateY(0);
    }
}

/* список помещений */
.animated {
    transition: all 0.5s cubic-bezier(0, .5, .5, 1);
}

.box_infoapalist_container {
    margin: 0px auto;
    display: flex;
    gap: 10px;
    flex-direction: row;
    justify-content: start;
    align-items: center;
	flex-wrap: wrap;
}

.box_infoapalist_container_item {
    flex: 0 1 30px;
}

.box_infoapalist_container_item_legend,
.box_infoapalist_container_item_found {
    flex: 0 0 200px;
}

.box_infoapalist_container_item_btn {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 30px;
}

.box_infoapalist_container_item_btn svg {
    background: none;
}




@media all and (min-width: 901px) {
    .box_display {
        display: block;
    }

    .box_infoapalist {
        display: none;
    }

    .box_infoapalist_container {
        width: 100%;
    }

    .mobile_visible{
        display: none;
    }
}

@media all and (max-width: 900px) {
    .box_display {
        display: none;
    }

    .box_infoapalist {
        display: block;
    }

    .box_infoapalist_container {
        width: 90%;
    }

    .hide_mobile {
        display: none;
    }

    .legend {
        display: none;
    }

    .mobile_visible{
        display: block;
    }
}

/* /список помещений */


/* flex попытка унификации */
.flex_row {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: baseline;
    gap: 1em;
}

.flex_row .item_identical {
    height: auto;
    flex-grow: 1;
    flex-shrink: 1;
    white-space: nowrap;
}

/* /flex попытка унификации */

.line{ 
    display:flex; 
    align-items:center; 
}

.pbg{
    background-color: #EBECEC;
    border-radius:5px;
    min-height: 15px;
    min-width: 15px;
    margin:0 10px;
}

.panel_btn{
    background-size: 60%;
    background-repeat: no-repeat;
    background-position: center;
    margin:0 0 0 7px;
    cursor:pointer;
    padding: 0;
}

.load_pdf{
    width:80px;
    height:30px;
    background-image: url('select_panel/img/pdf.svg');
}

.panel_kn{
    position: absolute;
    right: 25px;
    top: -90px;
    z-index: 9;
}

.line_all{
    font-size: 24px;
    white-space: nowrap;
}


.promotion_container.promo_crm .promotion_price{
    cursor: pointer;
}

.promotion_container.promo_crm .promotion_triangle{
    height: auto;
}

.promotion_container.promo_crm{
    display: flex;
}

.box_click_txt{
    position: absolute;
    max-width: 100%;
    top: calc(100% + 5px);
    border-radius: 5px;
    box-shadow: 0 0 5px #eee;
    padding: 10px 15px;
    z-index: 2;
    display: none;
}

.err_next{
    border-left: 3px solid #ff0000;
    padding-left: 5px;
    animation-name: mig_left;
    animation-duration: 0.2s;
    animation-iteration-count: 5;
    transition: 0.2s;
}

@keyframes mig_left {
    from {
        border-left: 3px solid #ff0000;
    }
    to {
        border-left: 3px solid #fff;
    }
}

.warning_inst .war_wrap{position: relative;}
.war_wrap .icon_wrap{
    position: absolute;
    background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='30' cy='30' r='30' fill='%23FE3838'/%3E%3Cpath d='M33.7792 9.7959L33.1363 38.0231H26.8636L26.2402 9.7959H33.7792ZM30 50.2041C28.8181 50.2041 27.8051 49.7876 26.961 48.9547C26.1298 48.1218 25.7142 47.1068 25.7142 45.9095C25.7142 44.7382 26.1298 43.7362 26.961 42.9033C27.8051 42.0704 28.8181 41.6539 30 41.6539C31.1558 41.6539 32.1558 42.0704 33 42.9033C33.8571 43.7362 34.2857 44.7382 34.2857 45.9095C34.2857 46.7033 34.0844 47.4256 33.6818 48.0763C33.2922 48.727 32.7727 49.2475 32.1233 49.638C31.487 50.0154 30.7792 50.2041 30 50.2041Z' fill='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    height: 120px;
    width: 120px;
    right: 0;
    top: 0;
}

.warning_inst p{
    font-size: 26px;
    font-weight: bold;
    margin: 7px 0 20px 0;
}

.warning_inst .ico_copy{
    width: 20px;
    height: 20px;
    background-image: url("data:image/svg+xml,%3Csvg width='7' height='7' viewBox='0 0 7 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='2' width='5' height='5' rx='1' fill='%23B4B4B4'/%3E%3Crect x='0.25' y='2.25' width='4.5' height='4.5' rx='0.75' fill='white' stroke='%23B4B4B4' stroke-width='0.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
}

.warning_inst .hint_copy{
    position: absolute;
    bottom: -13px;
    background: #777;
    padding: 1px 10px;
    border-radius: 5px;
    color: #fff;
    display: none;
}
.warning_inst .code{
    max-width: 310px;
    margin: 10px 0;
    position: relative;
    padding-left: 10px;
}
.warning_inst{
    position: fixed;
    z-index: 999;
    background-color: rgba(255, 255, 255, 0.95);
    color: #000;
    font-size: 14px;
    padding: 20px 30px;
    border:1px solid #eee;
    top: 10px;
    left: 50%;
    margin-left: -275px;
    width: 470px;
    min-height: 135px;
    border-radius: 10px;
}