:root {
    --dark-bg: #191818;
    --dark-txt: #3a3a3a;
    --dark-gray: #383836;
    --light-bg: #ecf0f1;
    --border: #DDDEDE;
    --gray: #8e9192;
    --tbl-h: #E0E0E0;
    --tbl-s: #F2F2F2;
    --tbl-border: #cbcbcb;
    --blue: #204a87;
    --brown: #6a5549;

@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,400i,700&display=swap&subset=cyrillic');
}

body, html {
    padding: 0;
    margin: 0;
    font-family: 'Open Sans', sans-serif;
    color: var(--dark-txt);
    min-height: 100vh;
    scroll-behavior: smooth;
    /*overflow-x: hidden;*/
}

h1 {
    margin: 0 0 15px;
    font-size: 22px;
    color: #5a5a5a;
}

.h1-desc {
    font-size: 13px;
    color: gray;
    margin-top: -12px;
    margin-bottom: 30px;
}

input, select {
    outline: none;
    font-family: 'Open Sans', sans-serif;
    height: 34px;
    width: 320px;
    box-sizing: border-box;
    border-radius: 2px;
    border: 1px solid var(--border);
    padding: 0 8px;
    font-size: 15px;
    color: var(--dark-txt);
    background-color: white;
}

input[type=number] {
    width: 200px;
}

input[disabled] {
    color: #ccc;
    background: #f3f3f3;
}

textarea {
    outline: none;
    font-family: 'Open Sans', sans-serif;
    display: block;
    height: 80px;
    width: 320px;
    box-sizing: border-box;
    border-radius: 2px;
    border: 1px solid var(--border);
    padding: 8px;
    font-size: 15px;
    color: var(--dark-txt);
    resize: none;
}

button {
    outline: none;
    font-family: 'Open Sans', sans-serif;
    width: fit-content;
    border-radius: 2px;
    padding: 7px 15px;
    background-color: var(--dark-txt);
    color: white;
    border: none;
    cursor: pointer;
    display: block;
    margin-top: 15px;
    font-size: 16px;
}

abbr[title] {
    text-decoration: none;
    border-bottom: none !important;
}

.hidden {
    display: none !important;
}

.btn {
    background-color: var(--brown);
    color: white;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    outline: none;
    width: fit-content;
    border-radius: 2px;
    padding: 6px 15px;
    font-size: 14px;
    font-weight: 100;
}

.fixed-fot-butt {
    position: fixed;
    bottom: 0;
    background: rgba(255, 255, 255, 0.92);
    width: 100%;
    box-sizing: border-box;
    padding-top: 10px;
    z-index: 200;
    height: 52px;
    border-top: 2px solid rgba(203, 203, 203, 0.67);
    left: 0;
}

.fixed-fot-butt .wr {
    box-sizing: border-box;
    width: 1150px;
    margin: 0 auto;
}

.fixed-fot-butt.spaced .btn, .fixed-fot-butt-group {
    display: inline-block !important;
}

.fixed-fot-butt .btn {
    margin: 0;
    background-color: #e6e6e6;
    color: #000000;
}

.fixed-fot-butt .btn .fa {
    color: #7e7e7e;
}

.fixed-fot-butt .button-save {
    margin: 0;
    background-color: var(--brown);
    color: white;
}

label {
    /*display: block;*/
    margin: 10px 0 3px;
    font-size: 13px;
}

a {
    color: inherit;
}

a.button {
    text-decoration: none;
}

.no-bg {
    background-color: transparent !important;
}

.fix-w div {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
}

.w100, .w100 div {
    width: 100px;
}

.w200, .w200 div {
    width: 200px;
}

.w300, .w300 div {
    width: 300px;
}

.w400, .w400 div {
    width: 400px;
}

/*HEADER + FOOTER STYLES*/

.header {
    height: 50px;
    /*box-sizing: border-box;*/
    /*border-bottom: 1px solid var(--border);*/
    background-color: #695549;
    color: white;
    font-weight: 100;
}

.header .wr,
.footer .wr {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /*padding: 15px 0;*/
    box-sizing: border-box;
    max-width: 1150px;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    font-size: 14px;
}

.header .left,
.header .links {
    display: flex;
    align-items: center;
}

.header .links > * {
    margin: 0 5px;
    transition: all .15s ease-in-out;
    border-radius: 3px;
}

.header .links > *:hover,
.header .links > .active {
    background-color: #826b5e;
}

.header .links a {
    text-decoration: none;
    padding: 7px 15px;
    display: inline-block;
}

