html, body {
    height: 100%; 
    cursor: default;
    background: #323a4d;
}
.clear {
    clear: both;
}
.right {
    float: right;
    text-align: right !important;
}
.center {
    text-align: center !important;
}
.left {
    text-align: left !important;
}
.padding-0 {
    padding: 0;
}
.margin-0 {
    margin: 0;
}

a.control-link {
    cursor: pointer;
    color: #337ab7 !important;
    text-decoration: none !important;
}
a.control-link:focus,
a.control-link:hover {
    color: #23527c !important;
    text-decoration: underline !important;
}

a.dotted {
    cursor: pointer;
    text-decoration: none !important;
    border-bottom: 1px dashed #337ab7 !important;
}
a.dotted:hover,
a.dotted:focus {
    text-decoration: none !important;
    border-bottom: 1px dashed #23527c !important;
}

.suggest-ul{
    list-style: none;
    padding-left: 0;
}
.suggest-ul li{
    text-align: left;
    padding-left: 12px;
    padding-right: 12px;
    cursor: default;
}
.suggest-ul li:hover{
    background-color: #f5f5f5;;
}
li.no {
    cursor: default;
}
tr.no>td {
    text-align: center !important;
}

.scroll-table{
    margin-top: 10px;
}
.table-responsive.scroll-table {
    margin-top: 0;
    margin-bottom: 50px;
}
.scroll-block {
    max-height: 500px;
    min-height: 100px;
    overflow: auto;
}
.head-block{
    overflow: hidden;
}
.htable,
.btable{
    margin-bottom: 0;
}
.btable{
    position: relative;
}
.btable>tbody>tr>td{
    text-align: left;
}
.table-header>th {
    background-color: #b8b8b8;
}
.tr-hover {
    background-color: #f5f5f5;
}

.wl_container {
    width: 100%; 
    min-width: 1200px; 	
    max-width: 1920px; 	
    min-height: 100%; 	
    margin: 0 auto;
    padding: 0 15px;	
    font-size: 13px;
    line-height: 18px;
    background: #323a4d;
    position: relative;
}
.wl_container table.table>caption {
    font-size: 15px;
    color: #000000;
    font-family: helveticaneuecyrmedium;
    font-weight: normal;
}
.wl_container table.table {
    margin: 0 0 50px;
}
.wl_container table.table.table-inner {
    margin: 0;
}
.wl_container table.table.table-striped>tbody>tr:nth-of-type(odd) {
    background-color: #e7f2f8;
}
.wl_container table.table>thead {
    font-size: 13px;
    color: #888888;
}
.wl_container table.table>tbody {
    font-size: 14px;
}

.wl_container table.table>tbody>tr>td, 
.wl_container table.table>tbody>tr>th, 
.wl_container table.table>tfoot>tr>td, 
.wl_container table.table>tfoot>tr>th, 
.wl_container table.table>thead>tr>td, 
.wl_container table.table>thead>tr>th {
    padding: 12px 8px;
}
.wl_container table.table>thead>tr>th {
    vertical-align: top;
}
.wl_container table.table.table-bold>tbody td {
    font-weight: bold;
}
.wl_container table.table.table-small>tbody>tr>td, 
.wl_container table.table.table-small>tbody>tr>th, 
.wl_container table.table.table-small>tfoot>tr>td, 
.wl_container table.table.table-small>tfoot>tr>th, 
.wl_container table.table.table-small>thead>tr>td, 
.wl_container table.table.table-small>thead>tr>th {
    padding: 8px;
}

.wl_container .btn.btn-info,
.file-group .btn.btn-info{
    font-size: 13px;
    color: #fff;
    background-color: #0072bc;
    border-color: #0072bc;
}
.wl_container .btn.btn-info:hover,
.wl_container .btn.btn-info:active,
.file-group .btn.btn-info:hover,
.file-group .btn.btn-info:active{
    color: #fff;
    background-color: #0062ac;
    border-color: #0062ac;
}

