:root {
    --color-black: #424242;
    --color-light-gray: #f7f7f8;
    --color-dark-gray: #9ba6b2;
    --color-gray: #dce0e6;
    --color-theme: #2b97bf;
    --color-ultra-light-theme: #f0f3f7;
    --color-success: #9ece69;
    --color-danger: #dc3545;
}

html {
    font-size: 12.5px;
}

body {
    position: relative;
    font-family: "Nunito", sans-serif;
    color: var(--color-black);
    overflow-x: hidden;
    background: linear-gradient(180deg, #F5F7FF 0%, #F9F9FF 100%);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 700;
}

::selection {
    background: var(--color-theme);
    color: #fff;
}

::-moz-selection {
    background: var(--color-theme);
    color: #fff;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.kv-drp-dropdown .range-value {
    cursor: pointer;
}

.menu_group_name {
    font-size: 8;
}

.nobr {
    white-space: nowrap;
}

.modal-top-layer {
    background: #00000034;
    padding-top: 50px;
}

.left-sidebar .list-group-item.has-tab-error {
    background: #e7caca;
}

.left-sidebar .list-group-item.has-tab-error i {
    background: #e19d9d;
    color: #fff;
}

.left-sidebar .list-group-item.has-tab-error.active {
    color: #495057;
}

.yii-debug-toolbar_position_bottom {
    opacity: 0.1;
}

.yii-debug-toolbar_position_bottom:hover {
    opacity: 1;
}

.yii-debug-toolbar_active {
    opacity: 1;
}

@media (min-width: 982px) {
    .modal-top-layer .modal-lg {
        width: 990px !important;
    }
}

.badge-join {
    display: flex;
}

.badge-join a:first-of-type .badge {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.badge-join a:last-of-type .badge {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.btn-config-gridview a {
    color: var(--color-dark-gray);
}

.btn-config-gridview a:hover {
    color: var(--color-theme);
}

.table_section_info {
    padding-bottom: 0 !important;
}

.table_section_info>div:last-child {
    border: 0 !important;
}

.disabled_div {
    pointer-events: none;
    opacity: 0.6;
}

.is_theme {
    color: #9ece69;
}

.selectedrow {
    background-color: var(--color-theme) !important;
    color: white;
}

.table_select_row:hover {
    background-color: var(--color-theme) !important;
    color: white;
    cursor: pointer;
}

#left_gridview>img,
#right_gridview>img {
    height: 100px;
}

#left_gridview,
#right_gridview {
    transition: 0.2s;
    opacity: 0.15;
    height: 100%;
    position: absolute;
}

#left_gridview:hover,
#right_gridview:hover {
    opacity: 0.22;
    cursor: pointer;
}

#left_gridview {
    left: 0;
}

#right_gridview {
    right: 0;
}

.invis {
    display: none !important;
    pointer-events: none;
}

.scroll_left {
    transition: 0.2s;
    width: 33%;
    height: calc(100% - 70px);
    position: absolute;
    opacity: 0;
    top: 35px;
    left: 0;
}

.scroll_right {
    transition: 0.2s;
    width: 33%;
    height: calc(100% - 70px);
    position: absolute;
    opacity: 0;
    top: 35px;
    right: 0;
}

.scroll_left:hover,
.scroll_right:hover {
    opacity: 1;
}

.alias-download-theme {
    margin-top: 5px;
    font-size: 13;
    transition: .25s all;
    color: #6b6b6b;
}

.alias-download-theme:hover {
    box-shadow: 0 2.5px 5px #00000036;
    transform: scale(1.05);
}

.back_menu {
    color: #c5c5c5;
    width: 80px;
    display: flex;
    font-size: 2.5rem;
    align-items: center;
    justify-content: center;
}

.back_menu.hidden {
    display: none;
}

.avatar .user-notify-count {
    position: absolute;
    bottom: -3px;
    right: -3px;
    font-size: 9px;
}

.left-menu {
    background: #fff;
    width: 70px;
    height: 100vh;
    text-align: center;
    font-size: 16px;
    position: fixed;
    z-index: 1002;
    top: 0;
    left: 0;
    user-select: none;
    border-radius: 0 .75rem .75rem 0;
    transition: .35s width;
}

.left-menu.open {
    width: 30%;
    max-width: 512px;
    box-shadow: 7px 0 10px #ababab0a;
}

.left-menu__static {
    padding: .5rem;
}

.left-menu__body {
    padding: 1rem;
}

.left-menu__links {
    display: grid;
    grid-template-columns: repeat( auto-fit, minmax(125px, 1fr));
    grid-gap: 1rem;
}

.left-menu__link {
    position: relative;
    background-color: #f7f7f8;
    border-radius: .75rem;
    padding: .75rem;
    display: flex;
    gap: .25rem;
    flex-direction: column;
    align-items: center;
    opacity: .85;
    color: var(--gray);
    transition: .25s background-color, 200ms ease transform;
}