.header .logo {
    background-image: url(../img/logo.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 110px;
    height: 40px;
    margin: auto 0;
}

.header .right {
    display: flex;
}

.header .stab {
    margin: auto 30px auto auto;
    opacity: 0.4;
}

.header .logout > * {
    margin: 7px;
}

.header .fa-user-circle-o {
    font-size: 20px;
    vertical-align: middle;
}

.footer {
    height: 50px;
    border-top: 1px solid var(--tbl-border);
    position: absolute;
    width: 100%;
    /*bottom: 0;*/
    color: #8f8f8f;
    padding-bottom: 40px;
}

/*MAIN CONTENT STYLES*/

.main-content {
    min-height: calc(100vh - 101px);
    padding: 0 0 20px;
    box-sizing: border-box;
    /*min-width: 1000px;*/
    max-width: 1150px;
    min-width: 1140px;
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    background: white;
    z-index: 999;
    /*overflow-y: hidden;*/
}

.main-content .col-wr {
    display: flex;
    align-items: flex-start;
    position: relative;
    width: calc(100% + 40px);
    margin-left: -20px;
    padding: 20px;
    box-sizing: border-box;
}

.main-content .col-wr.ver-center {
    align-items: center;
}

.main-content .col-wr.gray {
    background-color: var(--light-bg);
}

.main-content .col-wr .col {
    margin-right: 40px;
}

.main-content .col-wr.m-top {
    margin-top: 20px;
}

.main-content .col-wr .col.abs {
    position: absolute;
    right: 20px;
    top: 0;
}

.main-content .col-wr .col.abs input {
    width: 65px;
}

.main-content .col-wr .col:last-child {
    margin-right: 0;
}

.main-content .two-col-wr {
    background-color: var(--light-bg);
    padding: 0 15px;
    margin: 15px 0;
    font-size: 0;
}

.main-content .two-col-wr .col-left, .main-content .two-col-wr .col-right {
    display: inline-block;
    vertical-align: top;
    font-size: 16px;
    width: 450px;
    padding: 15px 0;
}

.main-content .block-label {
    display: block;
    margin: 10px 0 3px;
    font-weight: bold;
    font-size: 13px;
}

.main-content .block-label:first-child {
    margin-top: 0;
}

.display_b {
    display: block;
}

.main-content input.short, .main-content input.long, .main-content select {
    display: block;
    height: 34px;
    width: 320px;
    box-sizing: border-box;
    border-radius: 2px;
    border: 1px solid var(--border);
    padding: 0 8px;
    font-size: 15px;
    color: var(--dark-txt);
    background-color: white;
}

.main-content textarea.short, .main-content textarea.long, .main-content textarea.average {
    display: block;
    height: 80px;
    width: 320px;
    box-sizing: border-box;
    border-radius: 2px;
    border: 1px solid var(--border);
    padding: 8px;
    font-size: 15px;
    color: var(--dark-txt);
    resize: none;
}

.main-content input.short, .main-content select.short {
    width: 200px;
}

.main-content textarea.long {
    width: 975px;
}

.main-content textarea.average {
    width: 550px;
    height: 120px;
}

.main-content .one-col-wr {
    background-color: var(--light-bg);
    padding: 15px;
    margin: 15px 0;
}

.main-content .one-col-wr textarea.average {
    width: 48%;
}

.main-content input.long {
    width: 560px;
}

.main-content textarea.long {
    width: 920px;
    height: 120px;
}

.main-content .button {
    width: fit-content;
    border-radius: 2px;
    padding: 7px 15px;
    background-color: var(--dark-txt);
    color: white;
    border: none;
    cursor: pointer;
    display: block;
    margin-top: 15px;
    font-size: 16px;
}

.main-content .option-wrapper {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.main-content .option-wrapper .check {
    margin-right: 30px;
    margin-top: 5px;
}

/*TABLES STYLES*/
.table {
    border-collapse: collapse;
    border-spacing: 0;
    text-align: left;
    border: 1px solid var(--border);
    margin: 10px 0;
}

.table thead tr {
    background-color: var(--light-bg);
}

.table tr {
    border-bottom: 1px solid var(--border);
}

.table th {
    padding: 8px 16px;
    border-right: 1px solid var(--tbl-border);
}

.table tbody td {
    padding: 8px 16px;
    border-right: 1px solid var(--tbl-border);
}

/*CUSTOM CHECKBOX STYLES*/
.check {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-right: 30px;
    margin-top: 5px;
    cursor: pointer;
}

.check input[type=radio], .check input[type=checkbox] {
    position: absolute;
    visibility: hidden;
}

.checkmark {
    flex-shrink: 0;
    border-radius: 2px;
    position: relative;
    height: 15px;
    width: 15px;
    border: 1px solid #DDDEDE;
    margin-right: 10px;
    background-color: white;
}

.checkmark-radio {
    flex-shrink: 0;
    position: relative;
    height: 15px;
    width: 15px;
    border: 1px solid var(--dark-txt);
    margin-right: 10px;
    border-radius: 50%;
    background-color: white;
}

.checkmark-tab {
    width: 100%;
    height: 100%;
    background-color: var(--brown);
    position: absolute;
    top: -2px;
    left: -2px;
    visibility: hidden;
    z-index: 1;
}

.check input:checked ~ .checkmark {
    background-color: var(--dark-txt);
    border: 1px solid var(--dark-txt);
}

.check input:checked ~ .checkmark-tab {
    visibility: visible;
}

.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

.checkmark-radio:after {
    display: none;
    position: absolute;
    content: "";
    top: 3px;
    left: 3px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--dark-txt);
}

.check input:checked ~ .checkmark:after, .check input:checked ~ .checkmark-radio:after {
    display: block;
}

.check .checkmark:after {
    left: 5px;
    top: 0px;
    width: 4px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.check .title {
    width: 120px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    z-index: 10;
}

/*RESTMENU STYLES*/

/*ADD MENU STYLES*/
.main-content a {
    text-decoration: none;
}

.add-menu {
    width: 850px;
    margin-top: 50px;
}

.add-menu .btn {
    background-color: #e6e6e6;
    color: black;
}

.add-menu button {
    background-color: var(--blue);
    color: white;
    margin-top: 25px;
}

.add-menu .block-label {
    font-size: 18px;
    margin-top: 20px !important;
}

.add-menu ul.lang-settings {
    list-style-type: none;
    padding: 0;
    margin: 20px 0 0;
    border-top: 2px solid var(--tbl-border);
    border-bottom: 2px solid var(--tbl-border);
    box-sizing: border-box;
}

.add-menu .lang-settings-space {
    margin-bottom: 100px;
}

.add-menu .lang-title {
    font-size: 14px;
    margin: 0;
    box-sizing: border-box;
    width: 100px;
    padding-left: 10px;
}

.add-menu .centered-wr {
    display: flex;
    justify-content: center;
    background: var(--main-bg);
}

.add-menu li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
}

.add-menu li:hover {
    background-color: #f3f3f3;
}

.add-menu .check {
    margin: 0 15px;
}

.add-menu .centered-wr {
    border-radius: 6px;
    overflow: hidden;
}

.add-menu .tab-type {
    border: 2px solid var(--tbl-border);
    width: 120px;
    padding: 12px;
    margin: 0;
}

.add-menu .tab-type:first-child {
    border-radius: 6px 0 0 6px;
    border-right: none;
}

.add-menu .tab-type:last-child {
    border-radius: 0 6px 6px 0;
    border-left: none;
}

.add-menu .check.tab-type .txt {
    display: block;
    width: 100%;
    overflow: unset;
    text-overflow: unset;
    word-break: break-word;
    position: relative;
    z-index: 10;
    text-align: center;
    color: var(--dark-txt);
    font-size: 13px;
}

.add-menu .check.tab-type input:checked ~ .txt {
    color: white;
}

.add-menu .tab-type input:checked ~ .checkmark-tab {
    border: 2px solid var(--brown) !important;
}

.add-menu .check .txt {
    width: 190px;
    font-size: 12px;
    color: var(--gray);
}

.add-menu .check input:checked ~ .txt {
    color: var(--dark-txt);
}

/*MENU LIST STYLES*/

.menu-list {
    margin-top: 50px;
}

.menu-list .block-label {
    font-size: 20px;
}

.menu-list .name-wr {
    position: relative;
    display: flex;
}

.menu-list .name-wr .btn {
    margin-left: -1px;
    border-radius: 0 2px 2px 0;
}

.menu-list .name-wr input[name="user_pass"], .menu-list .name-wr input[name="user_name"] {
    width: 227px;
}

.menu-list .name-wr input[name="user_email"] {
    width: 200px;
}

.menu-list .name-wr select[name="user_role"] {
    width: 150px;
}

.menu-list .name-wr.wrong-name::before {
    position: absolute;
    display: block;
    content: '';
    width: 320px;
    height: 34px;
    border-radius: 2px;
    opacity: 0.5;
    z-index: 20;
    animation: glow 3s infinite;
}

.menu-list button {
    margin: 0;
    height: 100%;
}

.menu-list table {
    position: relative;
    margin-top: 30px;
    font-size: 15px;
}

.menu-list table:before {
    content: "";
    position: absolute;
    left: 0;
    top: -15px;
    background-color: var(--tbl-border);
    width: 100%;
    height: 2px;
}

.menu-list table thead tr {
    background-color: transparent;
}

.menu-list table td:last-child {
    text-align: center;
}

.menu-list table td.date-info {
    font-size: 12px;
    color: gray;
}

.menu-list table td.for-name {
    width: 380px;
}

.menu-list table td.for-name a {
    text-decoration: underline;
}

.menu-list table td.translated {
    text-align: center;
    font-size: 12px;
}

.menu-list table td.for-copy a {
    font-size: 13px;
    color: #a9a9a9;
    line-height: 20px;
}

.menu-list table td.for-copy a:hover,
.menu-list table td.for-delete .delete-btn:hover {
    color: #695549;
}

.menu-list table abbr[title] {
    border: 0;
    text-decoration: none;
}

.menu-list table td.for-copy .copy-btn {
    margin-right: 5px;
    font-size: 18px;
}

.menu-list table td.for-delete .delete-btn {
    font-size: 18px;
    background: none;
    color: #a9a9a9;
    padding: 5px;
}

/*
button.delete-btn, button.copy-btn {
    background: none;
    color: black;
    padding: 5px;
    font-size: 20px;
}*/

.menu-list .translated {
    position: relative;
}

.menu-list .translate-progress {
    position: relative;
    height: 18px;
    border-radius: 1px;
    overflow: hidden;
    width: 100px;
    box-sizing: border-box;
    background: #f3f3f3;
}

.menu-list .translated .progress-text {
    position: absolute;
    padding: 5px 0 0;
    z-index: 2;
    width: 100px;
    text-align: center;
    line-height: 8px;
    font-size: 10px;
    font-weight: 100;
    color: #000000;
}

.menu-list .translate-progress .progress-bar {
    position: absolute;
    display: block;
    height: 18px;
    top: 0;
    opacity: 1;
    background-color: #75b800;
}

.menu-list .translate-progress .progress-bar:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(.25, rgba(255, 255, 255, .2)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255, 255, 255, .2)), color-stop(.75, rgba(255, 255, 255, .2)), color-stop(.75, transparent), to(transparent));
    background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, .2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .2) 50%, rgba(255, 255, 255, .2) 75%, transparent 75%, transparent);
    z-index: 1;
    -webkit-background-size: 50px 50px;
    -moz-background-size: 50px 50px;
    background-size: 50px 50px;
    -webkit-animation: move 2s linear infinite;
    -moz-animation: move 2s linear infinite;
    -webkit-border-top-right-radius: 8px;
    -webkit-border-bottom-right-radius: 8px;
    -moz-border-radius-topright: 8px;
    -moz-border-radius-bottomright: 8px;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    -webkit-border-top-left-radius: 20px;
    -webkit-border-bottom-left-radius: 20px;
    -moz-border-radius-topleft: 20px;
    -moz-border-radius-bottomleft: 20px;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    overflow: hidden;
}