.wl_container .wl_header {
    height: 80px;
    background: #2b3245;
    position: relative;
}
.wl_container .wl_header .logo_wrapper {
    height: 80px;
    margin-left: 10px;
    line-height: 80px;
    font-size: 16px;
    font-family: helveticaneuecyrthin;
    color: #a5a5a5;
    float: left;
}
.wl_container .wl_header .logo_wrapper a.logo {
    padding: 0 6px 0 36px;
    font-size: 20px;
    font-family: helveticaneuecyrmedium;
    text-decoration: none;
    background: url('../img/header-icon.png') left center no-repeat;
    color: #fff;
}
.wl_container .wl_header .profile_block_wrapper {
    height: 44px;
    width: 64px;
    margin: 18px 8px 18px 0;
    display: block;
    position: relative;
    float: right;
}
.wl_container .wl_header .profile_block_wrapper .dropdown-menu {
    right: 0;
    left: inherit;
    margin: 10px 0 0;
    padding: 0;
    border-radius: 0;
}
.wl_container .wl_header .profile_block_wrapper .dropdown-menu>li>a {
    text-decoration: none;
    border-left: 2px solid transparent;
}
.wl_container .wl_header .profile_block_wrapper .dropdown-menu>li>a:focus, 
.wl_container .wl_header .profile_block_wrapper .dropdown-menu>li>a:hover {
    border-left: 2px solid #ed1b45;
}
.wl_container .wl_header .profile_block {
    height: 44px;
    width: 64px;
    padding-left: 50px;
    line-height: 48px;
    text-decoration: none;
    color: #b3baca;
    display: block;
    position: relative;
}
.wl_container .wl_header .profile_block:hover {
    color: #fff;
}
.wl_container .wl_header .profile_block:before {
    content: "";
    height: 18px;
    width: 18px;
    background: #ed1b45;
    border: 2px solid #2b3245;
    border-radius: 50%;
    position: absolute;
    bottom: -2px;
    left: 28px;
    z-index: 100;
}
.wl_container .wl_header .profile_block.active:before {
    background: #66be60;
}
.wl_container .wl_header .profile_block .profile_block_photo {
    height: 44px;
    width: 44px;
    display: inline-block;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;	
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 50;
	overflow: hidden;
}

.wl_container .wl_page
{}

.wl_container .wl_page .wl_nav
{
    height: calc(100vh - 80px);
    padding-bottom: 80px;
    background: #323a4d;
}
.wl_container .wl_page .wl_nav .display_menu
{
    text-align: right;
    padding-top: 8px;
}
.wl_container .wl_page .wl_nav ul.menu
{
    width: calc(100% + 30px);
    padding: 0;
    list-style-type: none;
    display: table;
    margin: 0 0 0 -15px;
}
.wl_container .wl_page .wl_nav ul.menu>li
{
    width: 100%;
    margin: 0;
    padding: 0;	
    display: table-row;	
}
.wl_container .wl_page .wl_nav ul.menu>li>a
{
    height: 50px;
    min-height: 50px;
    margin: 0;
    padding: 8px 10px 8px 10px;
    line-height: 18px;
    text-decoration: none;
    color: #7c8187;
    font-size: 13px;
    font-family: helveticaneuecyrmedium;
    vertical-align: middle;
    display: table-cell;
    position: relative;
    border-left: 2px solid transparent;
}

.wl_container .wl_page .wl_nav ul.menu>li.submenu>a
{
    height: 30px;
    min-height: 30px;
    margin: 0;
    padding-left: 20px;
    text-decoration: none;
    color: #7c8187;
    font-size: 13px;
    font-family: helveticaneuecyrmedium;
    vertical-align: middle;
    display: table-cell;
    position: relative;
    border-left: 2px solid transparent;
}

.wl_container .wl_page .wl_nav ul.menu>li.submenu.level3>a {
    padding-left: 30px;
}

.wl_container .wl_page .wl_nav ul.menu>li.profile_link
{
    background: #383f52;
}