.left-menu__link .site-count-badge {
    top: .25rem;
    right: .25rem;
    border-radius: .75rem;
    font-weight: 700;
}

.left-menu__link:hover {
    color: var(--color-black);
    transform: scale(1.05);
    opacity: 1;
}

.left-menu__link>i {
    width: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1/1;
    font-size: 1.75rem;
}

.left-menu__link>span {
    display: inline-flex;
    align-items: center;
    justify-items: center;
    flex-grow: 1;
    font-size: .95rem;
    font-weight: 600;
    max-width: 80px;
}

.left-menu__link.dark-orange {
    background-color: #fff3ef;
    color: #ff7a5c;
}

.left-menu__link.red {
    background-color: #fff2f2;
    color: #ff414a;
}

.left-menu__link.purple {
    background-color: #fff1ff;
    color: #981d98;
}

.left-menu__link.green {
    background-color: #e1ffe1;
    color: #0a840a;
}

.left-menu__link.cyan {
    background-color: #ecffff;
    color: #079a9a;
}

.left-menu__link.active {
    background-color: #e0f7ff;
    color: #158ebb;
    pointer-events: none;
    opacity: 1;
}

.left-menu:not(.open) .left-menu__body {
    display: none !important;
}

.left-menu.open .left-menu__static {
    display: none !important;
}

.wrap.left-menu-open,
.app.left-menu-open {
    pointer-events: none !important;
    transition: .35s all;
}

.wrap.left-menu-open::after,
.app.left-menu-open::after {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #0000002b;
    z-index: 1001;
}

.left-menu .menu-items {
    flex-grow: 1;
}

.left-menu .menu-items-bottom ul {
    margin: 0;
}

.left-menu .menu-items li:not(:last-child), .left-menu .menu-items-bottom li:not(:last-child) {
    margin-bottom: .25rem;
}

.left-menu .menu-items ul li a span, .left-menu .menu-items ul li button span {
    display: none;
}

.left-menu .menu-items ul,
.left-menu .menu-items-bottom ul {
    list-style: none;
    padding: 0;
}

.left-menu .menu-items ul li,
.left-menu .menu-items-bottom ul li {
    display: inline-block;
}

.left-menu .menu-items li:not(.active) a:hover,
.left-menu .menu-items li:not(.active) button:hover,
.left-menu .menu-items-bottom li:not(.active) a:hover,
.left-menu .menu-items-bottom li:not(.active) button:hover {
    background-color: transparent;
    color: #17a2b8;
    box-shadow: 0 0 0 2px #17a2b824, inset 0 0 0 24px #17a2b824;
}

.left-menu .menu-items li.active a,
.left-menu .menu-items-bottom li.active a,
.left-menu .menu-items li.active button,
.left-menu .menu-items-bottom li.active button  {
    background: #2b97bf1c;
    color: var(--color-theme);
}

.left-menu .menu-items a,
.left-menu .menu-items-bottom a,
.left-menu .menu-items button,
.left-menu .menu-items-bottom button  {
    position: relative;
    width: 45px;
    height: 45px;
    border-radius: .75rem;
    background: transparent;
    color: #a0a6bf;
    display: flex;
    justify-content: center;
    align-items: center;
    outline: none;
    border: none;
    transition: .35s all;
}

.left-menu .menu-items a:active,
.left-menu .menu-items button:active,
.left-menu .menu-items a:focus,
.left-menu .menu-items button:focus {
    box-shadow: 0 0 0 3px #e8f4f8 !important;
    background: #e8f4f8 !important;
    color: #2b97bf !important;
}

.left-menu .menu-items-bottom .logout {
    color: #940a00;
}

.left-menu .menu-items-bottom .feedback {
    background-color: #c506c51a;
    color: purple;
}

.left-menu .menu-items-bottom .manual {
    background-color: #d9fcfd;
    color: #21a8aa;
}

.left-menu>.card-div {
    transition: all 0.4s;
    cursor: pointer;
}

.left-menu_column>li:not(:last-child) {
    margin-bottom: .25rem !important;
}

.menu-items-tooltip {
    pointer-events: none;
    position: absolute;
    display: flex;
    align-items: center;
    left: 100%;
    background-color: #3a3a3a;
    color: white;
    font-weight: 700;
    border-radius: .75rem;
    margin-left: .5rem;
    white-space: pre;
    padding: .5rem 1rem;
    font-size: .95rem;
}

.menu-items-tooltip::after {
    content: '';
    width: 0;
    height: 0;
    display: block;
    position: absolute;
    z-index: 10;
    border: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    margin-top: -6px;
    top: 50%;
    border-right: 6px solid #3a3a3a;
    left: -6px;
}