@-webkit-keyframes move {
    0% {
        background-position: 0 0;
    }
    100% {
        background-position: 50px 50px;
    }
}

@-moz-keyframes move {
    0% {
        background-position: 0 0;
    }
    100% {
        background-position: 50px 50px;
    }
}

/*MENU SETTINGS STYLES*/

.menu-settings {
    margin-top: 50px;
    width: 850px;
}

.menu-settings .bordered-space {
    width: 100%;
    border-top: 2px solid var(--tbl-border);
    display: block;
    margin: 20px 0;
}

.menu-settings .top .btn {
    background-color: #e6e6e6;
    color: #000000;
}

.menu-settings .top .btn .fa {
    color: #7e7e7e;
    margin-right: 6px;
}

.menu-settings .top .btn.go-settings {
    float: right;
}

.menu-settings .top .btn:first-child {
    display: block;
    margin-bottom: 24px;
    width: max-content;
}

.menu-settings .top .name {
    /*width: 100%;*/
    /*height: 41px;*/
    box-sizing: border-box;
    display: inline-block;
    margin-right: 5px;
}

.menu-settings .top .name input {
    height: 31px;
}

.menu-settings button i {
    margin-left: 10px;
}

.menu-settings .tab-wr {
    display: flex;
    overflow: hidden;
    flex-wrap: wrap;
    margin-left: -2px;
    margin-top: 20px;
}