.wl_container .wl_page .wl_nav ul.menu>li.profile_link>a
{
    height: 80px;
    min-height: 80px;
    padding-left: 50px;	
    background: url('../img/leftmenu-student.png') left 16px center no-repeat;
    font-size: 16px;
    font-family: helveticaneuecyrlight;
    color: #fff;
}

.wl_container .wl_page .wl_nav ul.menu>li>a:hover,
.wl_container .wl_page .wl_nav ul.menu>li>a:active,
.wl_container .wl_page .wl_nav ul.menu>li>a:focus,
.wl_container .wl_page .wl_nav ul.menu>li>a.active
{
    color: #fff;
    border-left: 2px solid #ed1b45;
}

.wl_container .wl_page .wl_nav ul.menu>li.submenu {
    background: #48526b;
}
.wl_container .wl_page .wl_nav ul.menu>li.submenu.level3 {
    background: #455d75;
}

.wl_container .wl_page .wl_nav ul.menu>li.submenu>a
{
    border: 0 !important;
}

.wl_container .wl_page .wl_content_col
{
    background: #fff;
    position: relative;
    min-height: calc(100vh - 80px);
}

.wl_container .wl_page .wl_content
{
    padding: 20px 15px 0;
    min-height: 500px;	
}	

.wl_container .table-achievment>thead,
.wl_container .table-achievment>tbody
{
    text-align: center;
}	

.wl_container .table-achievment>thead>tr>td:first-child,
.wl_container .table-achievment>thead>tr>td:nth-child(2),
.wl_container .table-achievment>tbody>tr>td:first-child,
.wl_container .table-achievment>tbody>tr>td:nth-child(2)
{
    text-align: left;
}	

.wl_container .table-schedule>thead>tr>td:first-child,
.wl_container .table-schedule>tbody>tr>td:first-child
{
    text-align: center;
}

.wl_container .btn_print
{
    padding: 0 18px;
    margin-top: 3px;
    color: #0072bc;
    font-size: 15px;
    line-height: 30px;
    border: 1px solid #0072bc;
    border-radius: 2px;
    text-align: center;
    display: inline-block;
    text-decoration: none;
}	

.wl_container .personal_info_wrapper
{
    margin-top: 10px;
}	

.wl_container .personal_info_wrapper .personal_photo_wrapper
{
    width: 200px;
    margin-right: 30px;
    text-align: center;
    float: left;
}	

.wl_container .personal_info_wrapper .personal_photo_wrapper .personal_photo
{
    width: 180px;
    height: 180px;
    border-radius: 50%;
    display: inline-block;
    background: center center no-repeat;
    background-size: contain;
	overflow: hidden;
}

.wl_container .personal_info_wrapper .personal_photo_wrapper .btn {
    margin: 0 0 16px;
}

.wl_container .personal_info_wrapper .personal_text
{
    /* Для моб. версии width: 740px; */
    float: left;
}

/* редактирование персональных данных*/

#edit_personal_link {
    text-align: right;
    line-height: 34px;
    /* Шрифт приводит к лишней ширине на мобилках */
    font-size: 15px;
}
#edit_personal_form,
#edit_additional_form,
#portfolio_form {
    display: none;
}
#edit_personal_block .form-horizontal,
#portfolio_form {
    background-color: #fbfbfb;
    padding: 10px 10px 1px 10px;
    border-radius: 5px;
}
#edit_personal_block .control-label {
    font-family: helveticaneuecyrmedium;
    font-weight: normal;
    font-size: 15px;
    line-height: 25px;
    text-align: left;
}
#edit_personal_block .block-label,
#edit_personal_block .block-input {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
    float: left;
}
#edit_personal_block .block-label {
    width: 150px;
}
#edit_personal_block .block-label.email {
    width: 300px;
}
#edit_personal_block .block-input {
    width: 250px;
}
#edit_personal_block .block-input.text {
    margin-top: 7px;
    font-size: 15px;
    line-height: 25px;
}
#edit_personal_block .control-buttons {
    width: 350px;
}
#portfolio_form .buttons {
    text-align: right;
}
#portfolio_form .buttons .btn {
    min-width: 130px;
}
.block-check {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 25px;
    float: left;
    width: 60px;
}
/* конец редактирования персональных данных*/