.card-rasp-count {
    position: absolute;
    font-weight: 500;
    font-size: .9rem;
    top: .5rem;
    right: .5rem;
    background-color: #ffffff2b;
    color: white;
    min-width: 2rem;
    text-align: center;
    padding: .15rem .5rem;
    border-radius: 1rem;
}

.card-rasp-count.loading {
    height: 32px;
    width: 32px;
    border-radius: .5rem;
    background-image: url(../images/loading-spinner.svg);
    background-size: 32px;
    background-position: center;
    background-repeat: no-repeat;
    background-color: transparent;
    color: transparent;
    filter: grayscale(1) brightness(1000%);
    padding: .25rem;
}

.card-item.card-page .card-title {
    word-break: break-word;
}

.card-item.card-page {
    position: relative;
    display: block;
    width: 100%;
    background: linear-gradient(112.03deg, #47b8e2 0%, #3662ff 100%);
    border-radius: .75rem;
    border: none;
    text-align: left;
    height: 100%;
    cursor: pointer;
    transition: .35s transform, .35s box-shadow;
}

.card-page.card-test {
    background: linear-gradient(112.03deg, #ffc107 0%, #dc3545 100%);
}

.card-page.card-tests {
    background: linear-gradient(112.03deg, #0f76e5 0%, #0e5cb1 100%);
}

.card-page.card-chat {
    background: linear-gradient(112.03deg, #179917 0%, #0b740b 100%);
}

.card-page.card-rasp {
    background: linear-gradient(112.03deg, #bf2fbf 0%, #981d98 100%);
}

.card-page.card-study {
    background: linear-gradient(112.03deg, #d7333b 0%, #a71a20 100%);
}
.card-page.card-review {
    background: linear-gradient(112.03deg, #fa8500 0%, #faab00 100%);
}
.card-page.card-review-two {
    background: linear-gradient(112.03deg, #077230 0%, #09a0bb 100%);
}

.card-page.card-journal {
    background: linear-gradient(112.03deg, #12b7b7 0%, #079a9a 100%);
}

.card-item.card-page.clone {
    position: fixed !important;
    pointer-events: none !important;
    box-shadow: 0 20px 25px 10px #0000002d;
}

.card-item.card-page.selected {
    opacity: 0 !important;
}

.card-item.card-page:hover {
    transform: scale(1.02);
}

.card-page.card-index {
    opacity: .9;
    padding: 1.5rem;
    border-radius: 1rem;
    transition: .25s transform ease, .25s opacity, .25s ease box-shadow;
    overflow: hidden;
}

.card-page.card-index:hover {
    transform: translate(0, -.5rem);
    box-shadow: 0 15px 10px 7px #0000001a;
    opacity: 1;
}

.card-page.card-index::after {
    content: '';
    background: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/756881/wavePurple.svg) repeat-x;
    position: absolute;
    bottom: -10rem;
    width: 2048px;
    height: 198px;
    animation: animation-index-wave 10s cubic-bezier(0.36, 0.45, 0.63, 0.53) infinite, animation-index-swell 11s ease -1.25s infinite;
    transform: translate3d(0, 0, 0);
    filter: brightness(0) invert(1);
    opacity: .1;
    pointer-events: none;
  }

  .card-page.card-index::before {
    content: '';
    background: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/756881/wavePurple.svg) repeat-x;
    position: absolute;
    bottom: -8rem;
    width: 2048px;
    height: 198px;
    animation: animation-index-wave 11s cubic-bezier(0.36, 0.45, 0.63, 0.53) infinite, animation-index-swell 12s ease -1.25s infinite;
    transform: translate3d(0, 0, 0);
    filter: brightness(0) invert(1);
    opacity: .05;
    pointer-events: none;
  }

  @keyframes animation-index-wave {
    0% {
      margin-left: 0;
    }
    100% {
      margin-left: -1600px;
    }
  }

  @keyframes animation-index-swell {
    0%,
      100% {
      transform: translate3d(0, -15px, 0);
    }
    50% {
      transform: translate3d(0, -10px, 0);
    }
  }

.card-page .card-page-drag {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 6;
    display: flex;
    justify-content: right;
    align-items: flex-end;
    color: #ffffff;
    padding: 1rem;
    font-size: 5rem;
    opacity: 0;
    pointer-events: none;
    transition: .35s all;
}

.card-item.card-page .btn-card-item,
.card-book .btn-card-item {
    display: inline-block;
    padding: .5rem 1rem;
    background: linear-gradient( 112.03deg, #3cb8e6 0%, #5377f9 100%);
    border-radius: .5rem;
    transition: .25s all;
    font-weight: 700;
    color: whitesmoke !important;
    font-size: 1rem;
    cursor: pointer;
}

.card-item.card-page .btn-card-item:hover,
.card-book .btn-card-item:hover {
    box-shadow: 0 5px 10px #00000036;
    transform: scale(1.05);
}

.disc-list>* {
    perspective: 600px;
}

.card-item.disc {
    height: max-content;
    background-color: transparent;
    position: relative;
    display: grid;
    grid-template-columns: calc(125px + 1rem) calc(100% - calc(125px + 1rem));
    border-radius: 1rem;
    cursor: pointer;
    transform-style: flat;
    transition: .35s all;
}

.card-item.disc:hover {
    transform: scale(1.03) translate(0, -.5rem) rotateX(10deg);
    box-shadow: 0 15px 20px 7px #00000012;
    background-color: white;
    /* box-shadow: 0 0 0 4px #ddeef5; */
}

.card-item__right-cont {
    display: flex;
    flex-direction: column;
    margin: .5rem;
    margin-left: 1rem;
    overflow: hidden;
    flex-wrap: wrap;
}

.card-item__disc-rating {
    margin-top: auto;
    width: 100%;
    margin-right: .5rem;
    height: 1rem;
    border-radius: 1rem;
    background-color: #f7f7f8;
    display: flex;
    overflow: hidden;
}

.card-item__disc-rating>.card-item__disc-rating-elem {
    background-color: #dadada;
    height: 100%;
}

.card-item__disc-rating>.card-item__disc-rating-elem.blue {
    background: linear-gradient( 180deg, rgb(121 188 255) 0%, rgb(32 141 253) 100%);
}

.card-item__disc-rating>.card-item__disc-rating-elem.green {
    background: linear-gradient( 180deg, rgb(7 241 7) 0%, rgb(16 195 16) 100%);
}

.card-item__disc-rating>.card-item__disc-rating-elem.red {
    background: linear-gradient( 180deg, rgb(255 2 55) 0%, rgb(191 16 60) 100%);
}

.card-item__disc-rating>.card-item__disc-rating-elem.orange {
    background: linear-gradient( 180deg, rgb(255 203 58) 0%, rgb(230 116 8) 100%);
}

.card-item__disc-rating>.card-item__disc-rating-elem.purple {
    background: linear-gradient( 180deg, rgb(220 113 255) 0%, rgb(152 25 202) 100%);
}

.card-item__disc-img {
    height: 125px;
    width: 125px;
    border-radius: 1rem;
    margin: .5rem;
    transition: .25s all;
    box-shadow: 0 5px 7px 3px #0000000a;
    overflow: hidden;
}

.card-item__disc-img:not(.card-item__disc-img--exists) {
    background: linear-gradient( 112.03deg, #8adfff 0%, #92a9ff 100%);
}

.card-item__disc-img>.disc-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.card-item__title {
    display: flex;
    width: 100%;
}

.card-item__disc-fav {
    margin: 0 0 auto auto;
    padding: .5rem;
    height: 30px;
    width: 30px;
    background-color: transparent;
    border-radius: 50%;
    color: #e6e6e6;
    font-size: 1.25rem;
    border: none;
    transition: .25s all;
}

.card-item__disc-fav.active {
    color: #ffb328;
    /* background-color: #ffb3291a; */
}

.card-item__disc-fav.active:hover {
    color: #e6e6e6;
}

.card-item__disc-fav:not(.active):hover {
    color: orange;
}

.card-item__disc-info {
    color: #6b6b6b;
    font-weight: 500;
    max-height: 57px;
    text-overflow: ellipsis;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    display: -webkit-box;
}

.card-item__disc-info:hover {
    overflow-y: auto;
}

.card-item.card-page:hover .siluet-1 {
    transform: translateY(80px);
}

.card-item.card-page:hover .siluet-2 {
    transform: translateX(-250px);
}

.card-item.card-page:hover .card-item.disc .fon {
    opacity: 0;
}

.card-item.card-page:hover .card-item {
    box-shadow: 0 5px 15px #0000001c;
}

.card-item.card-page>.siluets {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: .75rem;
    overflow: hidden;
    pointer-events: none;
}

.card-title-item {
    color: whitesmoke;
    padding: 1rem 1rem 0 1rem;
    font-size: 1.5rem;
    margin-bottom: 0;
    height: max-content;
    font-weight: 900;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: .35s all;
}

.card-page.card-index .card-title-item {
    font-size: 1.75rem;
    padding: 0;
    margin-bottom: .5rem;
}

.border-badge {
    padding: .5rem .75rem;
    position: absolute;
    left: 1rem;
    top: -1.25rem;
    background-color: #f7f7f8;
    border-radius: 1rem;
    font-weight: 800;
    font-size: .85rem;
}

.box-highlight {
    color: #2b97bf;
    background: #f7f7f8;
    padding: .25rem .5rem;
    border-radius: .5rem;
}

.text-left-child>p {
    text-align: left;
}

.text-right-child>p {
    text-align: right;
}

.card-item.disc .card-title-item {
    font-weight: 700;
    font-size: 16px;
    padding: 0px;
    margin-top: .75rem;
    margin-right: 1rem;
    color: black;
}

.card-item.card-page .card-img {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 1rem;
    padding-bottom: 1rem;
    width: 90px;
    height: 100px;
}

.card-item.card-page .card-img>img {
    width: 64px;
}

.card-rasp-para b {
    font-weight: 800;
}

.card-rasp-para .name,
.card-rasp-para .time {
    color: #f6ff71;
}

.card-item.card-page .card-desc {
    color: white;
    padding: 1rem;
    font-size: 1.05rem;
    font-weight: 500;
}

.card-item.card-page .card-desc-text {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    height: 55px;
    overflow: hidden;
    transition: .35s all;
}

.card-item__disc-tags {
    display: flex;
    flex-wrap: wrap;
    margin-top: .5rem;
    gap: .5rem;
}

.card-item__disc-tag {
    padding: .25rem .75rem;
    font-size: 0.8rem;
    font-weight: 600;
    background-color: #caf1ff;
    color: #0c6c90;
    border-radius: 2rem;
}

.card-item__disc-tag>b,
.card-item__disc-tag>span {
    font-weight: 700;
}

.card-item__disc-tag.red {
    background-color: #ffe2e2;
    color: #f13535;
}

.card-item__disc-tag.green {
    background-color: #d3ffd3;
    color: green;
}

.card-item__disc-tag.purple {
    background-color: #ffd3ff;
    color: purple;
}

.card-item__disc-tag.orange {
    background-color: #ffe7bc;
    color: #b1770c;
}

.card-item__disc-tag.very-good {
    background-color: #b9ffbc;
    color: #189033;
}

.card-item__disc-tag.warning {
    background-color: #ffdfbe;
    color: #82141e;
}

.card-item__disc-tag.bad {
    background-color: #ffc5ca;
    color: #721c24;
}

.card-item__disc-tag.good {
    background-color: #e0fbe0;
    color: #1e8c1e;
}

.card-item__disc-tag.normal {
    background-color: #ffffc5;
    color: #906e0c;
}

.card-desk-highlight {
    font-weight: 700;
    background: #ffffff1c;
    padding: .15rem .5rem;
    border-radius: 1rem;
    min-width: 2rem;
    text-align: center;
    color: white;
    display: inline-block;
}

.card-desk-highlight.red {
    background: #cd000061;
}

.siluet-1 {
    /* Ellipse 4 */
    position: absolute;
    width: 100%;
    height: 171px;
    border-radius: 600px / 200px;
    margin-top: 100px;
    background: rgba(255, 255, 255, 0.04);
    transition: all 0.6s ease;
    pointer-events: none;
}

.siluet-2 {
    position: absolute;
    width: 335px;
    height: 259px;
    border-radius: 50%;
    margin: 64px 89px -115px -97px;
    background: rgba(255, 255, 255, 0.04);
    transition: all 0.6s ease;
    pointer-events: none;
}

.block {
    position: relative;
    width: 100%;
    background: white;
    border-radius: 1rem;
    box-shadow: 0 1px 4px #e3ebfc, 0 24px 48px #e6ebf566;
}

.block.block--btn {
    border: 2px solid white;
    cursor: pointer;
    transition: .35s all;
}

.block.block--btn:hover {
    border-color: #f1f1f1;
    background-color: #f1f1f1;
}

.block--loading {
    min-height: 128px;
    background-image: url(../images/loading-spinner.svg) !important;
    background-size: 48px !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

.block--loading>* {
    opacity: 0 !important;
    pointer-events: none !important;
}

.block .block-footer {
    padding: 1rem;
    border-top: 1px solid #f7f7f8;
    background-color: #fdfdfd;
    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
}

.block .block-footer:empty {
    display: none;
}

.block .block-title {
    width: 100%;
    padding: 1rem;
    background-color: #fdfdfd;
    font-weight: 600;
}

.block-title.block-title-secondary {
    background-color: #f1f1f1;
    color: #201e1e;
}

.block-title.block-title-primary {
    background-color: #dbf5ff;
    color: #0d779e;
}

.block-title.block-title-success {
    background-color: #e3ffe3;
    color: #045f04;
}

.block-title.block-title-danger {
    background-color: #ffe1e1;
    color: #690303;
}

.block-title.block-title-warning {
    background-color: #fff0d8;
    color: #7b4b01;
}

.block-title.block-title-info {
    background-color: #fcecff;
    color: #5a0069;
}

.block.block-warning {
    background-color: #ffc108;
    border-color: #ffc108 !important;
    color: #212529;
}

.block.block-primary {
    background-color: #2b97bf;
    border-color: #2b97bf !important;
    color: #ffffff;
}

.block.block-danger {
    background-color: #dd3545;
    border-color: #dd3545 !important;
    color: #ffffff;
}

.block.block-success {
    background-color: #43bd49;
    border-color: #43bd49 !important;
    color: #ffffff;
}

.block.block-info {
    background-color: #19a2b8;
    border-color: #19a2b8 !important;
    color: #ffffff;
}

.block-list>.block:not(:last-child) {
    margin-bottom: 1.5rem;
}

.block-body>.row {
    transition: .35s opacity;
}

.block-body.collapsing>.row {
    opacity: 0;
}

.empty-answer-message {
    text-align: center;
    padding: 1rem;
    font-size: x-large;
    background: #e8e8e8;
    border-radius: .35rem;
}

.block-head {
    padding: 1rem;
    color: #4f5152;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: .25s all;
}

.block-head>h5,
.block-head>.block-head-title {
    font-weight: 600;
    font-size: 1.25rem;
    font-style: normal;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin: 0;
    margin-right: 1rem;
}

.block-head>i,
.block-head>.block-head-icon {
    margin-left: auto;
    font-size: 20px;
    color: #2b97bf;
}

.block-body {
    border-top: 1px solid #e8e8e8;
    border-radius: 0 0 1rem 1rem;
}

.block.level_1 {
    border: none;
    border-left: 0;
    border-right: 0;
    box-shadow: none;
    border-radius: 0;
}

.block.level_1>.block-head {
    background: #f7f7f8;
    border-radius: .5rem;
    border: none;
}

.block.level_1:not(:last-child) {
    margin-bottom: .5rem;
}

.block.level_1>.block-body {
    margin: 1rem;
    margin-top: 0;
}

.block.level_1:last-child {
    border-bottom: 0;
}

.block.level_1>.block-head>i,
.block.level_1>.block-head>h5 {
    color: #2b97bf;
    font-weight: 700;
}

.w-max-content {
    width: max-content !important;
}

.h-max-content {
    height: max-content !important;
}

.user-select-none {
    user-select: none;
}

.pointer-events-none {
    pointer-events: none;
}

.card {
    box-shadow: none;
    border-radius: .35rem;
}

.card-book {
    border-radius: .75rem;
    border-color: #eaeaea;
    box-shadow: 0 3px 0 1px #0000000a;
}

.card-book .card-title {
    font-weight: 700;
    line-height: 1.5;
    font-size: 1.35rem;
    overflow: hidden;
}

details.custom-title>summary {
    display: contents;
}

details[open] .details-end {
    display: none;
}

.details-end.arrow {
    display: inline-block;
    color: #2b97bf;
    font-weight: 900;
}

.card-title.custom-title.collapsed.show .custom-title-arrow {
    transform: rotate( 180deg);
}

.card-book .card-link {
    padding: .15rem 0;
    border-radius: .35rem;
    background: transparent;
    transition: .35s all;
}

.card-book .card-link:hover {
    background: #50aacf3d;
}

.card-book .card-tag {
    border: 1px solid #f7f7f8;
    background-color: #f7f7f8;
    display: inline-block;
    padding: .25rem .75rem;
    border-radius: 1rem;
    font-weight: 800;
    font-size: .9rem;
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.card-book .card-title a {
    margin-top: .5rem;
    display: inline-block;
    font-weight: 400;
    font-size: smaller;
    color: #007bff;
    padding: .15rem 0;
    border-radius: .35rem;
    background: transparent;
    transition: .35s all;
}

.card-book .card-title a:hover {
    background: #50aacf3d;
}

.card-main-test .card-name-tag {
    background: #fe9664;
    border: 2px solid #fe9664;
    color: white;
}

.card-name-tag {
    display: inline-block;
    border: 2px solid white;
    font-size: 1.1rem;
    padding: .25rem .75rem;
    border-radius: 1rem .25rem;
    color: white;
    font-weight: bold;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.card-main-test .btn.btn-light {
    background: white;
    border: 2px solid white;
    color: #4f5152;
    font-weight: 600;
}

.breadcrumb>li {
    margin: auto 0;
}

.breadcrumb>li:last-child {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.breadcrumbs__search {
    padding: .35rem .75rem;
    background-color: #f7f7f8;
    border: 1px solid #f7f7f8;
    border-radius: 1rem;
    margin-left: auto;
    transition: .25s all;
    width: 35%;
}

.mobile-search {
    background: #f7f7f8;
    border: 1px solid #f7f7f8;
    padding: .5rem 1rem;
    border-radius: 1.5rem;
    transition: .25s all;
    max-width: 516px;
    margin: auto;
    z-index: 1001;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.mobile-search>input {
    background: none;
    outline: none;
    border: none;
    font-weight: 600;
    color: #5a5959;
    flex-grow: 1;
}

.mobile-search>i {
    color: #a0a0a0;
}

.breadcrumbs__search:focus-within,
.mobile-search:focus-within {
    box-shadow: 0 0 0 3px #47b6e24f;
    border-color: #62d5ff;
    background: white;
}

.breadcrumbs__search>i {
    margin-right: .5rem;
    font-size: smaller;
    margin-left: .25rem;
    color: #717171;
}

.breadcrumbs__search>input {
    background: none;
    border: none;
    font-size: smaller;
    outline: none;
    font-weight: 600;
}

.slim-scroll::-webkit-scrollbar {
    width: 4px;
    height: 6px;
}

.slim-scroll::-webkit-scrollbar-track {
    background: transparent;
}

.slim-scroll::-webkit-scrollbar-thumb {
    background: #eaeaea;
    border-radius: 5px;
}

.tab_pagination {
    display: none;
}

.tab_pagination.active {
    display: block;
}

.paginationjs>div {
    margin-bottom: 15px;
}

.breadcrumb__under-block {
    background: #ffffff;
    border-radius: 1rem;
}

ul.level0 {
    border-left: 1px dashed #a7a7a7 !important;
    padding: 0 !important;
    margin-left: 37px !important;
}

.ztree li a.curSelectedNode {
    font-weight: 600 !important;
}

.level0:not(:last-child),
.level1:not(:last-child) {
    margin-bottom: .5rem !important;
}

.level0>a.level0 {
    margin-left: .5rem !important;
}

.ztree li span {
    margin-left: .3rem !important;
}

.user-header-dropdown.dropdown-toggle::after {
    content: none;
}

.user-header-dropdown-menu:not(.show) {
    transform: translate(0, -2rem);
    opacity: 0;
    pointer-events: none;
}

.user-header-dropdown-menu {
    display: block;
    margin: 2rem 1rem;
    min-width: 100%;
    border: 1px solid #ffffff;
    box-shadow: 0 15px 10px 10px #00000014;
    border-radius: .75rem;
    cursor: default;
}

.user-header-dropdown-menu>.dropdown-item {
    border-radius: .5rem;
    padding: .75rem 1rem;
    height: auto;
    width: auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-weight: 700;
    transition: .35s all;
    margin: 0 .5rem;
}

.user-header-dropdown-menu>.dropdown-item>.dropdown-item-icon {
    height: 100%;
    aspect-ratio: 1/1;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.35rem;
    margin-right: .75rem;
}

.user-header-dropdown-menu>.dropdown-item:hover,
.user-header-dropdown-menu>.dropdown-item:focus {
    background-color: #f7f7f8 !important;
}

.user-header-dropdown-menu>.dropdown-item:not(:last-child) {
    margin-bottom: .5rem;
}

.user-header-dropdown-menu>.dropdown-item.logout {
    color: #721c24;
}

.user-header-dropdown-menu>.dropdown-item.logout:hover,
.user-header-dropdown-menu>.dropdown-item.logout:focus {
    background-color: #ffecee !important;
}

.current-child {
    padding: .15rem .5rem;
    border-radius: 1rem;
    font-size: 0.8rem;
    height: auto;
    width: auto;
    background-color: #cfe0df;
}

.site-error-icon {
    width: 100%;
    min-height: 128px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 8rem;
    margin-bottom: 1rem;
    color: #dadada;
}

.site-error-icon>i {
    animation: animation-site-error-icon 4s ease-in-out infinite;
}

.left-menu .count-badge,
.footer .count-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    font-weight: 700;
    height: 16px;
    font-size: .8rem;
    padding: .15rem .5rem;
    background-color: #dc3545;
    border-radius: 1rem;
    color: white;
    right: 0;
    top: 0;
}

.left-menu .count-badge:empty,
.footer .count-badge:empty {
    display: none;
}


/* спинер для изображений */

.spinningCircle {
    height: 40px;
    width: 40px;
    border-radius: 50%;
    border: 4px solid rgba(255, 255, 255, 0);
    border-top-color: 4px solid #7fc4d1;
    border-right-color: 4px solid #7fc4d1;
    -webkit-animation: single2 4s infinite linear;
    animation: single2 4s infinite linear;
}

/* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */

.select2-custom-tags {
    padding: .5rem 1rem;
    background-color: #f7f7f8;
    border-radius: .5rem;
    color: #232526;
    font-weight: 800;
    border: 1px solid #f7f7f8;
}

.select2-user {
    display: flex;
    gap: 1rem;
    align-items: center;
    border-radius: .5rem;
}

.select2-user>img {
    display: block;
    background-color: white;
    height: 48px;
    width: 48px;
    border-radius: 50%;
    overflow: hidden;
    object-fit: cover;
}

.select2-user>img.loading {
    background-image: url(../images/loading-spinner.svg) !important;
    background-size: 50% !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    pointer-events: none !important;
}


/* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */

.app-test {
    display: flex;
    width: 100vw;
    min-height: 100vh;
    flex-wrap: nowrap;
    overflow: auto;
    align-items: center;
}

.app-test .left-menu {
    background: #fff;
    flex: none;
    width: 70px;
    flex-basis: 70px;
    align-self: stretch;
    height: 100vh;
    text-align: center;
    font-size: 16px;
    z-index: 1002;
    user-select: none;
    border-radius: 0 .75rem .75rem 0;
    transition: .35s width;
}

.app-test .main {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    gap: 1rem;
    padding: 0 1rem 0 1rem;
    height: 100vh;
    overflow: auto;
}

.app-test .header {
    background: #fff;
    flex: none;
    border-color: #dbdbdb;
    border-radius: 0 0 1rem 1rem;
    display: flex;
    justify-content: space-between;
    height: 60px;
    width: 100%;
    align-items: center;
    z-index: 1001;
    transition: .35s box-shadow;
}

.app-test .content {
    overflow: auto;
    flex-grow: 1;
}

.app-test .footer {
    width: 100%;
    flex: none;
    height: 50px;
    background-color: #ffffff;
    padding: 0;
    border-top: 1px solid #f3f3f3;
    transition: .35s all;
}

@-webkit-keyframes single2 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        border-top-color: #7fc4d1;
        border-right-color: #7fc4d1;
    }
    50% {
        border-top-color: #1f4f58;
        border-right-color: #1f4f58;
    }
    100% {
        -webkit-transform: rotate(720deg);
        transform: rotate(720deg);
        border-top-color: #7fc4d1;
        border-right-color: #7fc4d1;
    }
}

@keyframes single2 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        border-top-color: #7fc4d1;
        border-right-color: #7fc4d1;
    }
    50% {
        border-top-color: #1f4f58;
        border-right-color: #1f4f58;
    }
    100% {
        -webkit-transform: rotate(720deg);
        transform: rotate(720deg);
        border-top-color: #7fc4d1;
        border-right-color: #7fc4d1;
    }
}

@keyframes animation-site-error-icon {
    5%,
    15%,
    25%,
    35%,
    45% {
        transform: rotate(17deg);
    }
    10%,
    20%,
    30%,
    40% {
        transform: rotate(-17deg);
    }
    50% {
        transform: rotate(0);
    }
}

@media (max-width: 476px) {
    .card-item__disc-img {
        height: 80px;
        width: 80px;
        margin-top: 3rem;
    }
    .card-item.disc {
        grid-template-columns: calc(80px + 1rem) calc(100% - calc(80px + 1rem));
        margin-bottom: .5rem;
    }
    .card-item.disc .card-title-item {
        margin-top: auto;
        font-size: 15px;
        margin-right: 0;
        width: calc(100% - 4rem);
        position: absolute;
        left: .5rem;
    }
    .card-item__disc-tag {
        font-size: .8rem;
        padding: .25rem .5rem;
    }
    .card-div {
        padding-bottom: 0px !important;
    }
    .site-cards .card-div:hover {
        transform: scale(1);
    }
    .block.level_1>.block-head {
        border-radius: .25rem;
    }
    .card-page.card-index:hover {
        transform: none;
    }
}

@media (max-width: 768px) {
    .content>.block,
    .block.block--adaptive,
    .block-list.block-list--adaptive>.block {
        border: 1px solid #f3f3f3;
        border-left: none;
        border-right: none;
        border-radius: 0;
    }
    .content>.block>.block-title:first-child,
    .block.block--adaptive>.block-title:first-child,
    .block-list.block-list--adaptive>.block>.block-title:first-child {
        border-radius: 0;
    }
    .block-list>.block:not(:last-child) {
        margin-bottom: 0;
        border-bottom: none;
    }
    .card-item__disc-rating {
        height: .75rem;
    }
    .left-menu {
        display: none;
    }
}

@media (min-width: 768px) {
    .footer {
        display: none !important;
    }
    .back_menu {
        display: none;
    }
    .block-body.collapse {
        display: block !important;
    }
    .block-head {
        border-bottom: 0;
        cursor: auto;
        pointer-events: none;
    }
    .block-body {
        border-top: 0;
    }
    .block>.block-title:first-child {
        border-radius: 1rem 1rem 0 0;
    }
    .card-item.disc {
        padding: .75rem;
    }
    .card-page:hover .card-page-drag {
        opacity: .5;
    }
}