.menu-settings a.lng-tab {
    box-sizing: border-box;
    padding: 2px 13px;
    font-size: 14px;
    margin: 4px 2px 0;
    cursor: pointer;
    text-align: center;
}

.menu-settings a.lng-tab.active {
    background-color: var(--brown);
    color: white;
    border-radius: 3px;
    position: relative;
}

.menu-settings table {
    margin-bottom: 100px;
    border: 1px solid var(--tbl-s);
}

.menu-settings tr.page-row {
    border-bottom: 1px solid #f7f7f7;
}

.menu-settings tr.page-row:last-child {
    border-bottom: none;
}

.menu-settings tr.page-row:hover {
    background-color: #f7f7f7;
}

.menu-settings tbody tr.page-row td {
    box-sizing: border-box;
    padding: 10px 16px 2px !important;
    transition: all .15s ease-in-out;
    border: unset;
}

.menu-settings tr.page-row td:first-child {
    width: 47px;
    padding: 0 !important;
    border-right: 1px solid transparent;
}

.menu-settings tr.page-row td:nth-child(2) {
    width: 743px;
}

.menu-settings tr.page-row td:last-child {
    width: 59px;
    padding: 0 !important;
    border-left: 1px solid transparent;
}

.menu-settings tr.page-row td:nth-child(odd) > * {
    color: #685549;
    opacity: 0;
    transition: all .15s ease-in-out;
    margin: auto;
    text-align: center;
    width: 100%;
    background: none;
}

.menu-settings tr.page-row:hover td:first-child {
    border-right: 1px solid var(--tbl-s) !important;
}

.menu-settings tr.page-row:hover td:last-child {
    border-left: 1px solid var(--tbl-s) !important;
}

.menu-settings tr.page-row:hover td:nth-child(odd) > * {
    opacity: 1;
}