.control-buttons {
    float: right;
}
.control-buttons .btn {
    min-width: 130px;
}

.btn.collapsible {
    margin-bottom: 2px;
}

.interval .block-label,
.interval .block-input {
    position: relative;
    min-height: 1px;
    padding-right: 5px;
    padding-left: 5px;
    float: left;
}
.interval .block-label {
    width: 20px;
}
.interval .block-input {
    width: 100px;
}

.wl_footer {
    position: absolute;
    bottom: 10px;
    width: 100%;
    line-height: 20px;
    font-size: 13px;
    text-align: center;
    overflow: hidden;
    color: #fefefe;
}
.wl_container .wl_footer {
    color: #000;
    width: 90%;
}
.wl_footer_space {
    width: 100%;
    height: 80px;
}
.wl_footer a
{
    color: #fefefe !important;
}
.wl_container .wl_footer a
{
    color: #000 !important;
}

.auth {
    position: relative;
    width: 400px;
    padding: 20px;
    border: 1px solid #fff;
    margin: 13% auto 0 auto;
}

.auth_title {
    padding: 0 0 0 45px;
    position: relative;
    margin: 0 auto;
    width: 185px;
    font-size: 20px;
    font-family: helveticaneuecyrmedium;
    background: #323a4d url(../img/header-icon.png) 10px center no-repeat;
    color: #fff;
    margin-top: -33px;
}

.auth_form {
    width: 260px;
    margin: 30px auto 0 auto;
}

.auth_form a.changepass {
    padding-top: 6px;
}

.auth_form a.leader-id {
    text-decoration: none !important;
    margin-left: 12px;
}

.auth_form img.loader {
    margin-left: 16px;
    margin-top: 4px;
}

/* Other */

.comment__photo {
    width: 53px;
    height: 53px;
	border-radius: 50%;
    overflow: hidden;
}
.comment__block {
    width: 90%;
    margin: 5px auto;
    padding: 15px;
    background: #e7f2f8;
}
.comment__block p {
    margin: 0 0 10px !important;
}
.comment__body {
    float: left;
    width: calc(90% - 20px);
    padding-left: 10px;
    padding-right: 10px;
}
.comment__body>.row>.col-xs-12 {
    white-space: pre-wrap;
}
.comment__del {
    margin-top: -10px;
    margin-right: -5px;
}

.bgGreen {
    background: #d7f7d7;
}

.table-hover tbody tr:hover .bgGreen {
    background: #b6dab6;
}

.openComments,
.eduProc,
.edu_item {
    cursor: pointer;
}
tr.eduProc>td,
tr.edu_item>td {
    text-align: center;
}
tr.edu_item>td>.row-td {
    display: flex;
    flex-direction: row;
    justify-content: center;
}
.row-td>.col-td {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 1px;
}
.edu_item input {
    max-width: 40px !important;
    text-align: right !important;
    padding-right: 3px !important;
}
.edu_item div.has-error>input {
    border-color: #a94442;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}

.resultAttachments,
.edu_wrap,
.comment__main {
    display: none;
    background: none !important;
}

.edu__vertical {
    -webkit-transform: rotate(90deg); 
    transform: rotate(90deg);
}

.bg-gray {
    background: rgba(153, 153, 153, 0.18) !important;
}

.displayNone {
    display: none !important;
}


.tool-tip-save {
    display: none;
    background-color: #88ff77 !important;
    padding: 8px !important;
}

.glyphicon{
    top:0px
}

/* END Other */

/* Print */

#printable {
    display: none;
}

