:root {
    --text-font: 'Inter';
    --title-font: 'Montserrat';
}

::selection {
    background: #8c00ff5e;
    color: #000;
}
::-moz-selection {
    background: #8c00ff5e;
    color: #000;
}


/* основные */
* { box-sizing: border-box; font-family: var(--text-font), sans-serif; }
*:focus { outline-color: #fa0; }
body { background: url(/i/bg/bg7l.png) #f8f8f8; margin: 0; padding: 0; overflow: auto; font-size: 16px; position: absolute; width: 100%; }
a, a:focus { transition: all 0.1s ease-out; text-decoration: none; color: #0180ca; border-bottom: 1px solid #0180ca55; }
a:hover { color: #27b0ff; border-bottom-color: #27b0ff; text-decoration: none; }
.noline a, a.noline { border-bottom: none!important; }
a.selected { font-weight: bold; font-family: var(--title-font); color: #000; border-bottom-color: #000; }
body.page-loading a[href^="/"] { cursor: wait!important; }
.page-load-indicator { display: none; position: fixed; top: 0; left: 0; right: 0; height: 16px; background: url(/i/ajax-bg-50.gif) 0 / 50px #790a8577; opacity: .2; z-index: 20000; }
body.page-loading .page-load-indicator { display: block; }
h1, h2, h3, h1 *, h2 *, h3 * { font-family: var(--title-font); }
h1 { font-size: 28px; margin: 0; font-weight: bold; line-height: 130%; text-align: center; }
h2 { font-size: 24px; margin: 40px 0 10px; font-weight: bold; line-height: 130%; text-align: center; }
h3 { font-size: 20px; margin: 40px 0 10px; font-weight: bold; line-height: 130%; text-align: center; }
table { border-collapse: collapse; }
td { vertical-align: top; padding: 0; }
p, li { margin-top: 1em; line-height: 170%; }
p:first-child, li:first-child { margin-top: 0; }
.list-loading { text-align: center; font-size: 30px; color: #ccc; padding: 100px 0; background: url(/i/ajax.svg) no-repeat 50% 50% / 100px; display: none; }
.list-loading * { vertical-align: middle; margin: 0 10px; }
.list-empty { background: #eee; padding: 100px 10px; font-size: 20px; color: #bbb; text-align: center; margin-top: 20px; border-radius: 20px; }

/* базовая разметка страницы */
.general-layout-div { display: flex; min-height: 100vh; }
.leftmenu { width: 320px; min-width: 320px; color: #666; font-size: 13px; z-index: 1; }
.menu-footer a { color: #444; border-bottom: 1px solid #4443; }
.menu-links { font-size: 16px; margin-top: 15px; }
.menu-links a:not(.button) { display: block; padding: 15px 30px 15px 55px; border-bottom: none; color: #444; margin: 1px 10px 0; background: url(/i/chat.png) no-repeat 20px 12px / 24px; border-radius: 10px; user-select: none; }
.menu-links a:hover { background-color: #e6f5ff; }
.menu-links a.active { background-color: #eee; font-weight: bold; font-family: var(--title-font); box-shadow: 1px 1px 2px #0001 inset; padding: 16px 30px 14px 56px; background-position: 21px 13px; }
.menu-links .submenu { margin-bottom: 20px; display: none; }
.menu-links .submenu a { background-image: none; padding: 10px 15px; margin: 1px 20px 0 50px; font-size: 14px; }
.cabinet-content { padding: 40px 40px 280px; width: calc( 100% - 300px ); display: flex; flex-direction: column; justify-content: space-between; min-height: 100vh; }
.cabinet-content-full { padding: 40px 40px 0; width: 100%; display: flex; flex-direction: column; justify-content: space-between; min-height: 100vh; }
.float-menu-bg { background: linear-gradient(to top, #340832dd, #147a9999); position: fixed; bottom: 0; left: 10px; width: 300px; height: 140px; z-index: 3; border-radius: 20px 20px 0 0; box-shadow: 0 0 0 2px #fff, 0 0 10px 0 #3b1e4c66; user-select: none; backdrop-filter: blur(5px); }
.mobile-menu-items { margin: auto; max-width: 600px; display: none; justify-content: space-between; text-align: center; }
.mobile-menu-items > div { border-left: 1px solid #0002; font-size: 12px; color: #000; width: 25%; cursor: pointer; padding: 10px 2px 9px; position: relative; }
.mobile-menu-items > div:hover { background: #00000008; }
.mobile-menu-items > div:first-child {  }
.mobile-menu-items > div:last-child { border-right: 1px solid #0002; }
/*.bottom-menu-bg { display: none; background: linear-gradient(to top, #111d, #1119); position: fixed; bottom: 0; left: 0; right: 0; height: 60px; z-index: 1; }*/
.bottom-menu-item, .bottom-menu-item:focus { display: none; position: fixed; bottom: 0; background: linear-gradient(to top, #111 24px, #fff 24px, #fff 80% , #f8f8f8); width: 75px; height: 75px; border-radius: 10px 10px 0 0; text-align: center; padding: 7px 5px 0; box-shadow: 0 0 10px 1px #0006; border: none; z-index: 2; }
.bottom-menu-item .text { background: #0000; color: #fff; font-size: 12px; position: absolute; bottom: 0px; left: -8px; right: -8px; line-height: 14px; border-radius: 5px 5px 0 0; padding: 5px 2px; }
.desktop-bottom-item, .desktop-bottom-item:focus { position: fixed; z-index: 10; bottom: 15px; background: #fff; width: 120px; height: 110px; border-radius: 10px; text-align: center; padding: 10px 5px 0; box-shadow: 0 0 0 2px #000, 0 0 0 5px #0001; border: none; user-select: none; }
.desktop-bottom-item .text { background: #040622bb; color: #fff; font-size: 16px; position: absolute; bottom: 0; left: 0; right: 0; line-height: 20px; border-radius: 0 0 5px 5px; padding: 5px 2px; letter-spacing: .5px; transition: 300ms; }
a.desktop-bottom-item:hover { box-shadow: 0 0 0 2px #0c0f42; }
a.desktop-bottom-item:hover .text { background: #161d83bb; }
.mobile-menu-items > div .new, .desktop-bottom-item .new { width: 20px; height: 20px; background: #f22; position: absolute; top: 5px; right: 5px; border-radius: 50%; box-shadow: 0 0 0 2px #fff, 0 1px 3px 3px #930; color: #fff; font-size: 12px; font-weight: bold; font-family: var(--title-font); padding-top: 2px; }
.mobile-menu, .public-mobile-menu { display: none; z-index: 1000; background: #f8f8f8; height: 60px; position: fixed; bottom: 0; left: 0; right: 0; box-shadow: 0 3px 3px 3px #0006; }
.mobile-menu-bg { background: #fffd; position: fixed; top: 0; left: 0; right: 0; bottom: 0; cursor: pointer; z-index: 5; backdrop-filter: blur(3px); }
.mobile-menu-panel { background: #fff; color: #999; font-size: 13px; position: fixed; top: 0; right: 0; bottom: 0; width: 320px; overflow: auto; box-shadow: 3px 0 3px 3px #0006; z-index:6; }
.nav-back { margin-bottom: 10px; text-align: center; color: #ddd; }
.tab-menu {
    margin: auto;
    white-space: nowrap;
    width: fit-content;
    max-width: 100%;
    display: flex;
    overflow: hidden;
    flex-wrap: wrap;
    justify-content: center;
    user-select: none;
    font-size: .9em;
}
.tab-menu a, .tab-menu div {
    display: inline-block;
    padding: .8em 1em;
    border-radius: .6em;
    border: none;
    color: #000;
    margin: .2em;
    text-align: center;
    cursor: pointer;
    background: #ddd;
}
.tab-menu a:hover, .tab-menu div:hover { background: #ccc; }
.tab-menu a.active, .tab-menu div.active {
    background: linear-gradient(0, #a930cf, #56076f) !important;
    color: #fff!important;
}
.tab-menu *.action {
    background: none;
    color: #09c;
}
.tab-menu *.red {
    background: transparent;
    color: #600!important;
}
.tab-menu *.action:hover, .tab-menu *.red:hover {
    background: #0180ca2e!important;
    color: #04669f!important;
}
.tab-menu *.action.active {
    background: linear-gradient(0, #666, #333)!important;
    color: #fff!important;
}
.tab-menu *.disabled, .tab-menu *.disabled:hover { opacity: .3; cursor: not-allowed; }
.indicator-inline { background: #e00; padding: .15em .3em; border-radius: .3em; margin-left: .3em; box-shadow: #0002 0 0 0 1px inset; color: #fff; border: none; }
.popup, .popup-store { display: none; text-align: center; max-width: 100%; }
.popup-area { z-index: 10000; display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; overflow-y: auto; cursor: pointer; background: #18002fbf; padding: 10px; }
.popup-window { background: #fff; padding: 30px; margin: auto; cursor: auto; border-radius: 10px; box-shadow: 0 0 0 2px #000; max-width: 100%; min-width: 300px; }
/*.popup-window { box-shadow: 2px 2px 10px #0003; }*/
.popup-window.popup-wide { width: 980px; }
.popup-area#alert { z-index: 10001; text-align: center; }
.popup-close { right: 0; top: 0; height: 59px; width: 59px; position: absolute; border-left: 1px solid #ddd; cursor: pointer; background: url(/i/icons/outline/close96.png) no-repeat 50% / 24px; border-top-right-radius: 10px; }
.popup-close:hover { background-color: #f8f8f8; }
.popup-title.pinned .popup-close { border-radius: 0; }
.popup-header { left: 0; top: 0; height: 60px; width: calc( 100% - 70px ); overflow: hidden; white-space: nowrap; position: absolute; text-align: left; }
/*.popup-header-left { border-top-left-radius: 10px; }*/
/*.popup-title.pinned .popup-header-left { border-top-left-radius: 0; }*/
#alert-html { line-height: 170%; max-width: 800px; word-wrap: break-word; }
.footer { margin: 100px -40px 0; padding: 80px 20px 200px; position: relative; right: 0; bottom: 0; left: 0; text-align: center; background: linear-gradient(0, #0000, #0001); }
/* background: url(/i/bg3.jpg) 50% #333; color: #ddd; */
/* .footer a, .footer a:focus { color: #fbb9ff; border-bottom-color: #804b82; }
.footer a:hover { color: #fff; border-bottom-color: #fff; }
.footer .footer-links { display: flex; justify-content: center; flex-wrap: wrap; margin: 40px -20px 0; font-size: 14px; }
.footer .footer-links > * { margin: 10px 15px; white-space: nowrap; } */
.asmenu { text-align: center; background: #ffb505; padding: 20px; margin: -40px -40px 40px; }
.topmenu { background: #f8f8f8; margin: -40px -40px 40px; line-height: 60px; font-size: 15px; padding: 0 20px; }
.topmenu .cont { display: flex; justify-content: space-between; }
/*.topmenu a, .topmenu a:focus { color: #6ac8ff; border-bottom-color: #6ac8ff55; }*/
/*.topmenu a:hover { color: #9ddafd; border-bottom-color: #9ddafd; }*/
.fast-link-bar { display: flex; user-select: none; justify-content: center; }
.fast-link-bar span { padding: .2em .3em; border: 1px solid #ace; border-radius: 3px; background: #def; min-width: 28px; display: inline-block; text-align: center; color: #346; cursor: pointer; margin: 0 .1em; white-space: nowrap; }
.popup-title { min-height: 3.3em; font-weight: bold; font-family: var(--title-font); background: linear-gradient(0, #713a85, #d642e3); color: #fff; padding: 1em 10px; margin: -30px -30px 20px; border-radius: 8px 8px 0 0; border-bottom: 1px solid #ddd; position: relative; user-select: none; }
.popup-title.pinned { position: fixed; z-index: 3; top: 30px; border-radius: 0; }
.popup-footer { background: linear-gradient(to top, #fff, #eee); padding: 1em 10px!important; margin: 30px -30px -30px; border-radius: 0 0 8px 8px; border-top: 1px solid #ddd; position: relative; }
.popup-footer.pinned { position: fixed; z-index: 3; bottom: 30px; border-radius: 0; }
.popup-bg .popup-title, .popup-bg .popup-footer { opacity: .85; }
.popup-select-items, .nav-back2 { margin: 20px auto 0; max-width: 2000px; text-align: center; }
.popup-select-items .item, .nav-back2 a { display: block; cursor: pointer; padding: 15px; border-radius: 5px; margin: 1px -20px; line-height: 130%; color: #0180ca; border: none; user-select: none; position: relative; z-index: 10; }
.popup-select-items .item .label { background: #9993; color: #666; padding: 0 3px; font-size: 12px; border-radius: 3px; min-width: 19px; display: inline-block; vertical-align: 2px; line-height: 18px; }
.popup-select-items.items-inline { display: flex; flex-wrap: wrap; justify-content: center; max-width: 1280px; }
.popup-select-items.items-inline .item { margin: 1px; }
.links-list { margin-top: 20px; text-align: center; }
.links-list a { padding: 15px; border-radius: 5px; margin-top: 1px; line-height: 130%; border: none; display: block; }
.popup-select-items .item:hover, .links-list a:hover, .nav-back2 a:hover { background: #e6f5ff; color: #0180ca; }
.popup-select-items .item.active { background: #eee; box-shadow: 1px 1px 2px #0001 inset; color: #000; }
.popup-select-items:not(.items-inline) .item.active { padding: 16px 9px 14px 11px; }
.popup-select-items .disabled { color: #000!important; background: transparent!important; cursor: default; opacity: 0.2; }
.nav-back2 { margin: -20px auto 0; text-align: center; }
.nav-back2 a { display: inline-block; margin: 0 -10px; padding: 10px 15px; }
.values-list { display: flex; flex-wrap: wrap; justify-content: center; text-align: center; padding-bottom_: 20px; }
.values-list > *, .values-list > *:focus { margin: 15px 20px 0; border: none; }
.values-list > * > div:first-child { color: #999; font-size: .75em; }
.values-list > * > div:last-child { line-height: 130%; margin-top: .3em; }
.values-grid  { width: 400px; max-width: 100%; margin-left: auto; margin-right: auto; font-size: 14px; }
.values-grid > div { display: flex; justify-content: space-between; border-bottom: 1px dotted #ccc; padding: 15px 0 3px; }
.values-grid > div > div:first-child { color: #999; }
.values-grid > div > div:last-child { text-align: right; }
.icon-menu-link { position: relative; margin: 0 5px; background: linear-gradient( to top , #eee, #fff ) #f8f8f8; width: 50px; height: 50px; border-radius: 10px; display: block; border: 1px solid #ddd; }
a.icon-menu-link:hover { background: #fff; border: 1px solid #ccc; }
.icon-menu-link .count { position: absolute; top: -5px; right: -5px; background: #777; color: #fff; font-size: 12px; padding: 2px 5px; border-radius: 5px; min-width: 20px; text-align: center; }
a.icon-menu-link:hover .count { background: #666; color: #fff; }
.time-update { white-space: nowrap; }
.help { background: #fe9; padding: 1px 3px; border-radius: 3px; cursor: pointer; box-shadow: 0 0 0 1px #9847; }
#desktop-scroll2top { transition: opacity 300ms; background: url(/i/icons/up-arrow.png) 50% / 128px no-repeat, linear-gradient(to left, #ccc, #fff); opacity: 0; position: fixed; left: 0; top: 0; bottom: 160px; width: 320px; z-index: 2; cursor: pointer; border-radius: 0 20px 20px 0; display: none; transition: 50ms; }
#desktop-scroll2top:hover { opacity: 0.2!important; }
.nexus-header { display: flex; justify-content: center; }
.nexus-header img { width: 48px; height: 48px; border-radius: 5px; margin-right: 10px; }
.nexus-header .title { font-size: 20px; margin-top: 1px; text-align: left; }
.nexus-header .info { margin-top: 0; font-size: 12px; font-weight: normal; color: #666; text-align: left; }
/*.nav-panel { background: linear-gradient(to top, #340832dd, #147a9999); position: fixed; bottom: 0; width: 560px; left: calc( 50% - 280px ); height: 140px; z-index: 3; border-radius: 20px 20px 0 0; user-select: none; backdrop-filter: blur(5px); box-shadow: 0 5px 20px #0006; }*/
.nav-panel { background: #ccc9; position: fixed; bottom: -1px; width: 560px; left: calc( 50% - 280px ); height: 140px; z-index: 3; border-radius: 20px 20px 0 0; user-select: none; backdrop-filter: blur(5px); box-shadow: 0 0 0 1px #bbb9 inset; }
.nav-item { position: fixed; z-index: 10; bottom: 15px; background: #fff; width: 120px; height: 110px; border-radius: 10px; text-align: center; padding: 10px 5px 0; user-select: none; border: none!important; overflow: hidden; box-shadow: 0 0 0 1px #0003 inset; }
.nav-item:hover { box-shadow: 0 0 0 1px #5c009366 inset }
.nav-item img { width: 64px; border-radius: 5px; }
.nav-item .text { background: #040622bb; color: #fff; font-size: 16px; position: absolute; bottom: 0; left: 0; right: 0; line-height: 20px; padding: 2px 2px 5px; letter-spacing: .5px; }
.nav-item:hover .text { background: #5c0093bb; }
.nav-item .new { width: 20px; height: 20px; background: #f22; position: absolute; top: 5px; right: 5px; border-radius: 50%; box-shadow: 0 0 0 2px #fff, 0 1px 3px 3px #930; color: #fff; font-size: 12px; font-weight: bold; font-family: var(--title-font); padding-top: 2px; }
.nav-item .new { width: 26px; height: 26px; background: linear-gradient(300deg, #8d0000, #f22); position: absolute; top: 0; right: 0; border-radius: 0 9px 0 5px; color: #fff; font-size: 13px; font-weight: bold; font-family: var(--title-font); padding-top: 3px; border: 1px solid #8d0000; box-shadow: none; }
.nav-item-1 { left: calc( 50% - 264px ); }
.nav-item-2 { left: calc( 50% - 128px ); }
.nav-item-3 { left: calc( 50% + 8px ); }
.nav-item-4 { left: calc( 50% + 144px ); }
.float-menu-gotop { width: 80px; height: 80px; background: url(/i/icons/up-arrow.png) 50% 12px / 40px no-repeat #fff; border-radius: 10px; position: fixed; bottom: 7px; left: calc( 50% + 290px ); z-index: 10; cursor: pointer; display: none; font-size: 12px; text-align: center; padding-top: 56px; user-select: none; box-shadow: 0 2px 5px #6a517557, 0 0 0 1px #0001; }
.float-menu-gotop:hover { background-color: #f4e3ff; color: #000; box-shadow: 0 5px 10px #0004, 0 0 0 1px #ab29ff4d; }
.float-menu-goroot, .float-menu-goroot:focus { width: 80px; height: 80px; background: url(/i/logo/psiona-black.png) 50% 12px / 40px no-repeat #fff; border-radius: 10px; position: fixed; bottom: 7px; left: calc( 50% - 370px ); z-index: 10; cursor: pointer; display: none; font-size: 12px; text-align: center; padding-top: 56px; user-select: none; display: block; color: #000; border: none; box-shadow: 0 5px 30px #0006, 0 0 0 1px #0002; }
.float-menu-goroot:hover { background-color: #f4e3ff; color: #000; box-shadow: 0 5px 30px #0006, 0 0 0 1px #ab29ff4d; }
.float-menu-server, .float-menu-server:focus { width: 80px; height: 80px; background: url(/i/icons/hubs1.png) 50% 12px / 40px no-repeat #eee; border-radius: 10px; position: fixed; bottom: 7px; left: calc( 50% - 370px ); z-index: 10; cursor: pointer; display: none; border: none!important; overflow: hidden; font-size: 12px; text-align: center; padding-top: 56px; color: #000; user-select: none; }
.float-menu-server:hover { color: #000; background-color: #fff; }
.float-menu-server.nexus-menu { background: url(/i/logo/psiona512.png) 50% / 54px no-repeat #eee; display: block; }
.float-menu-server.nexus-menu:hover {  }
.float-menu-server .text { background: #0009; color: #fff; padding: 4px 1px; text-align: center; position: absolute; bottom: 0; width: 100%; }
.float-menu-server:hover .text { background: #5c0093bb; }
.split-items { line-height: 170%; }
.split-items .split { margin-right: 10px; }


.mainmenu-container {
    position: fixed;
    bottom: 0;
    left: calc( 50% - 280px );
    width: 560px;
    height: 9em;
    z-index: 1010;
    background: #bfb2c37d;
    border-radius: 1em 1em 0 0;
    backdrop-filter: blur(5px);
    box-shadow: 0 0 0 1px #77667d7a;
    font-size: .9em;
    display: flex;
    justify-content: center;
    /* transform: translateZ(0) translateY(.3em);
    backface-visibility: hidden;
    will-change: transform;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); */
}
.mainmenu-container:hover {
    /* transform: translateY(0) scale(1.01); */
    /* backdrop-filter: blur(10px); */
    /* background: #5524657d; */
}
.mainmenu-overlay {
    background: #0309651f;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1001;
    pointer-events: none;
    /* backdrop-filter: blur(1px); */
    /* transition: all 0.5s ease; */
    /* opacity: 0; */

    /* opacity: 1; */
}
/* .mainmenu-container:hover + .mainmenu-overlay {
    visibility: visible;
    opacity: 1;
}  */
.mainmenu-container-inner {
    width: 560px;
    max-width: 100vw;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .8em 0 .8em .8em;
    user-select: none;
}
.mainmenu-slot {
    width: calc(25% - .6em);
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-right: .8em;
    flex-wrap: wrap;
}
.mainmenu-button, .mainmenu-button:focus {
    color: #000;
    text-decoration: none;
    border: none!important;
    background: #fff;
    border-radius: .5em;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    overflow: hidden;
    position: relative;
    /* transform: translateZ(0) translateY(0) scale(1);
    backface-visibility: hidden;
    will-change: transform;
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); */
}
.mainmenu-button:hover {
    box-shadow: 0 2px 1em #57006d2b, 0 0 0 .1em #72009912 !important;
    color: #000;
    /* transform: translateY(-.05em) scale(1.03); */
    z-index: 20;
}
.mainmenu-button-nexus, .mainmenu-button-nexus:focus {
    width: 2.5em;
    height: 2.5em;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 0 1px #0002;
}
.mainmenu-button .new {
    position: absolute;
    top: 0;
    right: 0;
    min-width: 2em;
    height: 1.4em;
    background: linear-gradient(191deg, #9f0000, #ff0000);
    border-radius: 0 .5em;
    text-align: center;
    line-height: 1.4em;
    color: #fff;
    box-shadow: 0 0 0 1px #870c0c99;
    padding: 0 .3em;
}

.sidemenu {
    position: fixed;
    right: .5em;
    top: calc( 50% - 5em );
    width: 3em;
    background: #ccc6;
    backdrop-filter: blur(3px);
    z-index: 1000;
    text-align: center;
    border-radius: .5em;
    padding: .5em 0;
}
.sidemenu > *, .sidemenu *:focus {
    background: url(/i/icons/outline/task2.png) no-repeat center / 1.5em;
    height: 3em;
    cursor: pointer;
    display: block;
    border: none!important;
    position: relative;
}
.sidemenu > *:hover {
    background-color: #0001;
}
.sidemenu .new {
    letter-spacing: -0.03em;
    position: absolute;
    top: .4em;
    right: .4em;
    background: #f00;
    border-radius: .3em;
    padding: .1em .3em;
    font-size: .7em;
    color: #fff;
    box-shadow: 0 0 0 1px #0003 inset, 0 1px 1px #0006;
    min-width: 1.5em;
    text-align: center;
    user-select: none;
}

/* Главный экран */
.welcome-div { filter: contrast(0.8); border-radius: 1em; padding: 2em; text-align: center; margin: 1em; width: 100%; max-width: 500px; display: flex; flex-direction: column; justify-content: center !important; transition: 500ms; color: #fff; box-shadow: 0 0 0 2px #0004 inset, 0 10px 10px #0003, 0 0 0 0 #0008; }
.welcome-div:hover { filter: contrast(1.3); box-shadow: 0 0 0 4px #0004 inset, 0 10px 10px #0003, 0 0 0 0px #0001; }
/*.agregators-list .flex-item-link { border-radius: 40px 10px; width: 200px; }*/
/*.agregators-list .flex-item-link .cover { border-radius: 40px 10px; aspect-ratio: auto; }*/
/*.agregators-list .title { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(to top, #6000a98a, #5e326982); color: #fff; padding: .8em .8em; text-align: left; font-size: 1.2em; border-radius: 0 0 40px 10px; text-shadow: 0 0.1em 0.1em #0006; text-transform: uppercase; letter-spacing: .04em; font-style: italic; box-shadow: 0 0 0 1px #fff3; backdrop-filter: blur(1px); }*/
/*.agregators-list .domain { position: absolute; top: 0; right: 0; background: #5d5d5d52; color: #6adbff; padding: .7em 1em; font-family: var(--title-font); font-weight: bold; font-size: 1.2em; border-radius: 0 10px; box-shadow: 0 0 0 1px #fff4; backdrop-filter: blur(5px); letter-spacing: .03em; }*/
.top-menu a { margin: 1em .5em; width: 7em; }
.top-menu img { width: 3.5em; opacity: .5; }
.top-menu .black { color: #888!important; line-height: 130%; margin-top: .2em; }
.top-menu .link { margin-top: -.2em; letter-spacing: .05em; }
.top-menu a:hover img { opacity: 1; }
.top-menu a:hover .black { color: #000!important; }

/* хабы */
.hub-top { display: flex; justify-content: center; max-width: 1000px; margin: auto; }
.hub-top .hub-logo-div { margin: 3px 24px 0 0; width: 132px; background: url(/i/icons/outline/hub-gray.png?1) 50% / 64px no-repeat #ddd; border-radius: 10px; }
.hub-top .hub-logo-div img { width: 132px; border-radius: 10px; }
.hub-top h1 { font-size: 24px; text-align: left; line-height: 110%; }
.hub-top h2 { font-size: 16px; margin-top: 0; display: inline; font-weight: normal; font-family: var(--text-font); }

/*.hub-header { margin: 0 -10px 140px; }*/
/*.hub-cover { margin: auto; max-width: 1200px; background: #eee; border-radius: 10px; position: relative; z-index: 1; height: 300px; box-shadow: 0 0 0 1px #0002 inset; }*/
/*.hub-cover .avatar { position: absolute; left: 20px; bottom: -100px; width: 200px; height: 200px; border-radius: 10px; background: #ddd; box-shadow: 0 0 0 1px #0002 inset, 0 0 0 2px #fff; }*/
/*.hub-cover .menu { position: absolute; left: 240px; top: calc( 100% + 10px ); }*/
/*.hub-cover h1 { font-size: 24px; text-align: left; white-space: nowrap; overflow: hidden; }*/
/*.hub-cover .prefix { bottom: 0px; left: 230px; background: #fff; border-radius: 5px 5px 0 0; padding: 8px 10px 0; line-height: 10px; font-size: 14px; position: absolute; }*/
.hub-menu { display: flex; align-items: flex-start; } /* justify-content: center;*/
.hub-menu > * { height: 49px; }
/*.hub-cover .hub-menu { justify-content: flex-start; }*/
/*.hub-menu .count { display: inline-block; padding-top: 10px; line-height: 200%; background: url(/i/icons/user-plain-black48.png) 0 19px / 12px no-repeat; padding-left: 15px; min-width: 30px; color: #999; }*/
.hub-menu .count { padding: .95em 0 0 1.2em; background: url(/i/icons/user-plain-black48.png) 0 1.1em / 1em no-repeat; color: #999; }
.hub-menu-title { margin-bottom: 10px; font-weight: bold; font-family: var(--title-font); }
.follow-loading { background: url(/i/ajax.svg) 50% / 32px no-repeat #eee; display: inline-block; width: 150px; height: 49px; vertical-align: top; border-radius: 5px; }
.atom-zoom { background-position: 50%; background-size: 40px; background-repeat: no-repeat; background-color: #fff; width: 60px; height: 60px; cursor: pointer; border-radius: 10px; top: 10px; right: 10px; position: absolute; box-shadow: 0 0 0 2px #0002; }
/*.atom-zoom:hover { box-shadow: 0 0 0 2px #0006, 0 0 0 3px #fff3; }*/
/*.atom-selected { top: 17px; height: 80px; left: calc( 100% - 90px ); width: 80px; background: url(/i/done.png) 50% 15px / 2.8em no-repeat #000c; border-radius: 8px; color: #fff; position: absolute; padding-top: 54px; font-size: 0.8em; text-align: center; }*/
.atom-selected { top: -2px; bottom: -2px; right: -2px; width: 100px; background: url(/i/done.png) 50% 20px / 48px no-repeat #000c; border-radius: 0 11px 11px 0; color: #fff; position: absolute; padding-top: 93px; font-size: 0.8em; text-align: center; border-left: 1px solid #fff9; }
.atom-hub-link, .atom-hub-link:focus { display: flex; text-align: left; min-width: 10em; margin: auto; height: 50px; border: 1px solid #cde; border-radius: 10px; color: #000; overflow: hidden; user-select: none; max-width: 16em; }
.atom-hub-link:hover { border: 1px solid #27b0ff; box-shadow: 0 0 10px #27b0ff66; color: #000; }
.atom-hub-link .image { min-width: 50px; border-right: 1px solid #cde; }
.atom-hub-link:hover .image { border-right: 1px solid #27b0ff66; }
.atom-popup-image { margin: -30px -30px 30px; background: #444; text-align: center; border-radius: 10px 10px 0 0; overflow: hidden; border-bottom: 1px solid #ddd; }
.atom-basic-info { display: flex; justify-content: center; margin-left: -20px; margin-right: -20px; text-align: center; }
#main-login-btn { position: fixed; width: 280px; height: 120px; border-radius: 20px; padding-top: 14px; text-align: center; bottom: 160px; left: calc( 50% - 140px ); background: linear-gradient( 235deg, #0098ff , #ed0000 ); box-shadow: 0 0 0 2px #333, 0 0 0 4px #fff8f0, 0 5px 20px 15px #4036, 0 -3px 0 1px #0003 inset, 0 15px 30px 1px #fff0 inset, 0 -60px 20px #0004 inset; color: #fff; cursor: pointer; transition: 200ms; z-index: 1; display: none; }
#main-login-btn:hover { box-shadow: 0 0 0 2px #000, 0 0 0 4px #fff, 0 6px 10px 12px #4033, 0 -3px 0 1px #0003 inset, 0 15px 30px 1px #fff3 inset; background: linear-gradient( 235deg, #18a2ff , #ff0e0e ); bottom: 164px; }
#main-login-btn div:first-child { font-size: 28px; font-weight: bold; font-family: var(--title-font); text-shadow: 0 2px 2px #0006, 0 1px 1px #000; }
#main-login-btn .line { margin: 12px auto 0; height: 1px; width: 240px; border-top: 1px dashed #fff4; }
#main-login-btn div:last-child { font-size: 16px; margin-top: 8px; text-shadow: 0 2px 2px #000, 0 1px 1px #000;     letter-spacing: 0.5px; }

/* Рейтинги */
.rating-score { position: absolute; left: .65em; top: 0.65em; width: 4.75em; height: 2.25em; line-height: 2.25em; background: url(/i/icons/star.png) .45em .6em / 1em no-repeat #0009; color: #fff; border-radius: .3em .3em 0 0; font-size: 1.15em; font-weight: bold; font-family: var(--title-font); padding-left: 1.3em; }
.rating-place { position: absolute; left: .85em; top: 3.9em; width: 6.4em; height: 2.3em; line-height: 2.3em; background: url(/i/icons/podium.png) .6em / 1.3em no-repeat #0009; color: #fff; border-top: 1px solid #fff2; border-bottom: 1px solid #fff2; font-size: .855em; padding-left: 1.8em; }
.rating-votes { position: absolute; left: .85em; top: 6.2em; width: 6.4em; height: 2.3em; line-height: 2.3em; background: url(/i/icons/users.png) .6em / 1.3em no-repeat #0009; color: #fff; border-radius: 0 0 .3em .3em; font-size: .855em; padding-left: 1.8em; }

.rating-line { margin: -18px 0 20px; height: 36px; }
.rating-score-line { position: absolute; top: 1px; width: 40%; left: 0; height: 2.23em; line-height: 2.2em; background: url(/i/icons/star.png) 1.8em / 1em no-repeat, linear-gradient( to top , #eee, #fff 80% ); color: #666; border-bottom: 1px solid #0002; border-radius: .6em 0 0 0; font-size: 1.15em; font-weight: bold; font-family: var(--title-font); padding-left: 1.5em; }
.rating-place-line { position: absolute; top: 1px; width: 30%; left: 40%; height: 3em; line-height: 3em; background: url(/i/icons/podium.png) 1.6em / 1.3em no-repeat, linear-gradient( to top , #eee, #fff 80% ); color: #666; border-bottom: 1px solid #0002; border-left: 1px solid #0001; border-right: 1px solid #0001; font-size: .855em; padding-left: 2.2em; }
.rating-votes-line { position: absolute; top: 1px; width: 31%; left: 70%; height: 3em; line-height: 3em; background: url(/i/icons/users.png) 1.6em / 1.3em no-repeat, linear-gradient( to top , #eee, #fff 80% ); color: #666; border-bottom: 1px solid #0002; border-radius: 0 .6em 0 0; font-size: .855em; padding-left: 2.2em; }
.rating .stars { display: inline-block; user-select: none; }
.rating .star { background: url(/i/icons/rating-stars.png) 0 0 / 24px no-repeat; width: 28px; height: 24px; display: inline-block; cursor: pointer; user-select: none; transition: 300ms; }
.rating .star.active { background-position-y: -24px; }
.rating .score { display: inline-block; font-size: 20px; font-weight: bold; font-family: var(--title-font); vertical-align: 4px; margin-left: 10px; transition: 300ms; }
.rating .votes { display: inline-block; font-size: 12px; vertical-align: 12px; margin-left: 3px; transition: 300ms; }
.rating .info { display: inline-block; background: url(/i/icons/help.png) 0 / 24px; width: 24px; height: 24px; vertical-align: -1px; margin-left: 10px; cursor: pointer; }
.rating-.loading .star { background: url(/i/ajax.svg) 0 / 24px no-repeat; opacity: .3; cursor: wait; }
.rating.loading .star { opacity: .3; cursor: wait; }
.rating.loading .score, .rating.loading .votes { opacity: .3; }

/* Сошиал */
.social { position: relative; max-width: 940px; min-height: 400px; height: 100%; text-align: left; padding: 0; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; margin: auto; }
/*.social-preview { box-shadow: 0 2px 2px inset #0001; background: linear-gradient(to bottom, #fafafa, #fff 100px ); border: 1px solid #eee; cursor: pointer; border-radius: 10px; padding: 0 20px 20px; height: 420px; max-width: 928px; margin: auto; }*/
.social-preview { background: linear-gradient(to bottom, #fafafa, #fff 100px ); border: 1px solid #ddd; cursor: pointer; border-radius: 10px; padding: 0 20px 20px; height: 420px; max-width: 928px; margin: auto; }
#social-window .social { box-shadow: none; background: none; border: none; }
/*.social-expand { background: linear-gradient( to top , #eee , #fff ); color: #444; margin: auto; text-align: center; cursor: pointer; width: 200px; height: 100px; border-radius: 50px; line-height: 100px; margin-bottom: -50px; position: relative; z-index: 1; font-weight: bold; font-family: var(--title-font); text-transform: uppercase; font-style: italic; box-shadow: 0 0 5px #0002, 0 3px 1px #fff inset, 0 -3px 1px #ccc inset; border: 1px solid #ddd; text-shadow: 0px 2px 2px #fff; }*/
.social-expand { background: linear-gradient( to top , #eee , #fff ); color: #444; margin: auto; text-align: center; cursor: pointer; width: 200px; height: 60px; border-radius: 50px; line-height: 60px; margin-bottom: -30px; position: relative; z-index: 1; box-shadow: 0 0 0 1px #0002; }
.social-expand:hover { background: #fff; color: #222; }
.social-expand .title { position: relative; z-index: 1; }
/*.social-expand .bg { background: #fff; width: 80px; height: 80px; position: absolute; left: calc( 50% - 40px ); top: calc( 50% - 40px ); border-radius: 50%; }*/
.social-msg-list { overflow: hidden; }
#social-window .social-msg-list { overflow: auto; min-height: 100px; }
.social-input { display: flex; justify-content: center; max-width: 940px; margin-top: 20px; }
#social-window .social-input { padding: 10px!important; }
#social-input { padding-top: 10px; padding-bottom: 10px; }
#social-image { min-width: 3.3em; height: 3.3em; border-radius: 8px 0 0 0; overflow: hidden; margin-top: -1px; }
#social-image.cpointer:hover { opacity: .8; }
#social-title { margin-top: .4em;; }
#social-title a { border-bottom: none; color: #fff; }
#social-title a:hover { opacity: .6; }
#social-title+#social-type { color: #fff; opacity: .6; }
#social-desktop-panels { display: none; }
#social-mobile-panel { height: 0; position: relative; }
#social-mobile-panel div { position: absolute; border-radius: 50%; width: 50px; height: 50px; display: inline-block; cursor: pointer; right: 0; box-shadow: 0 0 0 2px #0002 inset; opacity: .8; }
#social-mobile-panel div:hover { box-shadow: 0 0 0 2px #0009 inset; opacity: 1; }
.social-desktop-left { position: fixed; height: 100%; top: 0; left: 0; width: calc( 50% - 460px ); background: url(/i/chats-list-layout.png) 50% / 300px no-repeat; z-index: 10001; display: block; opacity: .2; }
.social-desktop-left:hover { opacity: .4; }
.social-input-element { width: 50px; height: 50px; }
.social-input-closed { padding: 18px 10px 20px; font-weight: bold; font-family: var(--title-font); width: 100%; }
#social-comment-new { line-height: 150%; width: 100%; height: 50px; max-height: 150px; min-height: 50px; resize: none; font-size: 14px; padding: 5px 15px 5px 6px; }
.chat-list { margin: -20px -30px; min-height: 200px; width: 600px; max-width: calc( 100% + 60px ); }
.chat-list-item { display: flex; user-select: none; cursor: pointer; text-align: left; font-size: 13px; width: 100%; height: 70px; overflow: hidden; white-space: nowrap; }
.chat-list-item:hover { background: #f8f8f8; }
.chat-list-item .chat-icon { width: 50px; height: 50px; border-radius: 5px; }
.chat-list-item .chat-deleted { width: 50px; height: 50px; background: url(/i/icons/deleted.png) 50% / 32px no-repeat #fff; opacity: .5; }
.chat-list-item .chat-data { padding-left: 0px; width: calc( 100% - 80px ); }
.chat-list-item .chat-head { display: flex; justify-content: space-between; margin-top: 10px; width: 100%; overflow: hidden; }
.chat-list-item .chat-title { overflow: hidden; }
.chat-list-item .chat-new-count { font-size: 12px; color: #fff; background: #dd3000; margin-left: 10px; padding: 2px 6px; border-radius: 10px; display: inline-block; text-align: center; min-width: 24px; }
.chat-list-item .chat-msg { display: flex; margin-top: 5px; }
.chat-list-item .chat-msg-user { border-radius: 50%; min-width: 24px; height: 24px; opacity: .8; }
.chat-list-item .chat-msg-text { margin: 4px 0 0 5px; color: #666; font-size: 12px; height: 32px; overflow: hidden; width: 100%; }
.chat-list-item .chat-msg-date { font-size: 12px; color: #999; margin-top: 4px; padding-left: 10px; }
.popup-title-pin.pinned #social-image { border-radius: 0; }

.server-user-menu { display: flex; margin-top: 10px; justify-content: center; font-size: 12px; }
.server-user-menu>div { width: 80px; border: 2px solid #ccc; border-radius: 5px; cursor: pointer; margin: 0 5px; position: relative; }
.server-user-menu .title { background: #ddd; color: #000; font-width: bold; padding: 2px; border-radius: 0 0 2px 2px; }
.server-user-menu>div:hover:not(.disabled) { border-color: #999; }
.server-user-menu>div:hover:not(.disabled) .title { background: #aaa; }
.server-user-menu>div.disabled { cursor: default; opacity: .5; }
.server-user-menu .new { display: none; width: 18px; height: 18px; background: #f22; position: absolute; top: -5px; right: -5px; border-radius: 50%; box-shadow: 0 0 0 2px #fff, 0 0px 0px 4px #ccc; color: #fff; font-size: 11px; font-weight: bold; font-family: var(--title-font); padding-top: 2px; }
.server-user-menu>div:hover:not(.disabled) .new { box-shadow: 0 0 0 2px #eee, 0 0px 0px 4px #999; }

.indicator-item .new { min-width: 24px; height: 24px; background: #f22; position: absolute; top: 10px; right: 10px; border-radius: 5px; box-shadow: 0 1px 3px #0009; color: #fff; font-size: 14px; padding: 3px 5px 0; display: none; }

.atom-article { display: flex; justify-content: center; flex-direction: row; margin-top: 30px; }
.atom-article .col1 {  }
.atom-article .col2 { margin-left: 30px; text-align: left; }
.atom-article h1 { text-align: left; margin-top: -10px; }

 /* теговая панель */
.tag-panel { display: flex; justify-content: center; flex-wrap: wrap; flex-direction: row; margin-left: -20px; margin-right: -20px; }
.tag-panel-btn { line-height: 2.5em; padding: 0 .8em; background: #666; color: #fff; border-radius: 5px; cursor: pointer; margin: .2em; user-select: none; white-space: nowrap; font-size: 0.9em; border: none; }
.tag-panel-split { line-height: 2.5em; padding: 0 2px; color: #ddd; margin: .2em; user-select: none; font-size: 0.9em; }
.tag-panel-info { line-height: 2.5em; padding: 0 2px; color: #bbb; margin: .2em; font-size: 0.9em; }
.tag-panel-btn:hover { background: #888; }
.tag-panel-btn.bg-purple { background: #86298b; }
.tag-panel-btn.bg-purple:hover { background: #b748bd; }
.tag-panel-btn.bg-button { background: linear-gradient(to top, #0072b5, #30bdff); box-shadow: 0 0 0 1px #0001 inset; font-weight: bold; font-family: var(--title-font); }
.tag-panel-btn.bg-button:hover { color: #fff; background: linear-gradient(to top, #007ac1, #80d7ff); }
.tag-panel-btn.bg-link, .tag-panel-btn.bg-link:focus { background: linear-gradient(to top, #ddd, #eee); color: #444; box-shadow: 0 0 0 1px #0001 inset; font-weight: bold; font-family: var(--title-font); border: none; }
.tag-panel-btn.bg-link:hover { background: linear-gradient(to top, #eee, #fff); }
.tag-panel-btn.bg-link span { border-left: 1px dashed #0002; padding: 0px 4px; margin-right: -10px; margin-left: 5px; color: #0005; font-weight: normal; font-family: var(--text-font); text-align: center; min-width: 20px; display: inline-block; line-height: 20px; }
/* .tag-panel-btn {
    margin: 0 .8em 0 0;
} */

.profile-header {
    display: flex;
    justify-content: center;
    margin: -1em auto 0;
    text-align: left;
    background: url(/i/bg1-2.png) #fff;
    margin: -40px -40px 0;
    padding: 1em 40px;
    border-bottom: 1px solid #0002;
}
.profile-header .avatar {
    aspect-ratio: 1/1;
    width: 6em;
    height: 6em;
    margin: .15em .5em 0 0;
    border-radius: .5em;
    border: none;
}


/* универсальные правила */
.cont { max-width: 1240px; margin: 0 auto; }
.top-40 { margin-top: -40px!important; }
.top-30 { margin-top: -30px!important; }
.top-20 { margin-top: -20px!important; }
.top-10 { margin-top: -10px!important; }
.top-5 { margin-top: -5px!important; }
.top0 { margin-top: 0!important; }
.top2, .top2f { margin-top: 2px!important; }
.top5, .top5f { margin-top: 5px!important; }
.top10, .top10f { margin-top: 10px!important; }
.top15, .top15f { margin-top: 15px!important; }
.top20, .top20f { margin-top: 20px!important; }
.top30, .top30a, .top30f { margin-top: 30px!important; }
.top40, .top40a, .top40f { margin-top: 40px!important; }
.top60 { margin-top: 60px!important; }
.top80 { margin-top: 80px!important; }
.top120 { margin-top: 120px!important; }
.ptop10 { padding-top: 10px!important; }
.b-10 { margin-bottom: -10px!important; }
.b-20 { margin-bottom: -20px!important; }
.b0 { margin-bottom: 0!important; }
.b10 { margin-bottom: 10px!important; }
.b20 { margin-bottom: 20px!important; }
.b30 { margin-bottom: 30px!important; }
.b40 { margin-bottom: 40px!important; }
.b60 { margin-bottom: 60px!important; }
.r5 { margin-right: 5px!important; }
.r10 { margin-right: 10px!important; }
.r20 { margin-right: 20px!important; }
.r30 { margin-right: 30px!important; }
.r40 { margin-right: 40px!important; }
.l5 { margin-left: 5px!important; }
.l10 { margin-left: 10px!important; }
.l20 { margin-left: 20px!important; }
.l40 { margin-left: 40px!important; }
.margin-width-crop-10 { margin-left: -10px; margin-right: -10px; }
.w2em { width: 2em!important; }
.w2_5em { width: 2.5em!important; }
.w3em { width: 3em!important; }
.w4em { width: 4em!important; }
.w6em { width: 6em!important; }
.w8em { width: 8em!important; }
.w6em { width: 6em!important; }
.w10em { width: 10em!important; }
.w12em { width: 12em!important; }
.w14em { width: 14em!important; }
.w16em { width: 16em!important; }
.w18em { width: 18em!important; }
.w20em { width: 20em!important; }
.w40 { width: 40px!important; }
.w50 { width: 50px!important; }
.w60 { width: 60px!important; }
.w80 { width: 80px!important; }
.w100 { width: 100px!important; }
.w120 { width: 120px!important; }
.w140 { width: 140px!important; }
.w150 { width: 150px!important; }
.w160 { width: 160px!important; }
.w180 { width: 180px!important; }
.w200 { width: 200px!important; }
.w220 { width: 220px!important; }
.w240 { width: 240px!important; }
.w260 { width: 260px!important; }
.w280 { width: 280px!important; }
.w300 { width: 300px!important; }
.w100p { width: 100%!important; }
.mw100p { max-width: 100%!important; }
.h200 { min-height: 200px; }
.h100 { min-height: 100px; }
.h80 { min-height: 80px; }
.vtop { vertical-align: top; }
.vmiddle { vertical-align: middle!important; }
.vbottom { vertical-align: bottom; }
.relative { position: relative; }
.clear { clear: both; }
.black { color: #000!important; }
a.black, a.black:focus { color: #000; border-bottom-color: #0005; }
a.black:hover { color: #666; border-bottom-color: #6665; }
.white { color: #fff; }
a.white, a.white:focus { color: #fff; border-bottom-color: #fff5; }
a.white:hover { color: #ccc; border-bottom-color: #ccc5; }
.green { color: #0a0!important; }
.red { color: #920!important; }
a.red, a.red:focus { color: #920; border-bottom-color: #9205; }
a.red:hover { color: #b30; border-bottom-color: #b30; }
.gray6 { color: #666!important;; }
.gray9 { color: #999!important; }
a.gray9, a.gray9:focus { border-bottom-color: #9995; color: #999; }
a.gray9:hover { color: #bbb; border-bottom-color: #bbb; }
.grayb { color: #bbb!important;; }
.grayc { color: #ccc!important;; }
.color-psi { color: #dc2c87!important; }
.link-open-line { padding-bottom: .2em; }
.opa2 { opacity: .2; }
.opa5 { opacity: .5; }
.opa7 { opacity: .7; }
.bggreen { background: #cff7c2; }
.bgred { background: #f7c2c2; }
.bge { background: #eee!important; }
.bgf { background: #fff!important; }
.bgfe { background: linear-gradient(0, #eee, #fff)!important; }
.gray-label { background: #eee; color: #666; text-align: center; line-height: 300%; width: 200px; border-radius: 10px; display: inline-block; margin-top: 30px; font-size: 20px; font-weight: bold; font-family: var(--title-font); }
.mono { font-family: monospace; }
.font12 { font-size: 12px; }
.font12a { font-size: 12px; }
.font13 { font-size: 13px; }
.font14 { font-size: 14px!important; }
.font14a { font-size: 14px; }
.font16 { font-size: 16px!important; }
.font16a { font-size: 16px; }
.font18 { font-size: 18px; }
.font20 { font-size: 20px; }
.font20a { font-size: 20px; }
.font24 { font-size: 24px; }
.font28 { font-size: 28px; }
.font28a { font-size: 28px; }
.font40 { font-size: 40px; }
.tleft { text-align: left!important; }
.tright { text-align: right; }
.tcent { text-align: center!important; }
.fleft { float: left; }
.fright { float: right; }
.mcent { margin-left: auto; margin-right: auto; }
.mcent300 { margin-left: auto!important; margin-right: auto!important; max-width: 300px; }
.mcent400 { margin-left: auto!important; margin-right: auto!important;; max-width: 400px; }
.mcent500 { margin-left: auto; margin-right: auto; max-width: 500px; }
.mcent600 { margin-left: auto; margin-right: auto; max-width: 600px; }
.mcent800 { margin-left: auto; margin-right: auto; max-width: 800px; }
.mcent880 { margin-left: auto; margin-right: auto; max-width: 880px; }
.mcent1000 { margin-left: auto; margin-right: auto; max-width: 1000px; }
.mcent1200 { margin-left: auto; margin-right: auto; max-width: 1200px; }
.mcent1600 { margin-left: auto; margin-right: auto; max-width: 1600px; }
.em0_85 { font-size: 0.85em; }
.em0_9 { font-size: 0.9em; }
.em1_2 { font-size: 1.2em; }
.vcent { vertical-align: middle; }
.nobr { white-space: nowrap; }
.wordwrap { word-wrap: break-word; }
.cpointer { cursor: pointer; }
.cdefault { cursor: default; }
.hint { cursor: help; }
.bold { font-weight: bold; font-family: var(--title-font); }
b { font-family: var(--title-font); }
.unbold { font-weight: normal!important; font-family: var(--text-font); }
.italic { font-style: italic; }
.block { display: block; }
.iblock { display: inline-block; }
.hide { display: none; }
.overhide { overflow: hidden; }
.line100 { line-height: 100%; }
.line130 { line-height: 130%; }
.line150 { line-height: 150%; }
.line170 { line-height: 170%; }
.line200 { line-height: 200%; }
.line300 { line-height: 300%; }
.overfade { opacity: .5; transition: 200ms; }
.overfade:hover { opacity: 1; }
.flexnowrap { display: flex!important; }
.flex-wrap800 { display: flex; }
.flex { display: flex; flex-wrap: wrap; }
.flex-cent { display: flex; justify-content: center; flex-wrap: wrap; flex-direction: row; margin-left: -20px; margin-right: -20px; }
.flex-wide { display: flex; justify-content: space-between; flex-wrap: wrap; margin-left: -20px; margin-right: -20px; }
.flex-vcent { display: flex!important; flex-direction: column; justify-content: center!important; }
.flex-list { display: flex; flex-wrap: wrap; justify-content: center; margin-right: -10px; margin-left: -10px; padding-inline-start: 0; }
.flex-list > * { width: 300px; max-width: max( calc(50% - 20px) , 50vh ); margin: 10px!important; position: relative; text-align: center; list-style-type: none; line-height: unset; font-size: 14px; border-radius: 1em; }
.flex-list.flex-list-vm2 > * { margin: 20px 10px!important; }
/*.flex-item > * { position: absolute_; top: 0px; bottom: 0px; left: 0px; right: 0px; }*/
.flex-list .cover { display: block; background: #eee; border-radius: .8em; aspect-ratio: 1 / 1; margin: auto; border: none; max-width: 100%; }
.flex-list .title { font-family: var(--title-font); font-weight: bold; font-size: 1.05em; word-wrap: break-word; max-height: 2.4em; overflow: hidden; padding_: 0 .5em; }
.flex-item-link, .flex-item-link:focus { display: flex; border-radius: .8em; border: none; justify-content: center; align-items: flex-start; background: #fff; }
.flex-item-link:hover { box-shadow: 0 0 0 1px #fff, 0 0 0 2px #27b0ff, 0 0 10px 2px #27b0ff66; border: none; }
.flex-list.list-short > * { width: 12em; margin: .8em!important; border-radius: .5em; }
.nexus-item { justify-content: flex-start; display: flex; text-align: left; min-height: 4.5em; border: none!important; }
.atom-item, .atom-item:focus { display: block; text-align: left; border: none; color: #000; border-radius: 10px; overflow: hidden; }
.atom-item .atom-cover { width: 80px; height: 80px; border-radius: 9px 0 0 0; box-shadow: 0 0 0 1px #00000008 inset; }
.atom-item .atom-image-div { background: linear-gradient( to top , #fff , #eee); width: 80px; height: 80px; border-right: 0 solid #fff; }
.atom-item .atom-info { width: 100%; padding: 10px 10px 0 15px; border: 1px solid #eee; border-width: 1px 1px 0 0; border-radius: 0 10px 0 0; }
.atom-item .atom-info .bold { height: 31px; overflow: hidden; word-break: break-word; line-height: 110%; color: #000; }
.atom-item .atom-icon { width: 16px; vertical-align: -3px; margin-right: 5px; opacity: .2; }
.atom-item .details { margin-top: 12px; color: #bbb; font-size: 0.9em; white-space: nowrap; overflow: hidden; width: 100%; }
.atom-item .atom-type { font-family: var(--title-font); background: linear-gradient( to top , #f8f8f8 , #eee ); color: #888; font-size: 0.9em; line-height: 34px; text-align: left; border-radius: 0 0 10px 10px; display: flex; justify-content: space-between; border: 1px solid #e8e8e8; border-top: none!important; }
.atom-item .atom-type img { width: 20px; vertical-align: -5px; margin-right: 5px; }
.atom-item .status-off { background: linear-gradient( to top , #fee , #edd ); color: #c88; border-bottom: 1px solid #edd; }
.atom-item .status-link { background: linear-gradient( to top , #ffe , #eec ); color: #aa8; white-space: nowrap; border-bottom: 1px solid #eec; }

.hublist-item { padding: 1px!important; }
.hublist-item-info {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: #2b2b2b4a;
    padding: 1em;
    backdrop-filter: blur(10px);
    border-radius: 0 0 .8em .8em;
}

.radem02 { border-radius: .2em; }
.radem05 { border-radius: .5em; }
.rad5 { border-radius: 5px; }
.rad10 { border-radius: 10px; }
.rad20 { border-radius: 20px; }
.rad50p { border-radius: 50% !important; }
.p5 { padding: 5px!important; }
.p10, .p10a { padding: 10px!important; }
.p20, .p20a { padding: 20px!important; }
.m0 { margin: 0!important; }
.m1 { margin: 1px!important; }
.m5 { margin: 5px!important; }
.m10, .m10a { margin: 10px!important; }
.m20 { margin: 20px; }
.brword { word-break: break-word; }
.font-text { font-family: var(--text-font); }
.font-title { font-family: var(--title-font); }
.box, .box:hover, .box:focus { display: block; border: 1px solid #ddd; padding: 1.4em; border-radius: 1em; overflow: hidden; position: relative; background: #fff; }
/*box-shadow: 0 0 10px #0001, 0 0 0 1px #fff inset ;*/
/*color: #000;*/
.box .box-title, a.box-title:focus, .box .box-title-5 { border-bottom: 1px solid #ddd; margin: -1.4em -1.7em 1.4em; padding: 1em 1.4em; background: linear-gradient(to bottom, #fff, #eee); box-shadow: 0 1px 0 1px #fff inset, 0 0 0 1px #fff; }
.box .box-title-5 { padding: 5px 10px; }
.box .box-title.title-psi, a.box-title.title-psi:focus { background: linear-gradient(0, #713a85, #d642e3); color: #fff; box-shadow: none; border-bottom: 1px solid #461957; }
.box .box-title.title-dark, a.box-title.title-dark:focus { background: linear-gradient(0, #777, #999); color: #fff; box-shadow: none; border-bottom: 1px solid #461957; }
a.box:hover { border: 1px solid #27b0ff; box-shadow: 0 0 10px #27b0ff66; }
a.box-title:hover { border-bottom: 1px solid #ccc!important; background: linear-gradient(to bottom, #fff, #ddd); }
.box-panel { margin: 30px 15px 0; min-width: 300px; width: 100%; max-width: 400px; padding: 20px; box-shadow: 0 2px 10px #0002; border-radius: 10px; background: #fff; }
.box-panel .box-title { font-weight: bold; font-family: var(--title-font); background: url(/i/icons/profile.png) 20px 50% / 48px no-repeat, linear-gradient( to bottom , #fff , #f8f8f8); padding-left: 78px; height: 68px; line-height: 68px; margin: -20px -20px 20px; white-space: nowrap; overflow: hidden; border-radius: 10px 10px 0 0; }
.box-clean, .box-clean:focus { background: transparent; border: 1px solid transparent; box-shadow: none; padding: 5px; width: 180px; margin: 5px; display: flex; text-align: left; }
.box-clean:hover { padding: 5px; display: flex; }

.grind-task { box-shadow: 0 0 0 1px #eee inset, 0 3px 10px #0001; padding: 1.2em; display: flex; flex-direction: column; justify-content: space-between; background: #fff; }
.grind-task-title { margin: -1.2em -1.2em 1.2em; background: linear-gradient(0, #713a85, #d642e3); color: #fff; border-radius: 1em 1em 0 0; padding: 1em .3em; }
.grind-task-title a { color: #dd6; border-bottom: 1px solid #dd68; }
.grind-task-title a:hover { color: #ff6; border-bottom: 1px solid #ff6; }
.gring-task-title-locked { margin: -1.2em -1.2em 1.2em; background: linear-gradient(0, #957f9c, #af98b6); color: #fff; border-radius: 1em 1em 0 0; padding: 1em .3em; }
.grind-task-title a { color: #ddd; border-bottom: 1px solid #ddd9; }
.grind-task-title a:hover { color: #fff; border-bottom: 1px solid #fff; }

.ugc img { max-width: 100%; }
.ugc figure.image, .ugc figure.media, .ugc figure.table { margin: 1em auto; }
.ugc figure.image.image-style-side { float: right; margin: 0 0 0 20px; }
.ugc:after { content: ""; display: block; clear: both; }
.div-item { background: url(/i/finished32.png) 0 4px / 16px no-repeat; padding-left: 24px; min-height: 20px; line-height: 170%; margin-top: 10px; }
.hidelink:not(:hover) { color: inherit; border: none; }
.empty-list { background: #eee; text-align: center; padding: 100px 20px; border-radius: 10px; color: #999; margin-top: 20px; }
.images-list { margin: -5px; padding: 0; }
.images-list>* { width: 100px; height: 100px; overflow: hidden; background: #eee; border: 0px solid #eee!important; margin: 0 5px 10px; border-radius: 5px; display: inline-block; box-shadow: 0 0 0 1px #0001 inset; }
.images-list-280>* { width: 280px; height: 280px; }
.images-list.images-list-50>* { width: 50px; height: 50px; }
/*.images-list.image-list-border>* { box-shadow: 0 0 0 1px #000 inset; }*/
.images-list>*:hover { box-shadow: 0 0 0 2px #0009; }
.images-list>*.active { box-shadow: 0 0 0 2px #0009; }
.images-list>* a:first-child { display: block; width: 100px; height: 100px; border: none; }
.images-list-280>* a:first-child { width: 280px; height: 280px; }
/*.images-list>* a:first-child+div { display: none; justify-content: flex-end; }*/
/*.images-list>*:hover a:first-child+div { display: flex; justify-content: flex-end; }*/
.images-list>* a:first-child+div { display: flex; justify-content: flex-end; }
.images-list>* a:first-child+div * { position: relative; top: -95px; width: 24px; height: 24px; margin-right: 5px; cursor: pointer; }
.images-list-280>* a:first-child+div * { top: -275px; width: 48px; height: 48px; margin-right: 5px; cursor: pointer; }
.images-list .image-loading { background: url(/i/ajax.svg) no-repeat 50% / 60%; opacity: .5; display: none; }
.images-list .image-delete { background: url(/i/trash16.png) no-repeat 50% / 16px #f66; border-radius: 3px; box-shadow: 0 0 0 1px #000; }
.images-list-280 .image-delete { background: url(/i/icons/trash-w.png) no-repeat 50% / 32px #0009; border-radius: 5px; box-shadow: none; opacity: .7 }
.images-list-280 .image-delete:hover { opacity: 1; }
.images-list .image-upload { display: flex; flex-direction: column; align-items: center; justify-content: center; color: #999!important; text-align: center; line-height: 120%; }
.paging { display: flex; justify-content:center; width: 100%; margin-top: 60px; }
.paging-panel { position: fixed; bottom: 20px; background: #0009; padding: 2px; border-radius: 5px; }
.paging-info { color: #fff; text-align: center; font-size: 14px; padding: 5px; background: #0006; margin: 1px 1px 2px; border-radius: 3px; }
.paging-list { display: flex; user-select: none; justify-content: center; }
.paging-list a, .paging-list div { line-height: 40px; min-width: 40px; margin: 2px; text-align: center; background: #fff; border-radius: 3px; padding: 0 5px; color: #000b; border: none; }
.paging-list a:hover { background: #d0f4ff; }
.paging-list div { background: #a3eaff; color: #03161c; }
.paging-list span { color: #fff; padding: 10px 5px 0; }
.cabinet-content-full .paging-panel { position: static; }
.cabinet-content-full .paging { margin-top: 30px; }
.bgajax { background: url(/i/logo/ajax2.svg) 50% / 128px no-repeat; opacity: .5; }
.bgajax80 { background: url(/i/logo/ajax2.svg) 50% / 80px no-repeat; opacity: .5; }
.copy, .copy:hover, .copy:focus { background: #fea; padding: .1em 1.5em .1em .3em; border-radius: .3em; box-shadow: 0 0 0 1px #dca; color: #430; cursor: pointer; max-width: 100%; display: inline-block; overflow: hidden; line-height: 130%; position: relative; margin: -.1em 0; }
.copy:after {
    content: "";
    width: 1em;
    height: 1em;
    display: block;
    position: absolute;
    top: .2em;
    right: .2em;
    background: url(/i/icons/outline/copy.png?) 0 / cover;
    opacity: .3;
}
.alert, .alert-gray { background: #ff717c; padding: 15px 10px; line-height: 170%; text-align: center; color: #fff; border-radius: 10px; }
.alert-gray { background: #999; }
.shadow { box-shadow: 0 0 10px #0002; }
.noselect { user-select: none; }
.gray-panel { margin: 20px auto 0; max-width: 970px; background: #f8f8f8; border-radius: 10px; box-shadow: 0 0 0 1px #ddd, 0 1px 3px #0004; }
.label-red { font-size: .9em; background: #c44; border-radius: .4em; padding: .3em 1em .4em; display: inline-block; color: #fff; }
.label-yellow { font-size: .9em; background: #990; border-radius: .4em; padding: .3em 1em .4em; display: inline-block; color: #fff; }
.h-split { background: url(/i/h-split-800x100.png) 50% / cover; width: 100%; max-width: 800px; aspect-ratio: 10 / 1; margin-left: auto; margin-right: auto; opacity: .5; }

/* универсальные правила адаптивной верстки */
.block1200, .inline1200, .iblock1200 { display: none; }
.block800, .inline800, .iblock800 { display: none; }
.block500, .inline500, .iblock500 { display: none; }

/* плагины */
.type-progress-container { position: relative; height: 3px; opacity: 0; background: #0001; margin: 0 5px -3px; border-radius: 2px; overflow: hidden; top: -6px; z-index: 10; }
.type-progress-container.focus { opacity: 1; }
.type-progress-container .type-progress { position: absolute; left: 0; top: 0; bottom: 0; width: 0%; background: #dc2c8747; }
#lz-box { backdrop-filter: blur(5px); cursor: pointer; }
#lz-box img { border-radius: 20px; padding: 0!important; }
#lz-close { border: none; top: 20px; right: 20px; background: url(/i/close-white.png?) no-repeat 0 / 20px; width: 20px; height: 20px; }
.ck.ck-balloon-panel { z-index: 20; }
.ck.ck-balloon-panel.ck-balloon-panel_toolbar_west.ck-toolbar-container { z-index: 10; }
.dragscroll { overflow-x: auto; max-width: 100%; }
.sort-process { box-shadow: 0 0 0 3px #e3c300!important; }
.air-datepicker.-inline- { height: 266px; }

/* страница пользователя */
.profile-links { display: flex; justify-content: center; flex-wrap: wrap; margin: 30px -20px 0; padding: 0; }
.profile-links a, .profile-links li { cursor: pointer; width: 300px; height: 64px; display: flex; border: 1px solid #cde; border-radius: 5px; color: #000; margin: 7px; font-size: 14px; position: relative; overflow: hidden; user-select: none; background: #fff; }
.profile-links a:hover, .profile-links li:hover { border: 1px solid #ace; box-shadow: 0 0 0 1px #ace; }
.profile-link-icon { width: 63px; border-right: 1px solid #cde; border-radius: 7px 0 0 7px; }
.profile-links a:hover .profile-link-icon, .profile-links li:hover .profile-link-icon { border-right: 1px solid #ace; }
.profile-link-title { width: 220px; margin: auto; word-wrap: break-word; text-align: center; max-height: 40px; overflow: hidden; line-height: 1.3; }
/*.profile-link-title div { text-align: center; margin: auto; word-wrap: break-word; }*/
.profile-link-descr { opacity: .5; font-size: 12px; margin-top: 0px; white-space: nowrap; }
a.profile-link-add { background: #eee; border: 1px solid #ddd; text-align: center; color: #999; padding: 0; }
.profile-link-recomend { position: absolute; left: -10px; top: 13px; width: 32px; height: 32px; background: url(/i/icons/recomend.png) 50% / cover; }
.gray-panel .profile-links { margin: 0; }

/* справочники */
.db-item-card { margin: 20px auto; max-width: 1000px; display: flex; }
.db-item-card .col1 { margin-right: 30px; width: 280px; min-width: 280px; background: linear-gradient( to bottom, #eee, transparent 600px ) ; border-radius: 10px; }
.db-item-card .col2 { text-align: left; overflow: hidden; }
.db-item-card h1 { text-align: left; margin-top: -8px; word-break: break-word; }
.db-item-card .param { text-align: left; margin-top: .6em; line-height: 200%; }
.db-item-card .param > span:first-child {
    display: block !important;
    margin-bottom: -.8em;
}

/* таблицы и списки */
.grid { width: 100%; }
.grid .head { background: linear-gradient(to top, #eee, #fff); }
.grid td { border: 1px solid #ddd; padding: 10px; background: linear-gradient(0, #0000, #00000008); }
.grid.lines td { padding: 10px 20px 10px 0; border: 1px solid #eee; border-width: 0 0 1px; }
.grid.lines td:last-child { padding-right: 0; }
.grid.lines .head { background: transparent!important; color: #bbb; border-top: none; }
.grid.lines tr.loading { background: url(/i/ajax-bg-50.gif) #eee; color: rgba(0,0,0,0.2); cursor: progress; outline: none; }
.grid.lines-fill td { padding: 10px 0 10px 20px; border: 1px solid #0001; border-width: 0 0 1px; }
.grid.lines-fill td:last-child { padding-right: 20px; }
.grid.lines-fill .head td { background: #0001; color: #666; }
.grid.lines-fill tr.loading { background: url(/i/ajax-bg-50.gif) #eee; color: rgba(0,0,0,0.2); cursor: progress; outline: none; }
.filters-panel { line-height: 70px; text-align: center; }

/* формы */
.form { margin: 0 auto; max-width: 900px; display: flex; flex-wrap: wrap; justify-content: center; }
.form > div { margin: 30px 10px 0; width: 280px; min-height: 49px; }
.form .placeholder-container { width: 100%; }
.form input:not([type="checkbox"]):not([type="radio"]), .form textarea { width: 100%; }
.form [type="checkbox"] + label, .form [type="radio"] + label { margin-top: 10px; }
input[type="submit"], input[type="button"], .button { text-align: center; border-radius: 5px; font-weight: bold; font-family: var(--title-font); background: linear-gradient(0, #006ead, #4cbeff); border: none; color: #fff!important; font-size: .9em; text-decoration: none; text-transform: uppercase; box-shadow: 0 2px 0 #fff4 inset, 0 -2px 0 #0004 inset !important; cursor: pointer; outline: none; line-height: 130%; min-height: 3.5em; display: inline-flex; padding: 1.1em 1.5em; justify-content: center; flex-direction: column; align-items: center; vertical-align: top; transition: 300ms; overflow: hidden; letter-spacing: .05em; user-select: none; }
input[type="submit"]:hover, input[type="button"]:hover, .button:hover { background: linear-gradient(0, #0081cb, #6ccaff); outline: none; border: none; color: #fff; text-decoration: none; }
input[type="submit"]:focus, input[type="button"]:focus, .button:focus { color: #fff; text-decoration: none; border: none; }
input[type="submit"].loading, input[type="button"].loading, .button.loading { background: url(/i/ajax-bg-50.gif) #eee; color: rgba(0,0,0,0.3); cursor: progress; outline: none; box-shadow: none!important; }
input[type="submit"].disabled, input[type="button"].disabled, .button.disabled { background: #eee; color: #ccc; border-bottom-color: #ccc; cursor: not-allowed; text-shadow: none; box-shadow: none!important; }
input[type="submit"].gray, input[type="button"].gray, .button.gray { background: linear-gradient(0, #666, #aaa); }
input[type="submit"].gray:hover, input[type="button"].gray:hover, .button.gray:hover { background: linear-gradient(0, #777, #bbb); }
input[type="submit"].white, input[type="button"].white, .button.white, .button.white:focus { background: #fff; color: #000; }
input[type="submit"].white:hover, input[type="button"].white:hover, .button.white:hover { background: #fffb; color: #000; }
input[type="submit"].green, input[type="button"].green, .button.green { background: linear-gradient(to bottom, #00bb2f, #00641a); }
input[type="submit"].green:hover, input[type="button"].green:hover, .button.green:hover { background: linear-gradient(to bottom, #00cd33, #006c1d); }
input[type="submit"].green.plus, input[type="button"].green.plus, .button.green.plus { background: url(/i/plus.png) 50% / 16px no-repeat, linear-gradient(to bottom, #00bb2f, #00641a); }
input[type="submit"].green.plus:hover, input[type="button"].green.plus:hover, .button.green.plus:hover { background: url(/i/plus.png) 50% / 16px no-repeat, linear-gradient(to bottom, #00cd33, #006c1d); }
input[type="submit"].red, input[type="button"].red, .button.red { background: linear-gradient(0, #891f1f, #ff2f2f); }
input[type="submit"].red:hover, input[type="button"].red:hover, .button.red:hover { background: linear-gradient(0, #9b0101, #f56262); }
input[type="submit"].red.minus, input[type="button"].red.minus, .button.red.minus { background: url(/i/minus.png) 50% / 16px no-repeat, linear-gradient(0, #891f1f, #ff2f2f); }
input[type="submit"].red.minus:hover, input[type="button"].red.minus:hover, .button.red.minus:hover { background: url(/i/minus.png) 50% / 16px no-repeat, linear-gradient(0, #9b0101, #f56262); }
input[type="submit"].yellow, input[type="button"].yellow, .button.yellow { background: linear-gradient(0, #89721f, #ffb72f); }
input[type="submit"].yellow:hover, input[type="button"].yellow:hover, .button.yellow:hover { background: linear-gradient(0, #998332, #ffc75e) }
input[type="submit"].plain, input[type="button"].plain, .button.plain { padding_: 15px; border-radius: 5px; line-height: 130%; background: none; color: #0180ca!important; box-shadow: none!important; font-weight: normal; font-family: var(--text-font); display: inline-block; text-shadow: none; font-style: normal; text-transform: none; font-size_: 16px; }
.plain-s { min-height: 40px; padding: 10px 12px!important; font-size: 14px!important; }
.plain-xs { min-height: 30px; padding: 6px 10px!important; font-size: 12px!important; }
input[type="submit"].plain:hover, input[type="button"].plain:hover, .button.plain:hover { background-color: #0180ca2e !important; color: #04669f!important; }
input[disabled],.button[disabled] { color: #999!important; background: linear-gradient(to top, #ccc, #eee)!important; cursor: not-allowed!important; user-select: none!important; box-shadow: none!important; }
input.plain.active, input.plain.active:hover { background: #eee!important; padding: 16px 15px 14px!important; box-shadow: 2px 2px 1px 0px #0001 inset!important; color: #000!important; }
input.chat { background: url(/i/icons/chat.png) 14px 50% / 32px no-repeat!important; padding-left: 54px!important; }
input.share { background: url(/i/icons/url.png) 14px 50% / 32px no-repeat!important; padding-left: 54px!important; }
input.like { background: url(/i/icons/like-0.png) 14px 50% / 32px no-repeat!important; padding-left: 54px!important; }
input.like.active, input.like.active:hover { background: url(/i/icons/like-2.png) 15px calc(50% + 1px ) / 32px no-repeat #eee!important; padding: 16px 14px 14px 55px!important; box-shadow: 2px 2px 1px 0px #0001 inset!important; color: #000; }
input.star { background: url(/i/icons/star-0.png) 14px calc(50% - 2px ) / 32px no-repeat!important; padding-left: 54px!important; }
input.star.active, input.star.active:hover { background: url(/i/icons/star-1.png) 15px calc(50% - 1px ) / 32px no-repeat #eee!important; padding: 16px 14px 14px 55px!important; box-shadow: 2px 2px 1px 0px #0001 inset!important; color: #000; }
.button-pin-left { border-radius: 0 5px 5px 0!important; border-left: 1px solid #fff3!important; }
.button-pin-right { border-radius: 5px 0 0 5px!important; border-right: 1px solid #0003!important; }
.button-big { font-size: 18px!important; line-height: 50px!important; }
.inline-button, .inline-button:focus { padding: 0 .2em .2em; margin: 0 -.2em; border: none; border-radius: 5px; color: #0180ca; cursor: pointer; }
.inline-button:hover { background-color: #0180ca2e!important; color: #04669f!important; border: none; }
.button-cost { padding: 1.1em 0; }
.button-cost div:first-child { padding: 0 1.5em; }
.button-cost .cost {
    font-weight: normal;
    letter-spacing: 0;
    background: linear-gradient(0, #0002, #0002);
    padding: .5em 1em .4em;
    margin: .4em 0 -1.1em !important;
    box-shadow: 0 .08em #0002 inset;
    width: 100%;
    display: block;
}
.placeholder-container { position: relative; line-height: 100%!important; vertical-align: top; display: inline-block; max-width: 100%; overflow: visible !important; padding: 0!important; }
.placeholder-container label { color: #999; font-size: 15px; line-height: 16px; pointer-events: none; position: absolute; transition: all 200ms; top: 6px; left: 5px; width: calc( 100% - 10px ); text-align: left; white-space: nowrap; overflow: hidden; user-select: none; max-width: 100%; }
.placeholder-container .tcent+label { text-align: center; }
.placeholder-container input:focus + label,
.placeholder-container input:not(:placeholder-shown) + label,
.placeholder-container textarea:focus + label,
.placeholder-container textarea:not(:placeholder-shown) + label,
.placeholder-container .richedit + label
{ top: -10px; left: 10px; width: calc( 100% - 20px ); font-size: 12px; }
.placeholder-container .richedit + label
{ top: -18px; }
.placeholder-container input:focus + label,
.placeholder-container textarea:focus + label,
.placeholder-container .ck-focused + label
{ color: #06c; }
.placeholder-container label div { background: #eee; display: inline-block; padding: 10px; background: #fff; border-radius: 3px; }
.placeholder-container input:focus + label div,
.placeholder-container input:not(:placeholder-shown) + label div,
.placeholder-container textarea:focus + label div,
.placeholder-container textarea:not(:placeholder-shown) + label div
{ padding: 2px 10px; }
.placeholder-container label span { color: #ccc; font-size: 14px; }
.placeholder-container input:focus + label span,
.placeholder-container input:not(:placeholder-shown) + label span,
.placeholder-container textarea:focus + label span,
.placeholder-container textarea:not(:placeholder-shown) + label span
{ display: none; }
input.date { background: url(/i/calendar.png) no-repeat 7px 50%!important; text-align: center; cursor: pointer; }
.date-label { color: #bbb; background: #fff; z-index: 1; position: relative; display: inline-block; top: -13px; left: 7px; padding: 3px 7px; border-radius: 5px; }
.date-label+div { margin-top: -25px; }
.ck.richedit { padding: 2px 14px!important; border: 1px solid #ccc!important; border-radius: 5px!important; background: #fff; box-shadow: 2px 2px 1px #0001 inset; min-height: 120px; }
.richedit.ck .ck-placeholder:before { color: #ccc; }
input[type="text"], input[type="password"], textarea, select { width: 280px; max-width: 100%; padding: 14px; border: 1px solid #ccc; color: #000; font-size: 15px; border-radius: 5px; background: #fff; margin: 0; box-shadow: 2px 2px 1px #0001 inset; vertical-align: top; }
/*input[type="text"]:focus, input[type="password"]:focus, textarea:focus, select:focus { border: 1px solid #999; box-shadow: 2px 2px 5px #0002, 2px 2px 0 #0001 inset; outline: none; }*/
input[type="text"]:focus, input[type="password"]:focus, textarea:focus, select:focus, .ck.ck-focused { border: 1px solid #09f!important; box-shadow: none!important; outline: 3px solid #09f2!important; }

input[type="text"], input[type="password"], textarea, select { border: none; box-shadow: 0 0px 15px #4d004010, 0 0 0 1px #0001 inset; }
input[type="text"]:focus, input[type="password"]:focus, textarea:focus, select:focus, .ck.ck-focused { border: none!important; box-shadow: 0 0px 15px #4d004010, 0 0 0 1px #09f9 inset!important; outline: 3px solid #09f1!important; }

textarea[disabled] { background: #ddd; box-shadow: none; }
input::-moz-placeholder, textarea::-moz-placeholder { color: #999; }
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { color: #999; }
input:focus::-moz-placeholder, textarea:focus::-moz-placeholder { color: #ccc; }
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder { color: #ccc; }
select { cursor: pointer; padding: .5em; }
select[size] { padding: 0; }
option { padding: 3px 10px; font-size: 16px; }
label { cursor: pointer; font-weight: normal; }
label input { cursor: pointer; }
label.cbox { font-weight: normal; color: #666; background: #eee; padding: 8px 15px 11px; border-radius: 5px; cursor: pointer; margin: 0; display: inline-block; }
label.cbox span { margin-left: 5px; vertical-align: middle; }
label.cbox input { vertical-align: middle; }
[type="checkbox"] { vertical-align: top; margin: 0 3px 0 0; width: 17px; height: 17px; }
[type="checkbox"] + label { cursor: pointer; min-height: 30px; text-align: left; }
[type="checkbox"]:not(checked) { position: absolute; opacity: 0; }
[type="checkbox"]:not(checked) + label { position: relative; padding: 6px 0 0 60px; margin: 0; display: inline-block; }
[type="checkbox"]:not(checked) + label:before { content: ''; position: absolute; top: 0; left: 0; width: 50px; height: 28px; border-radius: 5px; background: linear-gradient(to bottom, #ececec 0%, #fff 100%); border: 1px solid #ddd; }
[type="checkbox"]:not(checked) + label:after { content: ''; position: absolute; top: 4px; left: 4px; width: 20px; height: 20px; border-radius: 3px; background: linear-gradient(to bottom, #fff 0%, #eee 100%); box-shadow: 0 1px 2px rgba(0,0,0,.3); transition: all .2s; border: 1px solid #999; }
[type="checkbox"]:checked + label:before { background: linear-gradient(to bottom, #2d9f5b, #47f58d); border: 1px solid #1e8f4b; }
[type="checkbox"]:checked + label:after { left: 26px; border: 1px solid #0f4827; background: linear-gradient(to bottom, #fff, #79e7a5); }
/*[type="checkbox"]:focus + label:before { box-shadow: 0 0 0 3px rgba(255,255,0,.5); }*/
[type="radio"] { vertical-align: top; margin: 0 3px 0 0; width: 17px; height: 17px; }
[type="radio"] + label { cursor: pointer; min-height: 30px; }
[type="radio"]:not(checked) { position: absolute; opacity: 0; }
[type="radio"]:not(checked) + label { position: relative; padding: .3em 0 0 2.6em; display: inline-block; }
[type="radio"]:not(checked) + label:before { content: ''; position: absolute; top: 0; left: 0; width: 1.8em; height: 1.8em; border-radius: 50%; background: linear-gradient(to bottom, #ececec 0%, #fff 100%); border: 1px solid #ddd; }
[type="radio"]:not(checked) + label:after { content: ''; position: absolute; top: 14px; left: 14px; width: 0; height: 0; border-radius: 50%; background: linear-gradient(to bottom, #fff 0%, #eee 100%); box-shadow: 0 1px 2px rgba(0,0,0,.3); transition: all .2s; border: 1px solid #0b1c4e; opacity: 0; }
[type="radio"]:checked + label:before { background: linear-gradient(to bottom, #2346a9 0%, #3f71ff 100%); border: 1px solid #163898; }
[type="radio"]:checked + label:after { top: .3em; left: .3em; width: 1.2em; height: 1.2em; border: 1px solid #0b1c4e; background: linear-gradient(to bottom, #fff 0%, #93afff 100%); opacity: 1; }
input[type="text"].popupedit, input[type="text"].number, input[type="text"].datetime { background: url(/i/icons/outline/downdown2.png) #fff no-repeat calc(100% - 10px) 50% / 24px; cursor: pointer; padding-right: 44px; }
input[type="text"].popupedit:hover, input[type="text"].number:hover, input[type="text"].datetime:hover { background: url(/i/icons/outline/downdown2.png) no-repeat calc(100% - 10px) 50% / 24px,linear-gradient(to bottom, #fff, #fce8ff); }
input[type="text"].address-edit, input[type="text"].number, input[type="text"].datetime { background: url(/i/icons/outline/downdown2.png) #fff no-repeat calc(100% - 10px) 50% / 24px; cursor: pointer; padding-right: 44px; }
input[type="text"].address-edit:hover, input[type="text"].number:hover, input[type="text"].datetime:hover { background: url(/i/icons/outline/downdown2.png) no-repeat calc(100% - 10px) 50% / 24px,linear-gradient(to bottom, #fff, #fce8ff); }
input[data-reset] + label + .input-reset { display: none; position: absolute; top: calc( 50% - 19px ); z-index: 1; right: 1px; background: url(/i/icons/close.png) 50% / 16px no-repeat; width: 34px; height: 38px; cursor: pointer; opacity: .3; }
input[data-reset]:not(:placeholder-shown) + label + .input-reset,
input[data-reset]:not(:required) + label + .input-reset
    { display: block; }
input[data-reset] + label + .input-reset:hover { opacity: .6; }
textarea { resize: vertical; max-height: 600px; min-height: 100px; max-width: 100%; }
.input-hint { color: #9f997a; font-size: 13px; margin: -5px 5px 0; line-height: 170%; background: #f9f7e5; padding: 10px; border-radius: 5px 5px; text-align: center; }
.autoheight { max-height: 300px; }
.loading-bg {
    position: absolute;
    inset: 0;
    background: url(/i/ajax-bg-50.gif) #0005;
    z-index: 5;
    opacity: .3;
    border-radius: .5em;
}

.search-input-btns {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    /* display: none; */
    display: flex;
}
/* .search-input:focus + label + .search-input-btns {
    display: flex;
} */
/* .search-input:not(:placeholder-shown) + label + .search-input-btns {
    display: flex;
} */
.search-btn-go {
    background: url(/i/icons/search.png) 50% / 50% no-repeat, linear-gradient(0, #ddd, #fff);
    border-radius: 0 5px 5px 0;
    border: 1px solid #ddd;
    cursor: pointer;
    width: 46px;
    margin: 2px;
}
.search-btn-go:hover {
    background: url(/i/icons/search.png) 50% / 50% no-repeat, linear-gradient(0, #eee, #fff);
}
.search-btn-clear {
    background: url(/i/icons/close.png) 50% / 30% no-repeat;
    cursor: pointer;
    width: 36px;
    margin: 2px -1px;
    transition: .2s;
}
.search-btn-clear:hover {
    background: url(/i/icons/close.png) 50% / 30% no-repeat, #fee;
}
.search-input:placeholder-shown + label + .search-input-btns {
    display: none;
}
.search-input:placeholder-shown + label + .search-input-btns .search-btn-clear {
    display: none;
}



.search-panel {
            
}
.search-panel > * {
    min-height: 3em;
    margin-bottom: .5em;
}
.search-panel-input {
    width: 40em;
}
.search-filter, .search-sort {
    box-shadow: 0 0 0 1px #ddd inset;
    cursor: pointer;
    border-radius: 5px;
    margin-left: .5em;
    padding: 0 1em 0 2.5em;
    line-height: 3em;
}
.search-filter {
    background: url(/i/icons/outline/filter.png) 1em 50% / 1em no-repeat, linear-gradient(0, #ddd, #fff);
}
.search-filter:hover {
    background: url(/i/icons/outline/filter.png) 1em 50% / 1em no-repeat, linear-gradient(0, #eee, #fff);
}
.search-sort {
    background: url(/i/icons/outline/sort.png) 1em 50% / 1em no-repeat, linear-gradient(0, #ddd, #fff);
}
.search-sort:hover {
    background: url(/i/icons/outline/sort.png) 1em 50% / 1em no-repeat, linear-gradient(0, #eee, #fff);
}
@media (max-width: 660px) {
    .search-panel {
        margin-left: -1em;
        margin-right: -1em;
    }
    .search-panel-input {
        width: 100%;
    }
    .search-filter {
        margin-left: 0;
    }
}

.codex-editor h1, .codex-editor h2, .codex-editor h3, .codex-editor h4 { text-align: left; }
.ce-block a { text-decoration: none; }

img.emoji { height: 24px; vertical-align: -7px; }

.item-list { display: flex; justify-content: center; flex-wrap: wrap; margin: 10px -20px 0; padding: 0; }
.item-list .item { width: 284px; display: flex; flex-direction: column; justify-content: flex-start; border-radius: 10px; margin: 8px; border: 1px solid transparent; color: #000; text-align: center; padding: 10px 1px; position: relative; }
.item-list .item.item-box { border: 1px solid #ddd; justify-content: center; min-height: 80px; }
.item-list .item:hover { border: 1px solid #27b0ff; box-shadow: 0 0 10px #27b0ff66; }
.item-list .cover { width: 280px; height: 280px; border-radius: 8px; margin: -9px 0 10px; }
.item-list .title { overflow: hidden; max-height: 40px; font-weight: bold; font-family: var(--title-font); word-break: break-word; }
.item-list .item-box .title { padding: 0 10px; }

.product-list .event-item { width: 284px!important; display: flex; justify-content: flex-start!important; padding: 0; border-radius: 10px; overflow: hidden; color: #000; margin: 10px; border: 1px solid transparent; }
.product-list .atom-item { height: 162px!important; width: 284px!important; display: flex; justify-content: flex-start!important; padding: 20px 10px; border-radius: 10px; overflow: hidden; color: #000; margin: 10px; border: 1px solid transparent; }

.atom-post { margin-left: auto; margin-right: auto; max-width: 1060px; text-align: center; }

.atom-list-image { width: 280px; height: 280px; border-radius: 8px; margin-top: 1px; position: relative; box-shadow: 0 0 0 1px #0001 inset; }

/* Маркетплейс */
.product-list { display: flex; justify-content: center; flex-wrap: wrap; margin: 10px -20px 0; }
.product-list .item { width: 300px; display: flex; flex-direction: column; justify-content: center; text-align: center; border-color: #fff; box-shadow: none; align-items: center; position: relative; }
.product-list .item:hover { cursor: pointer; border: 1px solid #27b0ff; box-shadow: 0 0 10px #27b0ff66; }
.product-list .item.inactive:hover { border-color: #fff; box-shadow: none; cursor: unset; }
.product-list .photo { max-width: 200px; max-height: 200px; }
.catalog-product-images { display: flex; justify-content: center; flex-wrap: wrap; margin: 10px auto; max-width: 800px; }
.catalog-product-images .images-div { display: flex; max-width: 480px; flex-direction: column; justify-content: center; }
.catalog-product-images .images-list { display: flex; flex-wrap: wrap; align-content: center; max-width: 480px; }
.catalog-product-images .mod-selector { margin-top: 10px; display: flex; flex-wrap: wrap; }
.catalog-product-images .mod-selector a { background: #eee; border-radius: 5px; padding: 5px 10px; border: none; color: #999; margin: 0 6px 6px 0; }
.catalog-product-images .mod-selector a:hover { box-shadow: 0 0 0 2px #0002 inset; }
.catalog-product-images .mod-selector a.active { background: #666; color: #fff; }

/* Гринд-система */
.grind-btn { margin: 8px; background: #fff; position: relative; border-radius: 10px; width: 80px; height: 80px; padding-top: 5px; user-select: none; text-align: center; }
.grind-btn .title { position: absolute; bottom: -3px; left: -5px; right: -5px; background: #333; color: #fff; padding: 4px 2px; line-height: 100%; border-radius: 5px; font-size: 12px; box-shadow: 0 1px 3px 0 #0009; }
.grind-btn img { width: 64px; }
/*.grind-btn:hover { box-shadow: 0 0 5px #0af, 0 0 0 1px #0af; }*/
.grind-btn:hover .title { background: #046; }
.grind-btn.disabled { opacity: .3; box-shadow: none; cursor: default; }
.grind-btn.disabled .title { background: #999; }
.grind-btn .counter { position: absolute; width: 12px; height: 12px; background: #f22; border-radius: 50%; top: 2px; right: 2px; box-shadow: 0 0 0 2px #fff, 0 1px 3px 3px #930; }
.grind-link, .grind-link:focus { font-size: 12px; box-shadow: 0 1px 3px #0003, 0px -1px 1px #0004 inset; font-weight: bold; font-family: var(--title-font); letter-spacing: 1px; text-align: center; background: linear-gradient(to top, #ddd, #eee); position: relative; color: #000; border-radius: 5px; overflow: hidden; line-height: 24px; border: none; width: 100px; text-shadow: 0px 1px 1px #fffa; }
.grind-link:hover { background: linear-gradient(to top, #9ddafd, #e6f5ff); color: #000; }
.icon-inline { vertical-align: -.2em; width: 1.2em; }

/*.focusbox-bg { display: none; position: fixed; inset: 0; background: #0004; backdrop-filter: blur(1); z-index: 100000; cursor: pointer; }*/
/*.focusbox.focusbox-active {*/
/*    !*position: relative; z-index: 100001;*!*/
/*    !*backdrop-filter: none!important;*!*/
/*    !*filter: none!important;*!*/
/*    position: absolute;*/
/*    transform: translate(0, 0);*/
/*}*/
/*.focusbox-on {*/
/*    filter: brightness(0.5); !* Затемняем всё *!*/
/*    transition: filter 0.3s ease; !* Плавный переход *!*/
/*    backdrop-filter: brightness(1);*/
/*}*/
/*.focusbox-container {*/
/*    position: absolute;*/
/*    inset: 0;*/
/*}*/

.qr { position: relative; }
.qr .value { display: none; }
.qr:not(.nolink) { cursor: pointer; }
/*.qr:after { content: ""; user-select: none; background: url(/i/logo/psiona512.png) 50% / 32px no-repeat #fff; width: 42px; height: 42px; border-radius: 5px; position: absolute; top: calc( 50% - 21px ); left: calc( 50% - 21px ); }*/
[data-tma] { display: none; } /* для контроля версий тма*/

.text-flow span {
    display: inline-block;
    transition: transform 200ms linear;
}

.text-flow span.animate {
    transform: scale(1.08) rotate(-3deg);
}

.uploader {
    cursor: pointer;
    /* box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1)!important; */
    transition: all 0.2s ease!important;
}
.drop-uploader {
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1)!important;
    transition: all 0.2s ease!important;
}
.drop-uploader-box {
    display: block!important;
    background: #ddd;
    border: 1px dashed #bbb;
    color: #888;
    border-radius: 1em;
    padding: 1em;
    text-align: center;
    max-width: 30em;
    margin-left: auto;
    margin-right: auto;
}
.drop-uploader-box.dragover {
    background: #f8f8f8;
    border-color: #bbb;
    color: #555;
}
.uploader.dragover:not(.drop-uploader *), .drop-uploader.dragover {
    box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1)!important;
}

@media (max-width: 1200px) {

    /* базовая разметка  */
    .leftmenu { display: none; }
    .mobile-menu { display: block; }
    .cabinet-content, .cabinet-content-full { width: 100%; padding: 20px 20px 0; }
    .nav-back2 { margin: -10px auto 0; }
    .bottom-menu-item { display: block!important; }
    .bottom-menu-bg { display: block!important; }
    .desktop-bottom-item { display: none; }
    #desktop-scroll2top { display: none!important; }
    .social-desktop-left { display: none!important; }
    .float-menu-bg:not(.v2) { left: 0; width: 100%; height: 70px; border-radius: 0; background: linear-gradient(to top,#fff,#fffc); box-shadow: 0 0 0 1px #0002, 0 0 10px 0 #3b1e4c66; border-bottom: 1px solid #0002; }
    .mobile-menu-items { display: flex; }
    
    .profile-header {
        margin: -20px -20px 0;
        padding: 1em 20px;
    }

    /* универсальные правила */
    .hide1200 { display: none; }
    .block1200 { display: block; }
    .inline1200 { display: inline; }
    .iblock1200 { display: inline-block; }
    .footer { margin: 100px -20px -60px; }
    .asmenu { margin: -20px -20px 30px; }
    .topmenu { display: none; }
    .paging { margin-top: 80px; }
    .paging-panel { bottom: 80px; }

    /* остальное */

}

@media (max-width: 800px) {

    /* базовая разметка  */
    /*h1 { font-size: 24px; }*/
    /*h2 { font-size: 20px; }*/
    .popup-window { padding: 30px 20px; }
    .popup-title { margin: -30px -20px 20px; }
    .popup-footer { margin: 30px -20px -30px; }
    .popup-select-items .item { margin: 1px -10px; }
    .flex-wrap800 { flex-wrap: wrap; justify-content: center; }
    .db-item-card { flex-wrap: wrap; justify-content: center; margin-top: 10px; }
    .db-item-card .col1 { margin-right: 0; }
    .db-item-card .col2 { text-align: center; }
    .db-item-card h1 { text-align: center; margin-top: 20px; }
    .db-item-card .param > span:first-child { margin-bottom: -.6em; }

    .chat-list { margin: -20px -20px; max-width: calc( 100% + 40px ); }

    /*.hub-cover { height: 200px; }*/
    /*.hub-header { margin: 0 -10px 250px; }*/
    /*.hub-cover .avatar { left: calc( 50% - 50px ); top: 180px; width: 100px; height: 100px; }*/
    /*.hub-cover .menu { left: 0; right: 0; top: calc( 100% + 100px ); }*/
    /*.hub-cover h1 { text-align: center; font-size: 20px; margin-top: 5px; }*/
    /*.hub-cover .prefix { left: 0; right: 0; text-align: center; padding: 0; top: calc( 100% + 90px ); font-size: 12px; }*/
    /*.hub-cover .hub-menu { justify-content: center; }*/
    /*.hub-menu-title { text-align: center; }*/

    .atom-popup-image { margin: -30px -20px 30px; }
    .atom-basic-info { flex-wrap: wrap; }

    .atom-article { flex-wrap: wrap; margin-top: 20px; }
    .atom-article .col2 { width: 100%; text-align: center; margin-left: 0; }
    .atom-article h1 { text-align: center; margin-top: 10px; }

    #social-window .social-input { padding: 0 10px; }

    .catalog-product-images { margin-bottom: 20px; flex-direction: column; align-items: center; }
    .catalog-product-images .images-div { width: 100%; }
    .catalog-product-images .images-list { justify-content: center; }
    .catalog-product-images .mod-selector { justify-content: center; }
    .catalog-product-images .mod-selector a { margin: 0 3px 6px; }

    .nav-panel { width: 100%; left: 0; border-radius: 0; height: 130px; box-shadow: none; border-top: 1px solid #9995; }
    .float-menu-gotop { left: unset; right: 10px; bottom: 140px; }
    .float-menu-goroot, .float-menu-goroot:focus { left: 10px; bottom: 140px; }
    .float-menu-server, .float-menu-server:focus { left: 10px; bottom: 140px; font-size: 13px; }
    .nav-item { width: 110px; height: 100px; padding-top: 8px; }
    .nav-item img { width: 56px; border-radius: 9px; }
    .nav-item .text { font-size: 14px; padding: 3px 1px 4px; }
    .nav-item-1 { left: calc( 50% - 235px ); }
    .nav-item-2 { left: calc( 50% - 115px ); }
    .nav-item-3 { left: calc( 50% + 5px ); }
    .nav-item-4 { left: calc( 50% + 125px ); }
    .nav-item .new { width: 22px; height: 22px; top: 0px; right: 0px; border-radius: 0 5px 0 5px; font-size: 10px; padding-top: 4px; }

    .mainmenu-container {
        left: 0;
        width: 100%;
        border-radius: 0;
    }

    #main-login-btn { bottom: 150px; }
    #main-login-btn:hover { bottom: 154px; }

    .hub-top>div:first-child { margin: 3px 18px 0 0; }
    .hub-top>div:first-child img { border-radius: 8px; }
    /*.hub-top h1 { font-size: 20px; }*/
    .hub-top h2 {  }

    /* универсальные правила */
    .hide800 { display: none; }
    .block800 { display: block; }
    .inline800 { display: inline; }
    .iblock800 { display: inline-block; }

    /* остальное */

}

/* условное начало мобилы*/
@media (max-width: 660px) {

    /* базовая разметка  */
    body { font-size: 12px; }
    /* .cabinet-content, .cabinet-content-full { padding-bottom: 420px; } */
    .footer { margin-top: 60px; padding-top: 30px; padding-bottom: 140px; }
    h1 { font-size: 18px; }
    h2 { font-size: 16px; }
    .popup-window { padding: 30px 10px; }
    .popup-title { margin: -30px -10px 20px; }
    .popup-footer { margin: 30px -10px -30px; }
    .popup-select-items .item { margin: 1px 0; }
    .nav-item:hover { box-shadow: none; }
    .nav-item:hover .text { background: #040622bb; }
    .db-item-card .param > span:first-child { margin-bottom: -.2em; }
    
    .profile-header {
        margin: -20px -20px 0;
        padding: 1em 20px;
    }
    .solik-list {
        padding: 0 20px;
    }
    .solik-item {
        width: calc(100vw - 80px) !important;
        max-width: 480px;
        margin-bottom: 2em;
    }

    .chat-list { margin: -20px -10px; max-width: calc( 100% + 20px ); }

    .product-list .event-item { margin: 5px 10px; width: 184px!important; font-size: 14px; }
    .atom-list-image { width: 180px; height: 180px; }

    /*.hub-cover { height: 150px; }*/
    /*.hub-cover h1 { font-size: 16px; }*/
    /*.hub-cover .avatar { top: 130px; }*/

    .atom-popup-image { margin: -30px -10px 30px; }

    .social-preview { padding: 0 10px 20px; }
    .social-preview-container { margin: 0 -10px; }
    #social-window .social-input { padding: 0; }

    .gray-panel .profile-links { margin: 0 -20px; }

    .nav-panel { width: 100%; left: 0; border-radius: 0; height: 100px; }
    .float-menu-gotop { left: unset; right: 10px; bottom: 110px; border-width: 1px; width: 60px; height: 60px; background-size: 32px; background-position-y: 8px; padding-top: 41px; }
    .float-menu-goroot, .float-menu-goroot:focus { left: 10px; bottom: 110px; border-width: 1px; width: 60px; height: 60px; background-size: 32px; background-position-y: 8px; padding-top: 41px; }
    .float-menu-server, .float-menu-server:focus { left: 10px; bottom: 110px; border-width: 1px; width: 60px; height: 60px; font-size: 12px; }
    .float-menu-server:not(.nexus-menu), .float-menu-server:focus:not(.nexus-menu) { background-size: 32px; background-position-y: 8px; padding-top: 41px; }
    .nav-item { width: 90px; height: 86px; padding-top: 5px; bottom: 7px; border-radius: 5px; }
    .nav-item img { width: 52px; border-radius: 8px; }
    .nav-item .text { font-size: 12px; padding: 2px 1px 3px; }
    .nav-item-1 { left: calc( 50% - 189px ); }
    .nav-item-2 { left: calc( 50% - 93px ); }
    .nav-item-3 { left: calc( 50% + 3px ); }
    .nav-item-4 { left: calc( 50% + 99px ); }
    .nav-item .new { width: 20px; height: 20px; font-size: 9px; padding-top: 3px; }

    #main-login-btn { bottom: 180px; }
    #main-login-btn:hover { bottom: 184px; }

    .split-items .split { margin: 0 5px; font-size: 14px; }

    .hub-top { display: block; }
    .hub-top>div:first-child { text-align: center; margin: auto; }
    .hub-top>div:first-child img { border-radius: 8px; }
    .hub-top>div:last-child { text-align: center; margin: 10px 0 0 0 }
    /*.hub-top>div:last-child .split { margin: 0 5px; font-size: 14px; }*/
    .hub-top h1 { text-align: center; font-size: 20px; }
    .hub-top h2 {  }
    .hub-top .hub-menu { justify-content: center }

    .solik-list { padding: 0!important; }

    /* универсальные правила */
    .hide500 { display: none; }
    .block500 { display: block; }
    .inline500 { display: inline; }
    .iblock500 { display: inline-block; }
    .font12a { font-size: 10px; }
    .font14a { font-size: 11px; }
    .font16a { font-size: 13px; }
    .font20a { font-size: 16px; }
    .font28a { font-size: 20px; }
    .r5 { margin-right: 3px!important; }
    .r10 { margin-right: 6px!important; }
    .r20 { margin-right: 12px!important; }
    .r30 { margin-right: 18px!important; }
    .r40 { margin-right: 24px!important; }
    .l5 { margin-left: 3px!important; }
    .l10 { margin-left: 6px!important; }
    .l20 { margin-left: 12px!important; }
    .l40 { margin-left: 24px!important; }
    .top-20 { margin-top: -14px!important; }
    .top-10 { margin-top: -7px!important; }
    .top-5 { margin-top: -3.5px!important; }
    .top5 { margin-top: 3.5px!important; }
    .top10 { margin-top: 7px!important; }
    .top15 { margin-top: 10.5px!important; }
    .top20 { margin-top: 14px!important; }
    .top30, .top30a { margin-top: 21px!important; }
    .top40, .top40a { margin-top: 28px!important; }
    .b10 { margin-bottom: 7px!important; }
    .b20 { margin-bottom: 14px!important; }
    .b30 { margin-bottom: 21px!important; }
    .b40 { margin-bottom: 28px!important; }
    .m10a { margin: 5px 10px!important; }
    /*.flex-list { margin-right: -15px; margin-left: -15px; }*/
    .flex-list > * { width: calc( 50% - 10px ); max-width: 240px; margin: 5px!important; font-size: 9px; }
    .flex-list.flex-list-vm2 > * { margin: 10px 5px!important; }
    .flex-list .box { padding: 10px; border-radius: 5px; }
    /*.flex-item-link, .flex-item-link:focus { border-radius: 5px; }*/
    .flex-list .cover { border-radius: 5px; }
    .flex-list.list-short > * { width: 18em; }
    .atom-item { border-radius: 6px; }
    .atom-item .atom-image-div { width: 50px; height: 50px; }
    .atom-item .atom-cover { width: 50px; height: 50px; border-radius: 6px 0 0 0; }
    .atom-item .atom-icon { width: 9px; vertical-align: -2px; margin-right: 3px; }
    .atom-item .atom-info .bold { height: 21px; }
    .atom-item .atom-info { padding: 6px 3px 0 8px; border-radius: 0 6px 0 0; }
    .atom-item .details { margin-top: 5px; }
    .atom-item .atom-type { line-height: 26px; border-radius: 0 0 6px 0; }
    .atom-item .atom-type img { width: 14px; vertical-align: -3px; margin-right: 2px; }
    .atom-selected { padding-top: 63px; background: url(/i/done.png) 50% 11px / 32px no-repeat #000c; width: 70px; }

    /* формы */
    .form > div { margin: 30px 0 0; }

    /* остальное */
    
}
             
@media (max-width: 480px) {

    .solik-list {
        padding: 0 10px;
    }
    .solik-item {
        width: calc(100vw - 40px) !important;
        max-width: none;
    }

}

@media (max-width: 390px) {

    h1 { font-size: 16px; }
    h2 { font-size: 15px; }

    .nav-panel { height: 90px; }
    .float-menu-gotop { bottom: 110px; }
    .float-menu-goroot, .float-menu-goroot:focus { bottom: 110px; }
    .float-menu-server, .float-menu-server:focus { bottom: 110px; }
    .nav-item img { width: 42px; border-radius: 7px; }
    .nav-item { width: 72px; height: 76px; padding-top: 5px; }
    .nav-item .text { font-size: 11px; padding: 2px 1px 3px; }
    .nav-item-1 { left: calc( 50% - 153px ); }
    .nav-item-2 { left: calc( 50% - 75px ); }
    .nav-item-3 { left: calc( 50% + 3px ); }
    .nav-item-4 { left: calc( 50% + 81px ); }
    .nav-item .new { width: 18px; height: 18px; font-size: 8px; padding-top: 3px; }
    
    .profile-header {
        justify-content: flex-start;
    }

    .font12a { font-size: 9px; }
    .font14a { font-size: 10px; }
    .font16a { font-size: 12px; }
    .font20a { font-size: 15px; }
    .font28a { font-size: 18px; }
    .r5 { margin-right: 2px!important; }
    .r10 { margin-right: 5px!important; }
    .r20 { margin-right: 10px!important; }
    .r30 { margin-right: 15px!important; }
    .r40 { margin-right: 20px!important; }
    .l5 { margin-left: 2px!important; }
    .l10 { margin-left: 5px!important; }
    .l20 { margin-left: 10px!important; }
    .l40 { margin-left: 20px!important; }
    .top-20 { margin-top: -12px!important; }
    .top-10 { margin-top: -6px!important; }
    .top-5 { margin-top: -3px!important; }
    .top5 { margin-top: 3px!important; }
    .top10 { margin-top: 6px!important; }
    .top15 { margin-top: 9px!important; }
    .top20 { margin-top: 12px!important; }
    .top30, .top30a { margin-top: 18px!important; }
    .top40, .top40a { margin-top: 24px!important; }
    .b10 { margin-bottom: 6px!important; }
    .b20 { margin-bottom: 12px!important; }
    .b30 { margin-bottom: 18px!important; }
    .b40 { margin-bottom: 24px!important; }
    .m10a { margin: 4px 8px!important; }

    /*.flex-list { margin-right: -20px; margin-left: -20px; }*/
    .flex-list > * { width: calc( 50% - 8px ); margin: 4px!important; font-size: 8px; }
    .flex-list.flex-list-vm2 > * { margin: 8px 4px!important; }
    /*.flex-item-link, .flex-item-link:focus { border-radius: 3px; }*/
    .flex-list .cover { border-radius: 3px; }
    .flex-list.list-short > * { width: calc(50% - 1.2em); max-width: 16em; }
    .atom-item { border-radius: 3px; }
    .atom-item .atom-info .bold { height: 17px; }
    .atom-item .atom-image-div { width: 40px; height: 40px; }
    .atom-item .atom-cover { width: 40px; height: 40px; border-radius: 3px 0 0 0; }
    .atom-item .atom-info { padding: 4px 4px 0 6px; border-radius: 0 3px 0 0; }
    .atom-item .atom-icon { width: 8px; vertical-align: -2px; margin-right: 2px; }
    .atom-item .details { margin-top: 4px; }
    .atom-item .atom-type { line-height: 20px; border-radius: 0 0 3px 0; }
    .atom-item .atom-type img { width: 12px; vertical-align: -3px; margin-right: 2px; }
    .atom-selected { padding-top: 50px; background: url(/i/done.png) 50% 10px / 24px no-repeat #000c; width: 50px; }

}

@media print {

    .no-print { display: none!important; }

}

@media (min-width: 1900px) {
    html {
        zoom: 1.1;
    }
}
@media (min-width: 2400px) {
    html {
        zoom: 1.4;
    }
}
@media (min-width: 2800px) {
    html {
        zoom: 1.6;
    }
}
@media (min-width: 3700px) {
    html {
        zoom: 2.2;
    }
}
@media (min-width: 5000px) {
    html {
        zoom: 2.8;
    }
}
@media (min-width: 7200px) {
    html {
        zoom: 3.5;
    }
}