.menu-settings tr.page-row td input,
.menu-settings tr.page-row td textarea {
    margin-top: 2px;
    background: transparent;
    font-size: 13px;
    border: 1px solid var(--border);
    padding: 2px;
    height: auto;
}

.menu-settings tr.page-row td:hover input,
.menu-settings tr.page-row td:hover textarea,
.menu-settings tr.page-row td:hover .txt-desc {
    border: 1px solid var(--border) !important;
}

.menu-settings tr.page-row .td {
    position: relative;
}

.menu-settings tr.page-row .small-desc {
    color: #bebebe;
    font-size: 11px;
    position: absolute;
    opacity: 0;
    top: 0;
    transition: all 0.15s ease-in-out;
}

.menu-settings tr.page-row td:hover .small-desc {
    opacity: 1;
}

.menu-settings tr.page-row .small-tr {
    color: #00bcd4;
    font-size: 12px;
    box-sizing: border-box;
    padding-left: 3px;
}

.menu-settings tr.page-row .small-tr.for-name {
    width: 490px;
}

.menu-settings tr.page-row .small-tr.for-portion,
.menu-settings tr.page-row .small-tr.for-price {
    width: 90px;
}

.menu-settings tr.page-row .for-title,
.menu-settings tr.page-row .for-txt-desc {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.menu-settings tr.page-row .for-title input {
    color: var(--dark-gray);
    font-size: 24px;
    line-height: 120%;
    font-weight: normal;
    text-align: center;
    text-transform: uppercase;
    max-width: 710px;
    min-width: 320px;
}

.menu-settings tr.page-row .for-subtitle input {
    color: var(--dark-gray);
    line-height: 14px;
    font-weight: bold;
}

.menu-settings tr.page-row .for-txt-desc .txt-desc {
    min-height: 34px;
    height: auto;
    max-width: 710px;
    width: 100%;
    font-size: 12px;
    color: #5d5d5d;
    border: 1px solid var(--border);
    box-sizing: border-box;
    padding: 2px;
    margin-top: 2px;
    outline: none;
}

.menu-settings tr.page-row .for-dish {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.menu-settings tr.page-row .for-dish input {
    color: var(--dark-gray);
}

.menu-settings tr.page-row .for-dish .left div[contenteditable = 'true'] {
    max-width: 490px;
    width: 100%;
    min-height: 20px;
    height: auto;
    padding: 2px;
    box-sizing: border-box;
    outline: none;
    font-size: 13px;
    margin-top: 2px;
}

.menu-settings div[contenteditable = 'true'] span {
    font-size: inherit !important;
    color: inherit !important;
    text-align: inherit !important;
    background-color: inherit !important;
}

.menu-settings tr.page-row .for-dish .td-container {
    display: flex;
    flex-direction: column;
}

.menu-settings tr.page-row .for-dish .right {
    display: flex;
    justify-content: space-between;
    width: 200px;
}

.menu-settings tr.page-row .for-dish .right input {
    width: 90px;
}

.menu-settings tr.page-row .for-dish .right .td-container:first-child input {
    color: #ea5c4f;
}

.menu-settings tr.page-row .for-dish .for-txt-desc,
.menu-settings tr.page-row .for-txt-desc textarea {
    width: 100%;
    align-items: flex-start;
}

.menu-settings tr.page-row .for-dish .for-txt-desc .desctxt {
    min-height: 20px;
    height: auto;
    max-width: 710px;
    width: 100%;
    font-size: 12px;
    color: #5d5d5d;
    border: 1px solid transparent;
    padding: 2px;
    box-sizing: border-box;
    transition: all .3s ease-in-out;
    position: relative;
    margin-top: 2px;
    outline: none;
}

.menu-settings tr.page-row .td:hover .for-dish .desctxt {
    border: 1px solid var(--border) !important;
}

.menu-settings tr.page-row .for-dish .for-txt-desc .desctxt p,
.menu-settings tr.page-row .for-txt-desc .txt-desc p {
    padding: 2px;
    margin: 0;
    box-sizing: border-box;
}

.menu-settings tr.page-row .for-dish .for-txt-desc {
    position: relative;
}

.menu-settings tr.page-row .for-dish .for-txt-desc .placeholder {
    color: #bebebe;
    font-size: 11px;
    position: absolute;
    opacity: 0;
    top: 8px;
    left: 5px;
    transition: all 0.15s ease-in-out;
}

.menu-settings tr.page-row .align-wr,
.menu-settings tr.page-row .title-fixer {
    align-self: flex-end;
    display: inline-flex;
    position: absolute;
    opacity: 0;
    transition: all .15s ease-in-out;
    color: #ababab;
}

.menu-settings tr.page-row td:hover .align-wr,
.menu-settings tr.page-row td:hover .title-fixer {
    opacity: 1;
}

.menu-settings .selected {
    color: #c83000 !important;
}

.menu-settings tr.page-row .align-wr .align {
    margin-left: 5px;
}

.menu-settings tr.page-row .align-wr {
    top: -1px;
    font-size: 12px;
}

.menu-settings tr.page-row .title-fixer {
    top: 3px;
}

.menu-settings tr.page-row .title-fixer,
.menu-settings tr.page-row .align {
    cursor: pointer;
}

/*SEPARATOR STYLES*/

.menu-settings div.separator {
    border: 0;
    height: 1px;
    position: relative;
    padding: 0;
}

.menu-settings div.separator td,
.menu-settings div.separator td:last-child,
.menu-settings div.separator td:first-child {
    border: 0;
    width: 849px;
    height: 1px;
    padding: 0;
}

.menu-settings div.separator .fakeline {
    height: 1px;
    width: 849px;
    bottom: -4px;
    left: -63px;
    position: absolute;
    background: #b32c2c;
    opacity: 0;
}

.menu-settings div.separator .buttonbox {
    display: flex;
    flex-direction: row;
    position: absolute;
    left: 786px;
    top: -7px;
    overflow: hidden;
    box-sizing: border-box;
    padding: 2px 3px 2px 2px;
    opacity: 0;
    background: #b32c2c;
    border-radius: 3px;
    z-index: 5;
}

.menu-settings div.separator .buttonbox:hover + .fakeline {
    opacity: 1;
    transition-duration: 0.5s;
}

.menu-settings div.separator .buttonbox:hover {
    opacity: 1;
    transition-duration: 0.5s;
}

.menu-settings div.separator .buttonbox button {
    display: block;
    font-size: 12px;
    padding: 1px 3px;
    margin: 1px;
    background-color: #e6e6e6;
    color: #000000;
}

.menu-settings div.separator .buttonbox button:last-child {
    margin-right: 0;
}

.menu-settings div.separator .point {
    position: absolute;
    display: flex;
    flex-direction: row;
    left: 786px;
    top: -6px;
    opacity: 1;
    z-index: 2;
    box-sizing: border-box;
}
.menu-settings div.separator .point:after {
    content: '';
    position: absolute;
    border: 10px solid transparent;
    border-right: 10px solid #e4e4e4;
    left: -8px;
}

.text-hint {
    font-size: 13px;
    padding-top: 5px;
    color: #686767;
}

/* MENU TRASH BIN STYLES */

.menu-trash-bin {
    position: fixed;
    display: block;
    width: 300px;
    height: 325px;
    bottom: 10px;
    right: 10px;
    background-color: white;
    border: 1px solid var(--border);
    transition-duration: .3s;
    overflow: hidden;
    z-index: 10;
}

.menu-trash-bin.notify {
    height: 95px !important;
}

.menu-trash-bin.closed {
    height: 30px;
}

.menu-trash-bin-text {
    width: 100%;
    height: 25px;
    padding: 5px 0 0;
    text-align: center;
    background-color: var(--light-bg);
    font-weight: 100;
}

.menu-trash-bin .text-hint {
    margin: 5px 0 0 10px;
    opacity: 1;
    transition-duration: .3s;
}

.menu-trash-bin.closed .text-hint {
    opacity: 0;
}

.menu-trash-bin ul {
    width: 280px;
    height: 245px;
    margin: 10px 0;
    padding: 0 0 5px 10px;
    list-style: none;
    overflow-y: scroll;
    opacity: 1;
    transition-duration: .3s;
}

.menu-trash-bin.closed ul {
    opacity: 0;
    transition-duration: .275s;
}

.menu-trash-bin li {
    position: relative;
    height: 30px;
    padding: 0;
    background-color: #e0e0e0;
    font-size: 16px;
}

.menu-trash-bin li a {
    position: absolute;
    width: 188px;
    height: 25px;
    padding: 5px 0 0 5px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.menu-trash-bin i {
    position: absolute;
    display: block;
    right: 10px;
    top: 6px;
    cursor: pointer;
    transition-duration: .3s;
}

.menu-trash-bin.closed i {
    transform: rotate(45deg);
}

.menu-trash-bin li:nth-child(2n) {
    background-color: var(--light-bg);;
}

/* LINKS-LIST STYLES */

.link-row-text {
    margin: 0 0 3px;
    text-align: left;
}

.link-row {
    padding: 10px 0 10px;
}

.link-row td {
    position: relative;
    padding: 16px !important;
}

.link-row textarea {
    height: 11em;
    margin: 3px 0 15px;
    padding: 3px 5px;
    font-size: 12px;
}

.link-row textarea:disabled {
    background-color: white;
}

.link-row input, .link-row select {
    margin: 0 0 10px;
}

.link-row select {
    padding: 0 3px;
}

.menu-preview {
    text-decoration: underline;
    cursor: pointer;
}

.link-row:nth-child(1n) .code-scheme {
    width: 310px;
    overflow-y: scroll;
}

.link-row:nth-child(2n) .code-scheme {
    border-radius: 4px;
    background-color: var(--light-bg);
}

.link-row-colors {
    display: flex;
    flex-direction: row;
}


.light-color {
    color: white;
}


.link-row-delete {
    position: absolute;
    right: 0;
    top: 0;
}

.link-row-save .save-btn {
    width: 145px;
    height: 30px;
    padding: 0;
    margin: 10px 0 0 0;
    background-color: var(--brown);
    color: white;
    border-radius: 4px;
}


/* LOGIN STYLES */

.login-wr {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    font-family: FreeSans, "Droid Sans", Helvetica, Arial, sans-serif;
    color: #3a3a3a;
}

.default-bg {
    height: 100vh;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-image: url(../img/bg_for_restmenu.jpg);
}

.login-wr .login_card {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #ffffff;
    box-shadow: rgba(0, 0, 0, 0.2) 0 0 8px;
    border-radius: 4px;
    box-sizing: border-box;
    padding: 30px;
}

.login-wr .project-logo {
    background-image: url(../img/logo.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    max-width: 200px;
    width: 100%;
    height: 100px;
}

.login-wr .slogan,
.login-wr .slogan-error {
    font-size: 13px;
    max-width: 240px;
    text-align: center;
    margin-left: -30px;
    margin-right: -30px;
    padding-top: 10px;
    color: #42332e;
}

.login-wr .slogan-error {
    color: #b20000;
}

.login-wr .login-info {
    display: flex;
    flex-direction: column;
    margin-top: 10px;
}


.login-wr .login-info label {
    font-size: 14px;
    margin-top: 10px;
    color: #919191;
}

.login-wr .login-info input {
    width: 240px;
    height: 34px;
    background-color: white;
    border: 1px solid #DDDEDE;
    border-radius: 2px;
    outline: none;
    box-sizing: border-box;
    font-size: 16px;
    padding: 0 8px;
    margin-top: -3px;
}

.login-wr .login-info button {
    width: fit-content;
    display: block;
    background-color: #E5E5E5;
    border-radius: 4px;
    outline: none;
    border: none;
    cursor: pointer;
    padding: 8px 32px;
    margin-top: 15px;
    font-size: 15px;
    transition: all .15s ease-in-out;
    color: #575757;
}

.login-wr .login-info button:hover {
    background-color: #e2dddd;
}

.login-wr .copyright {
    font-size: 15px;
    position: absolute;
    bottom: 0;
    right: 0;
    margin-bottom: 20px;
    margin-right: 20px;
    background: rgba(255, 255, 255, 0.34);
    padding: 2px 8px;
    border-radius: 2px;
}

.login-wr .copyright, .login-wr .copyright a {
    color: #2d2d2d;
}

.notification-background {
    position: fixed;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 20;
}

.notification {
    display: block;
    margin: 0 auto;
    padding: 15px;
    background-color: white;
    border-radius: 4px;
    text-align: center;
}

.notification-text {
    margin: 0 0 10px;
}

.notification.menu-preview {
    display: block;
    padding: 0;
    border-radius: 2px;
}

.notification.menu-preview iframe {
    border: solid 4px white;
    border-radius: 4px;
    border-bottom: none;
    width: 700px;
}

.notification a, .notification button {
    display: block;
    margin: 8px auto 0 auto;
    padding: 0;
    background-color: var(--brown) !important;
    border-radius: 2px;
    color: white;
    cursor: pointer;
    font-size: 14px;
}

.notification a {
    height: 24px;
    padding: 6px 0 0;
}

.notification-button-short, .notification-button-long {
    height: 30px;
}

.notification-button-short {
    width: 100px;
}

.notification-button-long {
    width: 200px;
}

.notification-error-message {
    color: #e30000;
}

/* DENIED PAGE STYLES */

.error-page-message-container {
    display: block;
    width: 100%;
    height: 100%;
}

.error-page-message {
    text-align: left;
    font-size: 20px;
}

.help-info-box {
    width: 600px;
    font-size: 14px;
    background: #efefef;
    color: #515151;
    box-sizing: border-box;
    padding: 13px;
    margin-top: 40px;
}

.help-info-box.no-space {
    margin-top: 20px;
}

/* MENU TRANSFER STYLES */

.menu-transfer-block {
    margin: 10px 0 0;
    font-size: 12px;
    text-decoration: underline;
}

.menu-transfer-block:hover {
    text-decoration: none;
    cursor: pointer;
}

form.transfer i {
    color: #5a5a5a;
}

form.transfer h2 {
    color: #5a5a5a;
}

form.transfer button.transfer {
    height: 34px !important;
    margin: -2px 0 0;
    padding: 8px 1em 8px;
}

.transfer-col {
    display: inline-block;
}

.transfer-col h5 {
    margin: 0 0 3px;
}

.transfer-from-select, .transfer-to-select {
    width: 200px !important;
}

.transfer-type-select {
    width: 150px !important;
}


/********************/

.links-box {
    margin-top: 10px;
    margin-bottom: 40px;
    padding: 10px;
    background: whitesmoke;
    border: 1px solid #d4d4d4;
}

.links-box .head {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
    color: #675549;
}

.links-box .delete-btn {
    float: right;
    background: none;
    color: #959595;
}

.links-box .delete-btn:hover {
    color: #675549;
}

.links-box .label {
    color: #695549;
    font-size: 13px;
    margin-top: 5px;
}

.links-box .settings {
    padding-top: 20px;
}

.links-box .settings .tabs {
    border-bottom: 1px solid #685549;
    margin-bottom: 10px;
}

.links-box .settings .tabs > div {
    display: inline-block;
    color: #685549;
    font-size: 13px;
    padding: 5px 10px;
    border-radius: 2px 2px 0 0;
    cursor: pointer;
}

.links-box .settings .tabs > div.selected {
    background-color: #685549;
    color: white;
}

.links-box .settings .contents {
    box-sizing: border-box;
    padding-bottom: 10px;
    height: 200px;
}

.links-box .settings .contents > div {
    display: none;
}

.links-box .settings .contents > div:first-child {
    display: block;
}

.links-box .settings a {
    text-decoration: underline;
    font-size: 14px;
    color: #695549;
}

.links-box .settings .label {
    color: #695549;
    font-size: 14px;
    margin-top: 5px;
    margin-bottom: 10px;
    font-weight: bold;
}

.links-box ul.color-pickers {
    padding: 0;
    list-style: none;
    margin: 0;
}

.links-box ul.color-pickers li {
    display: flex;
    flex-direction: row;
    height: 16px;
    margin-bottom: -1px;
}

.links-box ul.color-pickers .text {
    width: 126px;
    height: 16px;
    box-sizing: border-box;
    line-height: 14px;
    padding-left: 4px;
    border: 1px solid #dddede;
    margin-right: -1px;
    font-weight: 100;
    font-size: 10px;

}

.links-box ul.color-pickers label {
    margin: 0;
    font-size: 0;
    display: block;
    position: relative;
}

.links-box ul.color-pickers input {
    width: 126px;
    height: 16px;
    font-size: 10px;
    border: 1px solid #cbcbcb;
    border-radius: 0;
    box-sizing: border-box;
    font-weight: 100;
    text-transform: uppercase;
}

/*.links-box ul.color-pickers label:after {
  content: "\f05b";
      display: inline-block;
      font: normal normal normal 14px/1 FontAwesome;
      font-size: inherit;
      text-rendering: auto;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: absolute;
      right: 1px;
      font-size: 10px;
      height: 14px;
      background: #3c3c3c85;
      color: white;
      line-height: 14px;
      width: 14px;
      text-align: center;
      top: 1px;
      right: 1px;
}*/

.links-box .color-schemes .link {
    border-bottom: 1px dotted #42332e;
    color: #42332e;
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 10px;
    font-size: 14px;
    cursor: pointer;
}

.links-box .menu-preview {
    background-color: #d6d6d6;
    color: #212121;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    outline: none;
    width: fit-content;
    border-radius: 2px;
    padding: 6px 15px;
    font-size: 14px;
    font-weight: 100;
    margin-top: 10px;
}

.links-box .help {
    font-size: 13px;
    color: #eb0000;
    margin-top: 10px;
}

.links-box .cols:after {
    display: block;
    clear: both;
    content: "";
}

.links-box .cols .col {
    float: left;
    width: 33.3%;
    box-sizing: border-box;
    padding-right: 20px;
}

.links-box .cols .col.big {
    width: 66%;
}


.links-box .code-scheme {
    width: 342px;
    overflow-y: scroll;
}

.links-box .code-scheme textarea {
    background: #494949;
    color: #ffffff;
    font-family: monospace;
    font-size: 8px;
    width: 750px;
    height: 99px;
    line-height: 100%;
    padding: 4px;
    border: 0;
    border-radius: 0;
}

.links-box .desc {
    font-size: 13px;
    display: block;
    min-height: 53px;
    color: gray;
    line-height: 120%;
}

.links-box a.for-qr {
    display: block;
    background: white;
    box-sizing: border-box;
    height: 160px;
    text-align: center;
    padding: 10px;
}

.links-box a.inst-link {
    padding: 10px 0;
    display: inline-block;
}

.page-buttons {
    display: flex;
    align-items: center;
    margin: 5px 0 0;
}

.page-buttons .button {
    display: inline-flex;
    margin: 0;
    height: 34px;
    width: 40px;
    text-decoration: none;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--brown);
    color: white;
    background-color: var(--brown);
    font-size: 14px;
}

.page-buttons .button:first-child {
    margin: 0 5px 0 0;
}

.page-buttons .button:last-child {
    margin: 0 0 0 5px;
}

.page-buttons select {
    display: inline-block;
    margin: 0;
    padding: 0 2px;
    width: 70px;
    height: 34px;
    border-color: #d5d5d5;
    text-align: center;
}

.page-load-more {
    width: 158px;
    height: 26px;
    margin: 5px 0 0;
    padding: 6px 0 0;
    text-align: center;
    border: 1px solid #d5d5d5;
    color: #777777;
    background-color: #fafafa;
    cursor: pointer;
}