@media print {
        body>*:not(#printable) {
            display: none ;
        }

        #printable {
            -webkit-print-color-adjust: exact !important;
            print-color-adjust: exact;
            display: block !important;
        }

        table {
            margin: 0 auto !important;
            border-spacing: 0 !important;
        }

        td, th {
            border: 1px solid lightgray !important;
            padding: 5px !important;
            text-align: center !important;
            vertical-align: top !important;
        }
        th {
            color: gray !important;
        }

        a {
            color: gray !important;
            text-decoration: none !important;
        }
        a[href]:after {
            content: "" !important;
        }

        .bgGreen {
            background: #a2ff9d !important;
            -webkit-print-color-adjust: exact !important;
            print-color-adjust: exact;
        }
}

/* END Print */

td.vertical{
    text-align: center;
    vertical-align: middle;
}
td.vertical>div {
    width: 5px;
    height: 200px;
    margin:auto;
    white-space: nowrap;

    -o-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);

    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
td.vertical>div>span {
    margin-left: -100px;
}

.sum {
    font-weight: 700;
    color: #000;
}

.add-item,
.add-item-small {
    float: right;
    text-align: right;
    font-size: 15px;
}
.add-item {
    line-height: 34px;
    padding-bottom: 10px;
    padding-top: 3px;
}
.add-item-small {
    padding-top: 12px;
}
.add-item>a>img {
    margin-right: 8px
}
.add-item-small>a>img {
    margin-right: 5px;
    margin-bottom: 7px
}

.card-block {
    padding: 1.25rem;
}
.card {
    position: relative;
    display: block;
    margin-bottom: .75rem;
    background-color: #fff;
    border-radius: .25rem;
    border: 1px solid rgba(0,0,0,.125);
}

.upload-file {
    opacity: 0;
    position: absolute;
    z-index: -1;
}

.text-error{
    resize: none;
    margin: 0;
    width: 400px;
    height: 200px;
    overflow: auto;
}

.error {
    color: #f00;
    display: none;
}
.big-error {
    color: #f00;
    font-weight: 900;
    padding-left: 10px;
    padding-right: 10px;
}

.add-dialog {
    z-index: 901;
}

.popup{
    position: absolute;
    background-color: #fff;
    border: 1px #f5f5f5 solid;
    border-radius: 3px;
    z-index: 1001;
}
.popup .panel{
    margin-bottom: 0;
}

#sug {
    z-index: 1002;
    overflow-y: auto;
}
#sug::-webkit-scrollbar {
    width: 0.5rem;
    background-color: #f1f1f1;
    box-sizing: border-box;
    border-radius: 1rem;
}
#sug::-webkit-scrollbar-thumb {
    background-color: #c1c1c1;
    border-radius: 1rem;
}

#error{
    z-index: 1003;
}

#dialog {
    max-width: 480px;
    background: none;
    border: none;
}

#load-img{
    position:absolute;
    z-index:10000;
    left: 50%;
    top: 50%;
    width: 64px;
    height: 64px;
    margin: -32px 0 0 -32px;
}
#screen-span,
#modal-screen-span {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: #000;
    opacity: 0.2;
}
#screen-span {
    z-index: 1000;
}
#modal-screen-span {
    z-index: 900;
}

#groupOID{
    display: none;
}

.file-group {
    margin-top: 15px;
}
.file-group label{
    font-weight: normal !important;
}
.div-or {
    margin-top: 10px;
    margin-bottom: 10px;
}
.line {
    border-bottom: 1px #e7e7e7 solid;
}
.div-or .line {
    margin-left: 10px;
    margin-right: 10px;
}
.file-group .div-or .line {
    width: 190px;
}

.ul_clear>li>a:first-child,
.list-inline>li>a:first-child,
.list-inline>li>strong {
    vertical-align: middle !important;
}
.list-inline>li {
    padding-bottom: 5px;
}

.mtop-6 {
    margin-top: 6px !important;
}
.mtop-15 {
    margin-top: 15px !important;
}
.mbottom-30 {
    margin-bottom:30px !important;
}

.disc-accordion a {
    margin-bottom: 3px !important;
    text-decoration: none;
}

