/** * @license GNU AGPL version 3 or any later version * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ #side-menu { position: fixed; top: 0; left: 0; height: 100vh; width: 100%; max-width: 250px; background: linear-gradient(90deg, var(--side-menu-background-color, #333) 0%, var(--side-menu-background-color-to, #333) 100%); z-index: 3000; color: var(--side-menu-text-color, #fff); box-shadow: rgba(0, 0, 0, 0.22) 0px 25.6px 57.6px 0px, rgba(0, 0, 0, 0.18) 0px 4.8px 14.4px 0px; display: none; } #side-menu.open { display: block; } #header .side-menu-opener { margin-left: 0px; } .side-menu-settings { margin-right: 9px; margin-top: 2px; float: right; line-height: 34px; height: 28px; display: none; } .side-menu-settings a { color: var(--side-menu-text-color, #fff); display: block; padding: 4px 7px; } .side-menu-settings:hover a, .side-menu-settings a:active, .side-menu-settings a:focus { background: var(--side-menu-current-app-background-color, #444); } .side-menu-settings img { vertical-align: bottom; margin-left: 3px; } #side-menu.open .side-menu-settings { display: block; } .side-menu-opener { background: var(--side-menu-opener, url('../img/side-menu-opener.svg')); background-color: transparent !important; height: 40px !important; width: 40px !important; border-radius: 0 !important; border: 0 !important; padding-right: 12px !important; padding-left: 12px !important; margin-left: 5px !important; margin-left: 3px !important; } .side-menu-opener:active { background-color: var(--color-background-dark) !important; } .side-menu-closer { background: url('../img/side-menu-opener-closer.svg'); display: none; } #side-menu.hide-opener .side-menu-opener, .side-menu-opener.hide, #side-menu.hide { display: none !important; } .side-menu-apps-list { height: calc(100vh - 150px); z-index: 2200; position: fixed; top: 150px; width: 100%; max-width: 250px; overflow: auto; } .side-menu-app-icon { width: 20px; vertical-align: top; margin-right: 10px; filter: invert(var(--side-menu-icon-invert-filter, 0%)); opacity: var(--side-menu-icon-opacity, 1); } .side-menu-app-icon svg { vertical-align: middle; margin-top: -3px; } .side-menu-app-icon .app-icon-notification { display: none; } .side-menu-app a { line-height: 30px; color: var(--side-menu-text-color, #fff); display: block; padding: 7px 0 5px 15px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .side-menu-app a:hover, .side-menu-app.active, .side-menu-app a:focus { background: var(--side-menu-current-app-background-color, #444); } .side-menu-logo { text-align: center; } .side-menu-logo img { max-width: 60%; max-height: 100px; } .side-menu-header { height: 150px; width: 100%; z-index: 2300; max-width: 250px; position: fixed; padding-top: 2px; top: 0; } #side-menu.hide-opener .side-menu-logo { margin-top: 20px; } #side-menu-loader { position: fixed; top: 0; left: 0; width: 100%; z-index: 3001; } #side-menu-loader-bar { height: 4px; background: var(--side-menu-loader-color, #0e75ac); width: 0; transition-property: width; } #side-menu.side-menu-big, #side-menu.side-menu-with-categories { max-width: 100%; height: auto; } .side-menu-big .side-menu-header, .side-menu-with-categories .side-menu-header { height: auto; } .side-menu-big .side-menu-apps-list, .side-menu-with-categories .side-menu-apps-list { height: auto; position: static; max-width: 100vw; overflow: auto; } .side-menu-big .side-menu-app a, .side-menu-with-categories .side-menu-app a { padding: 7px 0 7px 7px; } .side-menu-categories-wrapper { padding-bottom: 70px; } .side-menu-categories { max-height: calc(100vh - 50px); overflow: auto; position: relative; top: 50px; display: flex; flex-wrap: wrap; justify-content: center; padding: 0 10% 0 10%; } .side-menu-category { padding: 10px 20px; flex: 1 1 auto; } .side-menu-category-title { padding-left: 10px; color: var(--side-menu-text-color, #fff); } .side-menu-loader { text-align: center; } .side-menu-loader svg { width: 38px; margin: auto; stroke: var(--side-menu-text-color, #fff); } .side-menu-with-categories .side-menu-app-icon, .side-menu-big .side-menu-app-icon { vertical-align: middle; margin-top: -2px; } .side-menu-always-displayed #header, .side-menu-always-displayed body { width: calc(100% - 50px) !important; } .side-menu-always-displayed body { position: absolute; left: 50px; } .side-menu-always-displayed #side-menu { display: block; } .side-menu-always-displayed .side-menu-apps-list { height: calc(100vh - 49px); top: 49px; overflow: hidden; } .side-menu-always-displayed .side-menu-apps-list:hover { overflow: auto; } .side-menu-always-displayed #side-menu, .side-menu-always-displayed .side-menu-header, .side-menu-always-displayed .side-menu-apps-list { width: 50px; } .side-menu-always-displayed #side-menu .side-menu-app-text, .side-menu-always-displayed #header .side-menu-opener, .side-menu-always-displayed .side-menu-logo { display: none; } .side-menu-always-displayed #side-menu .side-menu-header { height: 49px; } .side-menu-always-displayed #side-menu.open, .side-menu-always-displayed #side-menu.open .side-menu-apps-list, .side-menu-always-displayed #side-menu.open .side-menu-header { width: 100%; } .side-menu-always-displayed #side-menu.open .side-menu-app-text { display: inline; } .side-menu-always-displayed .app-navigation--close { transform: translateX(calc(-100% + 50px)) !important; } #side-menu.side-menu-with-categories { max-width: 290px; height: 100vh; } .side-menu-with-categories .side-menu-categories { display: block; padding: 0; } .side-menu-with-categories .side-menu-category { padding: 10px 0; } .side-menu-always-displayed #body-settings, #body-settings.body-settings-side-menu { overflow-x: visible; } @media screen and (max-width: 1024px) { #side-menu.side-menu-big { max-width: 290px; } .side-menu-categories { display: block; padding: 0; } .side-menu-category { padding: 10px 0; } #side-menu.side-menu-big { height: 100vh; } } @media screen and (min-width: 1024px) { .side-menu-closer { display: block; float: right; margin-right: 9px; } .side-menu-big .side-menu-header { max-width: 100%; } }