egroupware_official/kdots/assets/styles/framework.less
nathan 63722dcd9c Kdots header work
- Make active app icon slightly larger to indicate active instead of colored track
- Change framework header background to white
- App header background to application color
- define app colors in framework
2024-07-04 16:03:51 -06:00

302 lines
5.4 KiB
Plaintext

html, body {
width: 100vw;
height: 100vh;
overflow: clip;
padding: 0px;
margin: 0px;
}
.egw_menu::part(popup)
{
z-index: var(--sl-z-index-dropdown);
}
egw-framework#egw_fw_basecontainer {
--icon-size: 32px;
--sl-tooltip-arrow-size: 0;
/* Internals */
&::part(status-split) {
/* This limits the max size of the status panel */
--max: 32px;
}
&::part(header) {
--icon-size: 32px;
--tab-icon-size: var(--icon-size);
--tab-icon-size-active: 40px;
color: var(--primary-background-color);
gap: var(--sl-spacing-medium);
font-size: var(--icon-size);
}
/* Content slotted inside */
[slot="logo"] img {
max-width: 220px;
max-height: var(--icon-size);
display: block;
text-align: center;
}
sl-icon-button[slot="header"], et2-image[slot="header"] {
font-size: var(--icon-size);
color: inherit
}
div#egw_fw_toggler {
position: initial;
display: none;
}
#egw_fw_topmenu_info_items {
position: relative;
order: 99;
margin-left: auto;
display: flex;
.topmenu_info_item {
min-width: 1em;
min-height: 1em;
}
}
div#egw_fw_sidebar_r {
position: initial;
top: initial;
et2-avatar, et2-lavatar {
--size: 26px;
}
}
.egw_fw_ui_sidemenu_entry_header {
display: flex;
gap: var(--sl-spacing-medium);
padding-left: 1em;
}
}
/*** HEADER ***/
#egw_fw_topmenu_info_items {
display: flex;
flex-direction: row-reverse;
background-color: #fbfbfb;
& > * {
border: none;
background: transparent;
}
et2-avatar {
--size: var(--icon-size);
&::part(base) {
vertical-align: initial;
}
}
.topmenu_info_item {
height: var(--icon-size);
width: var(--icon-size);
border-left: 1px solid #bfc0bf;
display: inline-block;
padding-left: 0px;
background-size: 20px;
background-position: center center;
background-repeat: no-repeat;
cursor: pointer;
&:hover {
background-color: var(--sl-input-background-color-hover);
}
}
#topmenu_info_timer {
order: 1;
position: relative;
display: flex;
align-items: center;
padding: 0px;
#topmenu_timer {
display: block;
width: 100%;
}
&:hover {
cursor: pointer;
}
&:before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-image: url(../../../timesheet/templates/default/images/navbar.svg);
background-repeat: no-repeat;
background-size: 32px;
background-position: center center;
filter: opacity(0.3);
}
}
#topmenu_info_user_avatar {
sl-menu-item et2-image {
width: 1em;
}
}
button#topmenu_info_search {
background-image: url(../../../api/templates/default/images/topmenu_items/search.svg);
}
}
#topmenu_info_print_title {
background-image: url(../../../api/templates/default/images/print.svg);
span {
width: 45px;
height: 45px;
display: inline-block;
}
}
/*** END HEADER ***/
/*** APPLICATION ***/
egw-app {
&::part(name) {
display: flex;
align-items: center;
text-wrap: nowrap;
}
&::part(content) {
flex-direction: column;
overflow-y:hidden;
}
& > div[id] > div {
height: 100%;
}
}
/* Individual application colors, should go in each app's CSS */
body, :root {
// Color code for applications - not used by framework
--addressbook-color: #003366;
--admin-color: #333333;
--bookmarks-color: #CC6633;
--calendar-color: #CC0033;
--filemanager-color: #ff9933;
--infolog-color: #660033;
--mail-color: #006699;
--projectmanager-color: #669999;
--resources-color: #003333;
--timesheet-color: #330066;
--tracker-color: #009966;
--wiki-color: #797979;
--ranking-color: #404040;
--default-color: #797979;
--kanban-color: #4663c8;
egw-app[name="addressbook"] {
--application-color: var(--addressbook-color);
}
egw-app[name="admin"] {
--application-color: var(--admin-color);
}
egw-app[name="bookmarks"] {
--application-color: var(--bookmarks-color);
}
egw-app[name="calendar"] {
--application-color: var(--calendar-color);
}
egw-app[name="filemanager"] {
--application-color: var(--filemanager-color);
}
egw-app[name="infolog"] {
--application-color: var(--infolog-color);
}
egw-app[name="mail"] {
--application-color: var(--mail-color);
}
egw-app[name="projectmanager"] {
--application-color: var(--projectmanager-color);
}
egw-app[name="resources"] {
--application-color: var(--resources-color);
}
egw-app[name="timesheet"] {
--application-color: var(--timesheet-color);
}
egw-app[name="tracker"] {
--application-color: var(--tracker-color);
}
egw-app[name="wiki"] {
--application-color: var(--wiki-color);
}
egw-app[name="ranking"] {
--application-color: var(--ranking-color);
}
}
/*** END APPLICATION ***/
/*** WIDGETS ***/
/* This should mostly go away with webcomponents */
/* Get nextmatch sizing more nicely without messing with dynheight */
div.et2_nextmatch {
display: flex;
flex-direction: column;
align-items: stretch;
height: 100%;
width: 100%;
overflow: hidden;
& > div:not(:first-child) {
flex: 1 1 100%;
max-height: 100%;
}
.egwGridView_outer {
height: 100%;
thead tr th.optcol span.selectcols {
height: 9px;
padding: 4px 14px 0 2px;
margin-top: 4px;
background-image: url(../../../api/templates/default/images/selectcols.svg);
background-repeat: no-repeat;
background-size: 10px 10px;
display: inline-block;
background-position: top;
}
}
}
.egwGridView_scrollarea {
overflow-x: hidden;
overflow-y: auto;
}
/*** END WIDGETS ***/