focalboard/webapp/static/main.css
2020-10-23 20:25:05 -07:00

954 lines
14 KiB
CSS

* {
box-sizing: border-box;
outline: 0;
user-select: none;
}
html, body {
display: flex;
flex-direction: column;
width: 100%;
height: 100%;
color: rgb(55, 53, 47);
}
body {
padding: 0;
margin: 0;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, "Apple Color Emoji", Arial, sans-serif, "Segoe UI Emoji", "Segoe UI Symbol";
/* -webkit-font-smoothing: auto; */
font-size: 14px;
line-height: 24px;
--cursor-color: rgb(55, 53, 47);
}
a {
text-decoration: none;
}
a:hover {
background-color: rgba(192, 192, 255, 0.2);
}
hr {
width: 100%;
height: 1px;
border: none;
color: rgba(55, 53, 47, 0.09);
background-color: rgba(55, 53, 47, 0.09);
margin-bottom: 8px;
}
.page-loading {
margin: 50px auto;
}
.title, h1 {
font-size: 40px;
line-height: 40px;
margin: 0 0 10px 0;
font-weight: 600;
display: inline-block;
}
/* App frame */
#octo-tasks-app {
flex: 1 1 auto;
display: flex;
flex-direction: column;
overflow: auto;
}
#octo-tasks-app #frame,
#octo-tasks-app #main,
#octo-tasks-app .BoardPage {
flex: 1 1 auto;
display: flex;
flex-direction: column;
overflow: auto;
}
/* Sidebar */
.octo-workspace {
flex: 1 1 auto;
display: flex;
flex-direction: row;
overflow: auto;
}
.octo-sidebar {
flex: 0 0 230px;
display: flex;
flex-direction: column;
min-height: 100%;
background-color: rgb(247, 246, 243);
padding: 10px 0;
}
.octo-sidebar.hidden {
position: absolute;
top: 0;
left: 0;
z-index: 15;
min-height: 0;
height: 50px;
width: 50px;
background: none;
padding: 0;
}
.octo-sidebar.hidden > div {
padding: 0;
margin: auto;
}
.octo-sidebar-header {
display: flex;
flex-direction: row;
font-weight: 600;
padding: 3px 20px;
margin-bottom: 5px;
}
.octo-sidebar-item {
display: flex;
flex-direction: row;
font-weight: 500;
padding: 3px 20px;
}
.octo-sidebar-item.subitem {
color: rgba(25, 23, 18, 0.6);
font-weight: 400;
margin-left: 20px;
}
.octo-sidebar-title {
cursor: pointer;
flex-grow: 1;
}
.octo-sidebar-item:hover {
background-color: rgba(0, 0, 0, 0.05);
}
.octo-sidebar-item .octo-button:hover {
background-color: rgba(0, 0, 0, 0.1);
}
/* Main app */
.octo-app {
flex: 1 1 auto;
display: flex;
flex-direction: column;
overflow: auto;
}
.octo-frame {
flex: 1 1 auto;
display: flex;
flex-direction: column;
overflow: scroll;
padding: 10px 95px 50px 95px;
}
.octo-board {
flex: 0 1 auto;
display: flex;
flex-direction: column;
}
.octo-controls {
flex: 0 0 auto;
display: flex;
flex-direction: row;
border-bottom: solid 1px #cccccc;
margin-bottom: 10px;
padding: 10px 10px;
color: #909090;
}
.octo-controls > div {
margin-right: 5px;
white-space: nowrap
}
.octo-board-header {
display: flex;
flex-direction: row;
min-height: 30px;
margin-bottom: 10px;
padding: 0px 10px;
color: #909090;
}
.octo-board-header-cell {
display: flex;
flex-shrink: 0;
align-items: center;
width: 260px;
margin-right: 15px;
vertical-align: middle;
}
.octo-board-header-cell.narrow {
width: 220px;
}
.octo-board-header-cell > div {
margin-right: 5px;
}
.octo-board-body {
display: flex;
flex-direction: row;
padding: 0 10px;
flex: 0 1 auto;
}
.octo-board-column {
flex: 0 0 auto;
display: flex;
flex-direction: column;
width: 260px;
margin-right: 15px;
}
.octo-board-column.narrow {
width: 220px;
}
.octo-board-hidden-item {
display: flex;
flex-direction: row;
}
.octo-board-hidden-item > div {
margin-right: 5px;
}
.dragover {
background-color: rgba(128, 192, 255, 0.4);
}
.octo-board-column > .octo-button {
color: #909090;
text-align: left;
}
.octo-board-card {
flex: 0 0 auto;
position: relative;
display: flex;
flex-direction: column;
align-items: flex-start;
border-radius: 3px;
margin-bottom: 10px;
padding: 7px 10px;
box-shadow: rgba(15, 15, 15, 0.1) 0px 0px 0px 1px, rgba(15, 15, 15, 0.1) 0px 2px 4px;
cursor: pointer;
color: rgb(55, 53, 47);
transition: background 100ms ease-out 0s;
}
.octo-board-card.selected {
background-color: rgba(90, 200, 255, 0.2);
}
.octo-board-card > div {
margin-bottom: 3px;
}
.octo-board-card > .octo-propertyvalue {
font-size: 12px;
line-height: 18px;
}
.octo-board-card:hover {
background-color: #eeeeee;
}
.octo-label {
display: inline-block;
padding: 0 5px;
border-radius: 3px;
line-height: 20px;
color: rgb(55, 53, 47);
white-space: nowrap
}
.octo-spacer {
flex: 1;
}
.octo-clickable,
.octo-button {
text-align: center;
border-radius: 5px;
padding: 0 5px;
min-width: 20px;
cursor: pointer;
overflow: hidden;
transition: background 100ms ease-out 0s;
}
.octo-clickable,
.octo-button:hover {
background-color: #eeeeee;
}
.filled {
color: #ffffff;
background-color: #50aadd;
padding: 2px 10px;
}
.filled:hover {
background-color: #507090;
}
/*-- Modal --*/
.octo-modal-back {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: rgba(90, 90, 90, 0.1);
}
.octo-modal {
position: absolute;
z-index: 10;
min-width: 180px;
box-shadow: rgba(15, 15, 15, 0.1) 0px 0px 0px 1px, rgba(15, 15, 15, 0.1) 0px 2px 4px;
background-color: #ffffff;
}
/*-- Filter modal dialog --*/
.octo-filter-dialog {
min-width: 420px;
padding: 10px;
}
.octo-filterclause {
display: flex;
flex-direction: row;
}
.octo-filterclause > div {
display: flex;
flex-direction: row;
}
/*-- Menu --*/
.menu {
position: absolute;
z-index: 15;
min-width: 180px;
background-color: #ffffff;
border-radius: 3px;
box-shadow: rgba(15, 15, 15, 0.05) 0px 0px 0px 1px, rgba(15, 15, 15, 0.1) 0px 3px 6px, rgba(15, 15, 15, 0.2) 0px 9px 24px;
}
.menu.top {
bottom: 100%;
}
.menu-wrapper {
position: relative;
}
.menu-options {
display: flex;
flex-direction: column;
list-style: none;
padding: 0;
margin: 0;
color: rgb(55, 53, 47);
}
.menu-option {
display: flex;
flex-direction: row;
align-items: center;
font-weight: 400;
padding: 2px 10px;
cursor: pointer;
touch-action: none;
}
.menu-option .menu-name {
flex-grow: 1;
}
.menu-option:hover {
background: rgba(90, 90, 90, 0.1);
}
.menu-separator {
border-bottom: solid 1px #cccccc;
}
.menu-colorbox {
display: inline-block;
margin-right: 8px;
vertical-align: middle;
width: 18px;
height: 18px;
border-radius: 3px;
box-shadow: rgba(15, 15, 15, 0.1) 0px 0px 0px 1px inset;
}
.menu-textbox {
font-weight: 400;
padding: 2px 10px;
cursor: text;
touch-action: none;
border: solid 1px #909090;
border-radius: 3px;
margin: 5px 5px;
}
/*-- Dialog --*/
.dialog-back {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 10;
background-color: rgba(90, 90, 90, 0.5);
}
.dialog {
display: flex;
flex-direction: column;
background-color: #ffffff;
border-radius: 3px;
box-shadow: rgba(15, 15, 15, 0.1) 0px 0px 0px 1px, rgba(15, 15, 15, 0.1) 0px 2px 4px;
margin: 72px auto;
padding: 0;
max-width: 975px;
height: calc(100% - 144px);
overflow-x: hidden;
overflow-y: auto;
}
.dialog > .toolbar {
display: flex;
flex-direction: row;
height: 30px;
margin: 10px
}
.dialog > .content {
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 10px 126px 10px 126px;
}
.dialog > .content.fullwidth {
padding: 10px 0 10px 0;
}
/* Icons */
.octo-hovercontrols {
display: flex;
flex-direction: column;
align-items: flex-start;
min-height: 30px;
width: 100%;
color:rgba(55, 53, 47, 0.4);
}
.octo-icon {
font-family: "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Noto Color Emoji", "Segoe UI Symbol", "Android Emoji", EmojiSymbols;
line-height: 1.5em;
align-self: baseline;
overflow: visible;
}
.octo-icontitle {
flex: 0 0 auto;
display: flex;
flex-direction: row;
align-items: center;
}
.octo-frame > .octo-icontitle .octo-icon {
font-size: 36px;
margin-right: 15px;
}
.octo-board-card .octo-icontitle {
flex: 1 1 auto;
font-weight: 500;
}
.octo-board-card .octo-icontitle .octo-icon {
font-size: 16px;
margin-right: 5px;
}
.octo-table-cell .octo-icontitle .octo-icon {
min-width: 20px;
}
.octo-card-icon {
height: 78px;
min-width: 78px;
font-size: 78px;
line-height: 1.1;
margin-left: 0;
color: #000000;
}
/*-- Comments --*/
.dialog .commentlist {
display: flex;
flex-direction: column;
width: 100%;
}
.commentlist .commentrow {
display: flex;
flex-direction: row;
}
.commentlist .comment {
display: flex;
flex-direction: column;
margin: 5px 0;
}
.comment-header {
display: flex;
flex-direction: row;
position: relative;
}
.comment-avatar {
width: 20px;
height: 20px;
border-radius: 100%;
box-shadow: rgba(15, 15, 15, 0.1) 0px 2px 4px;
}
.comment-username {
font-weight: bold;
margin: 0 5px;
}
.comment-date {
color: #cccccc;
font-size: 12px;
}
.comment-text {
color: rgb(55, 53, 47);
width: 100%;
padding-left: 25px;
}
.commentlist .newcomment {
color: rgba(55, 53, 47, 0.8);
flex-grow: 1;
margin-left: 5px;
}
/*-- Property list --*/
.octo-propertylist {
display: flex;
flex-direction: column;
}
.octo-propertyrow {
display: flex;
flex-direction: row;
margin: 8px 0;
}
.octo-propertyname {
text-align: left;
width: 150px;
margin-right: 5px;
color: #909090;
}
.octo-propertyvalue {
color: rgb(55, 53, 47);
padding: 0 5px;
}
.octo-propertyvalue.empty {
color: #cccccc;
}
/*-- Editable --*/
.octo-editable {
cursor: text;
}
.octo-editable.active {
min-width: 100px;
}
.octo-placeholder {
color: rgba(55, 53, 47, 0.4);
}
[contentEditable=true]:empty:before{
content: attr(placeholder);
display: block;
color: rgba(55, 53, 47, 0.4);
}
.octo-table-cell:focus-within {
background-color: rgba(46, 170, 220, 0.15);
border: 1px solid rgba(46, 170, 220, 0.6);
}
.octo-table-cell .octo-editable {
padding: 0 5px;
display: relative;
left: -5px;
}
.octo-table-cell .octo-editable.octo-editable.active {
overflow: hidden;
}
.octo-propertyvalue.octo-editable.active,
.octo-table-cell .octo-editable.active {
border-radius: 3px;
box-shadow: rgba(15, 15, 15, 0.05) 0px 0px 0px 1px, rgba(15, 15, 15, 0.1) 0px 3px 6px, rgba(15, 15, 15, 0.2) 0px 9px 24px;
}
/* Table */
.octo-table-body {
display: flex;
flex-direction: column;
padding: 0 10px;
}
.octo-table-header,
.octo-table-row,
.octo-table-footer {
display: flex;
flex-direction: row;
border-bottom: solid 1px rgba(55, 53, 47, 0.09);
}
.octo-table-cell {
flex: 0 0 auto;
display: flex;
flex-direction: row;
color: rgba(55, 53, 47);
border-right: solid 1px rgba(55, 53, 47, 0.09);
box-sizing: border-box;
padding: 5px 8px 6px 8px;
width: 150px;
min-height: 32px;
font-size: 14px;
line-height: 21px;
overflow: hidden;
position: relative;
}
.octo-table-cell.title-cell {
width: 280px;
}
.octo-table-cell .octo-propertyvalue {
line-height: 17px;
}
.octo-table-header .octo-table-cell,
.octo-table-header .octo-table-cell .octo-label {
color: rgba(55, 53, 47, 0.6);
}
.octo-table-footer .octo-table-cell {
color: rgba(55, 53, 47, 0.6);
cursor: pointer;
width: 100%;
border-right: none;
padding-left: 15px;
}
.octo-table-footer .octo-table-cell:hover {
background-color: rgba(55, 53, 47, 0.08);
}
.octo-table-cell .octo-button,
.octo-table-cell .octo-editable,
.octo-table-cell .octo-propertyvalue
{
text-align: left;
white-space: nowrap;
}
.octo-button.octo-hovercontrol {
background: rgb(239, 239, 238);
}
.octo-button.square {
padding: 0;
}
.octo-button.active {
color: rgb(45, 170, 220);
font-weight: 500;
}
.octo-hoverbutton {
display: inline-flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
border-radius: 3px;
position: absolute;
right: 6px;
top: 4px;
cursor: pointer;
background: rgb(239, 239, 238);
box-shadow: rgba(15, 15, 15, 0.1) 0px 0px 0px 1px, rgba(15, 15, 15, 0.1) 0px 2px 4px;
padding: 0 5px;
}
.octo-hoverbutton.square {
height: 24px;
width: 24px;
padding: 0;
}
/* Switch */
.octo-switch {
display: flex;
flex-shrink: 0;
box-sizing: content-box;
height: 14px;
width: 26px;
border-radius: 44px;
padding: 2px;
background-color: rgba(135, 131, 120, 0.3);
transition: background 200ms ease 0s, box-shadow 200ms ease 0s;
}
.octo-switch-inner {
width: 14px;
height: 14px;
border-radius: 44px;
background: white;
transition: transform 200ms ease-out 0s, background 200ms ease-out 0s;
transform: translateX(0px) translateY(0px);
}
.octo-switch.on {
background-color: rgba(46, 170, 220);
}
.octo-switch.on .octo-switch-inner {
transform: translateX(12px) translateY(0px);
}
/* Flash Panel */
.flashPanel {
display: flex;
align-items: center;
justify-content: center;
position: absolute;
bottom: 120px;
left: 0;
right: 0;
margin: 0 auto;
padding: 10px 20px;
min-width: 150px;
max-width: 420px;
min-height: 50px;
color: #ffffff;
background: rgba(100, 100, 100, 0.8);
font-size: 18px;
vertical-align: middle;
border-radius: 20px;
z-index: 12;
}
.flashIn {
visibility: visible;
opacity: 1;
}
.flashOut {
visibility: hidden;
opacity: 0;
transition: visibility 0s linear 200ms, opacity ease-in 200ms;
}
/* Markdown Editor */
.octo-editor {
cursor: text;
width: 100%;
}
/* CodeMirror / SimpleMDE / EasyMDE overrides */
.CodeMirror {
padding: 0;
min-height: 0;
}
pre.CodeMirror-line {
padding: 0;
}
.CodeMirror, .CodeMirror-scroll {
flex: 1;
min-height: 0;
line-height: 1.3;
border: none;
}
.CodeMirror-cursor {
border-left: 2px solid var(--cursor-color);
}
.CodeMirror-selected {
background: rgba(147, 204, 231, 0.8) !important;
}
.octo-editor .CodeMirror-scroll {
overflow: hidden !important;
}
/* hide the scrollbars */
.octo-editor .CodeMirror-vscrollbar, .octo-editor .CodeMirror-hscrollbar {
display: none !important;
}
.octo-editor-preview {
min-height: 30px;
}
/* .dialog .octo-editor-preview {
min-height: 100px;
} */
.octo-editor-activeEditor {
overflow: hidden;
border: solid 1px #aaccff;
border-radius: 5px;
}
/* Hover panel */
.octo-hoverpanel {
display: flex;
flex-direction: column;
align-items: flex-start;
min-height: 30px;
width: 100%;
color:rgba(55, 53, 47, 0.4);
}
.octo-block img {
max-width: 500px;
max-height: 500px;
margin: 5px 0;
}
/* This needs to be declared after other co-classes */
.octo-hover-container {
position: relative;
}
.octo-hover-item {
display: none;
}
.octo-hover-container:hover .octo-hover-item {
display: flex;
}
.octo-content {
width: 100%;
margin-right: 50px;
}
.octo-block {
display: flex;
flex-direction: row;
align-items: flex-start;
width: 100%;
padding-right: 126px;
}
.octo-block * {
flex-shrink: 0;
}
.octo-block-margin {
display: flex;
flex-direction: row;
align-items: flex-start;
justify-content: flex-end;
padding-top: 10px;
padding-right: 10px;
width: 126px;
}