.group-well {
    min-height: 20px;
    padding: 10px;
    border: 1px solid #e3e3e3;
    border-radius: 4px;
}
.p-row {
    margin-bottom: 0px !important;
    padding-top: 7px !important;
}

.default {
    cursor: default;
}
.pointer {
    cursor: pointer;
}
.pointer[disabled] {
    cursor: not-allowed;
}

.block_msg {
    width: 100%;
    border: 1px solid #e3e3e3;
    border-radius: 4px;
}
.input_msg {
    width: 100%;
    padding: 15px;
}
.container_msg {
    width: 100%;
    max-height: 500px;
    overflow-y: auto;
}
td .container_msg {
    max-height: 250px;
}
.container_msg>img {
    margin-bottom: 15px;
}
.attach_msg {
    float: left;
    padding-left: 15px;
    padding-top: 10px;
}
.textarea_msg {
    float: left;
    padding-left: 15px;
    padding-right: 15px;
}
.textarea_msg>textarea {
    resize: none;
}
.send_msg {
    float: right;
    text-align: right;
    padding-right: 15px;
    padding-top: 10px;
}

.edu-table {
    margin: 0 0 20px !important;
}

.edit_studwork {
    background: none;
    text-align: right;
    margin-top: -8px;
    padding: 0px;
}

.close {
    font-size: 34px;
    line-height: 34px;
}

#listStudworks {
    width: 850px;
    height: 485px;
}
#listStudworks .scroll-block {
    height: 250px;
    border: 1px solid #ddd;
    border-top: 0;
}
#formStudwork>.form-group {
    margin-top: 15px;
    margin-left: 70px;
}
#formStudwork>.form-group>div {
    float:left;
}
#formStudwork>.form-group>div:nth-child(1) {
    width: 220px;
}
#formStudwork>.form-group>div:nth-child(2) {
    width: 300px;
    margin-left: 5px;
}
#formStudwork>.form-group>div:nth-child(3) {
     width: 100px;
     margin-left: 5px;
}
#formStudwork>.form-group>div:nth-child(4) {
    width: 100px;
    margin-left: 5px;
}

input[type="radio"] {
    margin: 0 6px;
    width: 20px;
    height: 20px;
    vertical-align: bottom;
}

input[type="checkbox"] {
    display: none;
}
input[type="checkbox"] + label {
    padding-left: 40px;
    padding-top: 3px;
    min-height: 26px;
    background: url(../img/checkbox.png) left top no-repeat;
}
input[type="checkbox"]:checked + label{
    background: url(../img/checkbox-checked.png) left top no-repeat;
}
td input[type="checkbox"] + label {
    padding-left: 28px;
    margin-bottom: 0;
}
td input[type="checkbox"]:disabled + label {
    background: url(../img/checkbox-disabled.png) left top no-repeat;
}

tr.signed>td {
    text-align: center;
}
tr.signed>td:first-child {
    text-align: left;
    vertical-align: middle;
    color: blue;
}

#edit_additional_link {
    padding-top: 0;
}

#table_resources {
    margin-bottom: 0;
}
#table_resources .scroll-block {
    min-height: 315px;
}
#table_resources td {
    vertical-align: middle;
}
#table_resources tr>td:last-child {
    text-align: center;
}

#edit_additional_block textarea {
    margin: 0;
    resize: none;
    width: 100%;
    height: 96px;
}
#edit_additional_block form td {
    border: 0 !important;
}
#edit_additional_block tr>td:last-child {
    white-space: pre-wrap;
}
#edit_additional_block form tr>td {
    white-space: normal !important;
}
#edit_additional_block form tr>td:first-child>label {
    padding-top: 7px;
}

div.alert ul.ul_clear li:only-child {
    margin-bottom: 0 !important;
}

div.changepass_msg,
div.confirmail_msg {
    margin: 20px;
}
div.changepass_msg {
    color: #fff;
}

