:root {
    --main_color: #697790;
    --font_size:16px;
}


html
{
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-sizing:border-box;
    margin: 0px;
    padding: 0px;
}

* , *::before , *::after
{
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-sizing:border-box;
}

@font-face
{
    font-family:icomoon;
    src:url(/fonts/icomoon.woff2) format("woff2");
    font-weight:400;
    font-style:normal;
    font-display:swap;
}

@font-face
{
    font-family: "Calibri";
    src: url("/fonts/calibri.ttf");
    src: url("/fonts/calibri.ttf") format("embedded-opentype"),
    url("/fonts/calibri.ttf") format("woff"),
    url("/fonts/calibri.ttf") format("truetype");
    font-style: normal;
    font-weight: normal;
}

@font-face
{
    font-family: "Calibri";
    src: url("/fonts/calibrib.ttf");
    src: url("/fonts/calibrib.ttf") format("embedded-opentype"),
    url("/fonts/calibrib.ttf") format("woff"),
    url("/fonts/calibrib.ttf") format("truetype");
    font-style: bold;
    font-weight: bold;
}

@font-face
{
    font-family: "Calibri";
    src: url("/fonts/calibrii.ttf");
    src: url("/fonts/calibrii.ttf") format("embedded-opentype"),
    url("/fonts/calibrii.ttf") format("woff"),
    url("/fonts/calibrii.ttf") format("truetype");
    font-style: italic;
    font-weight: normal;
}

@font-face
{
    font-family: "Calibri";
    src: url("/fonts/calibril.ttf");
    src: url("/fonts/calibril.ttf") format("embedded-opentype"),
    url("/fonts/calibril.ttf") format("woff"),
    url("/fonts/calibril.ttf") format("truetype");
    font-style: italic;
    font-weight: bold;
}



#coords {
    margin-top: 10px;
    font-size: 18px;
    font-weight: bold;
}

.class_nopadding{
    padding: 0px !important;
}

.navigation
{
    border:0px;
    font-size:11px;
    color: #666;
    text-align:center;
    width:100%;
    padding-top:5px;
    padding-bottom:5px;
    border:solid 1px #e3dcdc;
    border-top:none;
    background-color:#F4F4F4;
}