.personal_photo.img-center {
    position: relative !important;
}
.comment__photo.img-center,
.profile_block_photo.img-center {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}
.img-center div {
    background: #fff no-repeat 50% / cover;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
.img-center img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

.flex {
    display: flex !important;
}
.flex-row {
    display: flex;
    flex-direction: row;
}
.flex-col {
    display: flex;
    flex-direction: column;
}

.blue {
    color: #0066cc !important;
}

.tr-day>td {
    border-top-width: 3px !important;
}

.attach-dropdown {
    display: inline-block;
    vertical-align: middle;
}
.attach-dropdown span.glyphicon {
    top: 3px;
}
.attach-menu {
    left: auto;
    right: 0;
}
.attach-menu a {
    text-decoration: none !important;
}

td.control-td {
    padding-right: 0 !important;
}

.after-p {
    margin-top: -15px;
    margin-bottom: 20px;
    font-size: 15px;
}

.ul-main {
    font-size: 15px;
}
.ul-main>li {
    margin-bottom: 10px;
}
.ul-main>li>a {
    margin-right: 5px;
}


/*
*   СТИЛИ ДЛЯ ЧАТА ЛГТУ
*   flexbox, rem
*/

.chat-container {
    display: flex;
    margin: -1rem -2rem 0;
    height: calc(100vh - 17rem);
    font-family: sans-serif;
}

.chat-container .chat-dialogs {
    display: flex;
    flex-direction: column;
    flex: 3;
    max-width: 35rem;
}

.chat-dialogs-search,
.chat-dialogs-list {
    display: flex;
    flex-direction: column;
}
.chat-dialogs-list {
    flex: 1 1;
    margin-top: 1rem;
    overflow-y: auto;
}

.chat-dialogs-empty {
    text-align: center;
    color: gray;
    font-size: 13px;
}

.chat-dialogs-search-groups {
    display: flex;
    justify-content: center;
}
.chat-dialogs-search-input {
    display: flex;
    width: 100%;
    position: relative;
}
.chat-dialogs-search-input>input.form-control {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
.chat-dialogs-search-input>span.loupe {
     position: absolute;
     top: 0.8rem;
     right: 1.2rem;
}
.chat-dialogs-search-input>span.loupe.clear {
    cursor: pointer;
}
.chat-dialogs-search-input>span.loupe:before {
    content: "\1F50D";
    color: #c1c1c1;
    font-size: 2rem;
}
.chat-dialogs-search-input>span.loupe.clear:before {
    content: "\2613";
    color: #c1c1c1;
    font-size: 2rem;
}
.chat-dialogs-search-input>span.loupe.clear:hover:before {
    font-weight: bold;
}

.chat-dialogs-search-group {
    flex: 1 1;
}
.chat-dialogs-search-group.active {
    background-color: #add8e6;
    border-bottom: none;
}

.chat-dialog {
    display: flex;
    padding: 1rem 0.5rem;
}
.chat-dialog:hover {
    background-color: #f1f1f1;
}
.chat-dialog.active {
    background-color: #add8e6;
}

.chat-dialog-photo-container {
    position: relative;
}
.chat-dialog-photo-container>.status {
    height: 1rem;
    width: 1rem;
    background: transparent;
    border: none;
    border-radius: 50%;
    position: absolute;
    bottom: 0;
    left: 3rem;
    z-index: 100;
}
.chat-dialog-photo-container.online>.status {
    background: #66be60;
    border: 1px solid #2b3245;
}
.chat-dialog-photo {
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    overflow: hidden;
    background-size: cover;
}

.chat-dialog-body {
    display: flex;
    flex-direction: column;
    flex: 1 1;
    margin-left: 0.5rem;
    max-width: calc(100% - 4.5rem);
}

.chat-dialog-header {
    display: flex;
    justify-content: space-between;
}
.chat-dialog-header-search {
    display: none;
}
.chat-dialog-header-name {
    font-weight: bold;
}
.chat-dialog-header-date {

}

.chat-dialog-message {
    display: flex;
    justify-content: space-between;
    padding-top: 0.5rem;
}
.chat-dialog-message-text {
    overflow: hidden;
    overflow-wrap: break-word;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.chat-dialog-message-text .own {
    color: #168acd;
}
.chat-indicator {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 0.25rem;
    width: 2rem;
    height: 2rem;
    min-width: 2rem;
    min-height: 2rem;
    background-color: firebrick;
    color: white;
    font-weight: bold;
    border-radius: 50%;
}
.chat-indicator.empty {
    background-color: transparent;
}
.chat-indicator.in-menu {
    position: absolute;
}

.chat-container .chat-messages {
    display: flex;
    flex-direction: column;
    flex: 7;
}

.chat-messages-list {
    display: flex;
    flex-direction: column;
    flex: 1 1;
    overflow-y: auto;
    margin-right: -1rem;
    padding: 0 1rem 1rem;
    background-color: #fdfdfd;
}
.chat-messages-list img.loading,
.chat-dialogs-list img.loading {
    width: 2rem;
    height: 2rem;
    margin: 0 auto;
}
.chat-messages-list::-webkit-scrollbar,
.chat-dialogs-list::-webkit-scrollbar {
    width: 0.5rem;
    background-color: #f1f1f1;
    box-sizing: border-box;
    border-radius: 1rem;
}
.chat-messages-list::-webkit-scrollbar-thumb,
.chat-dialogs-list::-webkit-scrollbar-thumb {
    background-color: #c1c1c1;
    border-radius: 1rem;
}

.chat-message {
    display: flex;
    flex-direction: column;
    padding: 0.5rem 1rem;
    margin: 0.25rem 0;
    border: 1px solid #f1f1f1;
    border-radius: 0.5rem;
    width: fit-content;
    max-width: 80%;
}
.chat-message.out {
    border-bottom-right-radius: 0;
    background-color: #effdde;
    margin-left: auto;
}
.chat-message.in {
    border-bottom-left-radius: 0;
    background-color: white;
    margin-right: auto;
}

.datestamp {
    margin: 0.25rem auto;
    padding: 0.5rem;
    background: #c1c1c1;
    color: white;
    border-radius: 1rem;
    width: fit-content;
}

.chat-message-body {
    display: flex;
}
.chat-message-remove {
    font-size: 21px;
    line-height: 1;
    align-self: flex-end;
    margin: -0.2rem 0.4rem 0 0.6rem;
}
.chat-message-text {
    flex: 1;
    align-self: flex-start;
    white-space: pre-wrap;
    color: black;
    font-weight: 500;
}
.chat-message-time {
    display: flex;
    flex: 1;
    align-self: flex-end;
    align-items: center;
}
.chat-message-time>img {
    margin-left: 0.5rem;
}

.chat-message-inputs { }

.chat-message-inputs>form {
    display: flex;
    flex: 1 1;
}

.chat-message-attach {
    max-width: 3rem;
    max-height: 3rem;
    margin: 0.6rem 1rem 0 0.5rem;
}

.chat-message-textarea {
    flex: 1;
}
.chat-message-textarea>textarea {
    resize: none;
}

.chat-message-send {
    max-width: 3rem;
    max-height: 3rem;
    margin-left: 1rem;
    margin-top: 0.6rem;
}


.advert {
    position: absolute;
    font-size: 14px;
    color: white;
    top: 10px;
    text-align: center;
    visibility: hidden;
}

.table-container {
    overflow-x: auto;
}

.pre-wrap {
    white-space: pre-wrap;
}

.w-30 {
    width: 30px;
}
.collaborators {
    min-width: 130px;
}
.effc-info {
    display: flex;
}
.effc-info>.flex-col {
    width: 50%;
}
.effc-info>.flex-col>.flex-row {
    padding: 4px 12px;
}
.effc-info>.flex-col>.flex-row>b {
    margin-right: 10px;
}

#add_publication_link>a:last-child {
    margin-left: 10px;
}

.services-wrapper>ul.nav-tabs>li>a {
    font-size: 1.5rem;
}

#user_status {
    padding-bottom: 10px;
}