.navigation A
{
    display:inline-block;
    width:auto;
    height:auto;

    text-decoration:none;
    padding:3px;
    padding-left:5px;
    padding-right:5px;

    border-radius:3px;

    background-image:-moz-linear-gradient(top,#ffffff,#efefef);
    background-image:-webkit-gradient(linear,left top,left bottom,from(#ffffff),to(#efefef));
    filter:progid:DXImageTransform.Microsoft.Gradient(startColorStr=#ffffff,endColorStr=#efefef);

    border:1px solid #999;
    color:#000;
    margin-left:1px;
    margin-right:1px;

}

.navigation A:hover
{
    border:1px solid #F00;
    color:#F00;

}

.navigation SPAN
{
    display:inline-block;
    width:auto;
    height:auto;

    padding:3px;
    padding-left:5px;
    padding-right:5px;

    border-radius:3px;

    background-image:-moz-linear-gradient(top,#ffffff,#efefef);
    background-image:-webkit-gradient(linear,left top,left bottom,from(#ffffff),to(#efefef));
    filter:progid:DXImageTransform.Microsoft.Gradient(startColorStr=#ffffff,endColorStr=#efefef);

    border:1px solid #999;
    color:#F00;
    margin-left:1px;
    margin-right:1px;
    font-weight:bold;
}

body
{
    color: #000;
    position:relative;
    width:100%;
    width:100%;
    padding:0px;
    margin:0px;
    background-repeat:repeat;
    font-size:12px;
    /*font-family: "Calibri", Tahoma, Geneva, sans-serif;*/
}


select {
    /* all: unset; сбрасывает почти все стили */
    font-family: "Calibri", Tahoma, Geneva, sans-serif;
    /*padding: 0.5em;*/
    border: 1px solid #ccc;
    background: white;
    font-size:16px;
}

button{
    cursor: pointer;
}

img
{
    border:0px;
    display:block;
}

form
{
    padding:0px;
    margin:0px;
    display:inline-block;
    box-sizing: border-box;
    width:100%;
}


.main_input
{
    border:solid 1px #CCC;
    border-radius:3px;
    padding:3px;
    padding-left:5px;
    padding-right:5px;
    outline: none;
}


.time_input
{
    border:solid 0px #CCC;
    border-radius:3px;
    padding:3px;
    padding-left:5px;
    padding-right:5px;
    font-weight:bold;
    color:#0080FF;
}

form input,form textarea , form select
{
    border:solid 1px #CCC;
    border-radius:3px;
    padding:3px;
    padding-left:5px;
    padding-right:5px;


    padding:5px !important;
    background-color:#f8f8f8;
    border:solid 1px #ededed;
    outline:none;

}

.bold{
    font-weight: bold;
    text-transform: uppercase;
}


.std_input
{
    border:solid 1px #CCC;
    border-radius:3px;
    padding:10px;
    padding-left:15px;
    padding-right:15px;
    width: 100%;
}

.std_input::placeholder{
    font-family: "Calibri", Tahoma, Geneva, sans-serif;
    font-style: normal;
    font-size: 16px;
    color: #cccccc;
}


.std_code {
    width: 80px;
}

form select
{
    border:solid 1px #ededed;
    border-radius:3px;
    padding:2px;
    padding-left:5px;
    padding-right:5px;
}

form textarea:focus
{
    box-shadow:4px 4px 4px rgba(0, 0, 0, 0.1);
    background-color:#FFFFE6;
}

form select:focus
{
    box-shadow:4px 4px 4px rgba(0, 0, 0, 0.1);
    background-color:#FFFFE6;
}

form input:focus
{
    box-shadow:4px 4px 4px rgba(0, 0, 0, 0.1);
    background-color:#FFFFE6;
}

p
{
    padding:0px;
    margin:0px;
}

h1,h2,h3,h4
{
    padding:0px;
    margin:0px;
}

img
{
    display:inline-block;
}

label
{
    display:inline-block;
}

div
{

    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-sizing:border-box;

    display:inline-block;
    height:auto;
    width:auto;

    line-height:1.2;
}

#for_filter{
    display: block;
}


/**********************************/
.main_screen {
    height: 100vh;
    width: 100%;
    background-color: #FFF;
    display: flex;
    flex-direction: column;
}

.header{
    height:auto;
    background-color: #f1f1f1;
    display: flex;
    align-items: center;
    justify-content:space-between;
    border-bottom: solid 1px #c6c6c6;
    padding: 15px;
    /*padding-top: 40px;*/
}

.header_vert{
    display: flex;
    flex-direction: column;
    gap:5px;
}

.header_vert_bold{
   font-weight: bold;
}

.header_vert_gray{
    color: #777;
}


.main {
    flex: 1;
    background-color: #FFF;
    width: 100%;
    overflow: auto;
    background-image: url(b4.jpg);
    background-size: contain;
}

.main_pad_top10
{
   padding-top: 10px;
}

.main_pad_top_bottom10
{
    padding-top: 10px;
    padding-bottom: 10px;
}


.main_pad20{
    padding: 20px;
}


.menu {
    background-color: #546ee5;
    display: flex;
    justify-content: space-between;
  /*  border-bottom: solid 1px #2b409d;*/

/*
    box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.1);
    position: fixed;
    right: 0px;
    left: 0px;
    height: 26px;*/
}

.menu .a
{
    display:inline-block;
    padding:5px;
    width:auto;
    color:#FFF;
    text-decoration:none;
    font-weight:bold;
    padding-left:10px;
    padding-right:10px;
    height:26px;
}

.menu .a_m
{
    display:inline-block;
    padding:5px;
    width:auto;
    text-decoration:none;
    font-weight:bold;
    padding-left:10px;
    padding-right:10px;
    height:26px;
    float:right;
    color:#FF0;
    border-left:dotted 1px #FFFFC6;

}

.menu .bar a:hover
{
    background-color:#6D9FFF;
}

.menu .bar_right:hover .padmenu
{
    display: inline-block;
}


.menu .bar:hover .padmenu
{
    display: inline-block;
}


.menu.pay_message
{
    display: inline-block;
    background-color:#F00;
    color:#FFF;
    padding:3px;
    font-weight:bold;
    padding-left:10px;
    padding-right:10px;
}


.menu .padmenu
{
    position:absolute;
    z-index: 2;
    padding:2px;
    display:none;
    margin-top:26px;
    border:solid 1px #2b409d;
    background-color:#546ee5;
    box-shadow:0px 4px 4px rgba(0, 0, 0, 0.2);
    border-top:none;
}


.menu .padmenu .p
{
    font-weight:bold;
    display:block;
    text-decoration:none;
    padding:5px;
    color:#FFF;
    padding-left:10px;
    padding-right:10px;

}

/************************************************/
.m_scr_full
{
    display: block;
    width: auto;
    max: 100%;
}

.m_scr_fixed {
    overflow-y: auto;
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.m_scr
{
    display: block;
    width: auto;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}


.block_section_fix{
    overflow-y: auto;
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
}



.block_section_header {
    background-color: #546ee5;
    background-color: #6e779f;
    /*background: linear-gradient(to top, #546ee5, #6782ff);*/
    color: #FFF;
    font-weight: bold;
    display: flex;
    width: 100%;
    /*border-top-left-radius:8px;
    border-top-right-radius:8px;*/
    align-items:center;
}

.block_section_header_lr{
    justify-content:space-between;
}

.block_section_header .div_line
{
    padding: 12px;
    border-right: solid 1px #FFF;
}

.block_section_header .div_line a{
    color: #FFF;
}

.block_section_header_popup{
    background-color: #FFF;
    color: #000;
    border-bottom: solid 1px #aaa;
    justify-content: space-between;
}

/*************************************************/
.table_fix {
    max-height: 100%; /* Ограничение высоты для прокрутки */
    overflow-y: auto;
    border-bottom: 1px solid #ccc;
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.table_norm_fix {
    width: 100%;
    border-collapse: collapse;
    box-shadow:4px 4px 4px rgba(0, 0, 0, 0.1);

}

.table_norm_fix tr:nth-child(even) {
    background-color: #f2f2f2; /* Цвет для чётных строк */
}

.table_norm_fix tr:nth-child(odd) {
    background-color: #ffffff; /* Цвет для нечётных строк */
}


.row_select_id {
    background-color: #fff000 !important;
    transition: background-color 3s ease;
}




.table_norm_fix tr:hover {
    background-color: rgba(174, 215, 255, 0.22);
    color: #000;
}


.table_norm_fix thead {
    position: sticky;
    top: 0;
    background: white;
    z-index: 1;
}

.table_norm_fix tr th{
    background-color: #f0f0f0;
    border: solid 1px #dbdbdb;
    padding: 6px;
}

.table_norm_fix td {
    padding: 7px;
    border: solid 1px #dbdbdb;
    text-align: left;
}

.paginations{
    display: flex;
    justify-content: center;
    gap:5px;
    margin-top: 10px;
    margin-bottom: 20px;
}

.paginations_bot10{
    margin-bottom: 10px !important;

}

.paginations:empty
{
    display: none;
}

.pagination-num{
    padding: 3px;
    padding-left: 7px;
    padding-right: 7px;
    border: solid 1px #ececec;
    border-radius:3px;
    text-decoration: none;
    background: linear-gradient(0deg, #eee,#fff);
}

.pan_buttons{
    display: flex;
    gap:10px;
    padding: 10px;
}

.pan_buttons_center{
    justify-content: center;
}

/***************** BUTTONS ***************************/

.button_event {
    display: flex;
    gap:5px;
    background-color: #546ee5;
    border-radius: 3px;
    padding: 7px;
    padding-right: 8px;
    padding-left: 8px;
    padding-right: 5px;
    padding-left: 5px;
    border: solid 1px #546ee5;
    padding-left: 10px;
    padding-right: 10px;
    color: #FFF;
    cursor: pointer;
    width: auto;
    background: linear-gradient(to top, #546ee5, #6782ff);
}

.button_dialog {
    background-color: #f0f0f0;
    border-radius: 3px;
    padding: 7px;
    padding-right: 7px;
    padding-left: 7px;
    padding-right: 8px;
    padding-left: 8px;
    padding-right: 5px;
    padding-left: 5px;
    border: solid 1px #b5b5b5;
    padding-left: 10px;
    padding-right: 10px;
    color: #000;
    cursor: pointer;
    background: linear-gradient(0deg, #ccc,#fff);
    display: flex;
    gap:5px;
    transition: background-color 0.3s ease; /* Плавный переход */
}

.button_dialog:active {
    background: linear-gradient(0deg, #aaa,#fff);
}


.button_dialog_select {
    background-color: #f0f0f0;
    border-radius: 3px;
    padding: 7px;
    padding-right: 7px;
    padding-left: 7px;
    padding-right: 8px;
    padding-left: 8px;
    padding-right: 5px;
    padding-left: 5px;
    border: solid 1px #b5b5b5;
    padding-left: 10px;
    padding-right: 10px;
    color: #fff;
    cursor: pointer;
    background: linear-gradient(0deg, #057317,#00c832);
    display: flex;
    gap:5px;
    transition: background-color 0.3s ease; /* Плавный переход */
}

.button_dialog_select:active {
    background: linear-gradient(0deg, #aaa,#fff);
}

/****************************************************/

.row_edit {
    display: block;
    margin-bottom: 14px;
}


.row_edit_flex {
    display: flex;
    gap:10px;
}

.row_edit_flex_nowith div{
    width: auto !important;
    display: flex;
    flex-direction: column;
}

.row_edit_flex select{
    height: 38px;
}

.row_edit div{
    width: 100%;
}

.row_edit:last-child{
    margin-bottom: 0px;
}

.row_edit label, .row_edit input{
    display: block;
}

.row_edit input{
    width: 100%;
    padding: 10px !important;
    background-color: #f9f9f9  !important;
}

.row_edit textarea{
    width: 100%;
    padding: 10px !important;
    background-color: #f9f9f9  !important;
    font-size: 16px;
    font-family: "Calibri", Tahoma, Geneva, sans-serif;
}


.row_edit select{
    width: 100%;
    padding: 10px !important;
    background-color: #f9f9f9  !important;
}

.row_edit label{
    margin-bottom: 1px;
    color: #737373  !important;

}

.frm_closebtn{
    border:solid 1px #F00;
    display: inline-block;
    width: 18px;
    height: 18px;
}

.td_num{
    text-align: right !important;
}

.td_center{
    text-align: center !important;
}


input[name="rased_sort"]
{
    width: auto;
}

input[name="tipblud_sort"]
{
    width: auto;
}


input[name="kateg_sort"]
{
    width: auto;
}


input[name="vidobr_chves"] ,
input[name="vidobr_suhie"] ,
input[name="vidobr_belki"] ,
input[name="vidobr_jir"] ,
input[name="vidobr_uglevodi"] ,
input[name="prod_chves"] ,
input[name="prod_suhie"] ,
input[name="prod_belki"] ,
input[name="prod_jir"] ,
input[name="prod_uglevodi"],
input[name="prod_kalori"]
{
    width: auto;
    text-align: right;
}




.head_std_select{
    padding: 0px !important;
    background-color:#6e779f;;
    border:none;
    border-radius: 3px;
    color: #FFF;
    font-size: 16px;
    cursor: pointer;
}

.head_std_select_b{
    font-weight: bold;
    text-transform: uppercase;

}

/***************************************/

.head_std_select_popup{
    padding: 0px !important;
    background-color: #FFF;
    border: none;
    border-radius: 3px;
    color: #5960c8;
    font-size: 16px;
    cursor: pointer;
    font-weight: bold;
    text-transform: uppercase;
}


/***********************************/
.fnc_panel {
    width: 100%;
    height: auto;
    display: block;
    padding: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
    border: solid 2px #24a0ff;
    padding-left: 5px;
    border: none;
    font-size: 12px;
    background-color: #DDD;
    display: flex;
    gap: 5px;
}

.frmfind {
    display: flex;
    gap: 5px;
    align-items: center;
}

.frmfind a{
    color: #000;
}

.fnc_panel .std_input{
    padding: 5px;
    padding-left: 10px;
    padding-right: 10px;

}


.clsButtonSelect
{
    background-color: #0f74a8;
    background: linear-gradient(0deg, #ccc,#fff);
    border: solid 1px #b5b5b5;
    cursor: pointer;
    padding-left: 13px !important;
    padding-right: 13px !important;;
    padding: 3px;

}

.tb_standart td {
    padding: 5px;
}



/**************** column_flex  **********************/

input[name="vidobr_name"]
{
    min-width: 400px;
}

.columns_flex {
   display: flex;
    gap:20px;
}

.column_flex_title{
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 15px;
}



/************************************************************************/

.block_him_sost{
    display: flex;
    gap: 10px;
    margin-top: 10px;
}


#IDDopHut{
    display: flex;
    gap: 10px;
}


.rep_js_form
{
    display: flex;
    flex-direction: column;
}

/***************/

.find_block {
    display: flex;
    position: relative;
    background-color: #FFF;
    border: solid 1px #dfdfdf;
    border-radius: 3px;
    padding: 3px;
}

.find_block input {
    border: none;
    background-color: #FFF;
    outline: none;
}

.find_block input::placeholder {
    color: #aaa;
    font-style: italic;
}

.find_block a{
    position: absolute;
    right: 0px;
    z-index: 1;
    width: 18px;
    height: 18px;
    display: block;
    background-image: url("/img/find.png");
    background-size: contain;
    background-repeat: no-repeat;
}

.select_row{
    text-decoration: none;
    border-bottom: dotted 1px #aaa;
    color: #000;
}

.table_norm_fix_select tr:hover{
    background-color: #0000FF;
}

/********************/
.select_panel
{
    display: flex;
    flex-direction: column;
    width: 100%;
}

.select_panel_body{
    display: flex;
    flex-direction: column;
    width: 100%;
}

.select_panel_left{
    max-width: 400px;
}

.select_panel_right{
    max-width: 400px;
}

.select_panel_body_left{
    flex-grow: 1;
    max-height: 400px;
    overflow-y: scroll;
}

.select_panel_body_right{
   flex-grow: 1;
}

.select_panel_body_right_title{
    background-color: #546ee5;
    padding: 5px;
    color: #FFF;
    width: 100%;
}

#IDSaveButtonSelectRecept:empty {
    display: none;
}



.header_left_menu{
    display: flex;
    gap:5px;
}

.block_buttons_new{
    display: flex;
    justify-content: center;
    padding-top: 20px;
}

.footer {
    display: flex;
    height: auto;
    background-color: #2a2f43;
    justify-content: space-between;
    align-items: center;
    border-top: solid 1px #d9d9d9;
    padding: 10px;
    padding-left: 10px;
    padding-right: 10px;
    color: #FFF;
    align-items: center;
}
