/* We use px only for borders for visual consistency. */ /* General Table Styling */ .gtable { margin-top: 0.5em; margin-bottom: 1.5em; /*padding: 0.4em;*/ border: 2px none black; /*border-radius: 4px;*/ width: 100%; overflow: visible; } .gtable a:hover { cursor: pointer; } .gtable div.unmonitored-text, .gtable div.unactionable-text { color: grey; font-style: italic; font-weight: 600; } .etable, .conflict-block-info { display: flex; flex-grow: 1; flex-direction: column; } .elist-row>div.collapse.show { padding-bottom: .2em; } .gthead-row, .ethead-row { display: flex; flex-direction: row; border-bottom: 3px solid Grey; } /* Zebra Striping See Javascript for applying this to .nrows, since CSS3 can't do nth-of-type with classes. JQuery can. NOTE: This color is also hard-coded into */ .nrow-zebra, .erow-zebra { background-color: #f9f9f9; } .gthead-row > div, .ethead-row > div, .conflict-block-header { font-weight: bold; color: #8e8e8e; } /* General Data Cell styling */ .gthead-row > div, .ethead-row > div, .erow > div, .nrow > div, .conflict-block-info > div > div { padding: 0.3rem 0 0 0.5rem; } /* General Bot Row Styling */ .nrow, .erow { display: flex; flex-direction: row; padding-bottom: 1rem !important; } .elist-row:not(:last-of-type), .erow:not(:last-of-type) { /*padding-bottom: .5rem;*/ border-bottom: 2px solid #ddd; } /* Defining Table Column Widths Here */ /* Branch Name */ .namecell { display: inline-flex; flex: 1 0 33%; flex-direction: column; font-weight: 550; width: 100%; overflow: auto; } /* Status */ .statuscell { flex: 0 0 14em; line-height: normal; } .nrow .statuscell > div { vertical-align: top; } /* Optional Actions Column */ .actionscell { flex: 0 0 14em; } /* Last Changelist */ .lastchangecell { flex: 0 0 8em; } /* Cell formatting */ .namecell > div { width: 100%; } .namecell div { display: inherit; } .namecell .element-name { font-size: 1.1em; position: relative; align-self: flex-start; flex: 1 0 auto; max-width: fill-available; max-width: available; max-width: -webkit-fill-available; } /* Override some Bootstrap css messing up the badge alignment, as well as fix issues with the font-awesome icons*/ .namecell .element-name * { align-items: center; align-self: center; display: flex; } .nav-link .badge, .namecell .element-name i, .namecell .element-name .badge { margin: 0 .25em; } .namecell .status-msg { font-style: italic; font-size: .9em; margin-left: 1.5em; flex: 1000 1 auto; /* status-msg should always grow the most. */ align-items: baseline; max-width: -webkit-fill-available; max-width: available; max-width: fill-available; } .namecell .status-msg p { margin-bottom: unset; /* Overriding bootstrap margin */ } .namecell .reconsidering { margin: 0 .25em; } .namecell .reconsidering.badge { /* Overriding bootstrap badge font */ font-size: .9em; font-weight: 500; } .namecell .rootpath { padding-bottom: .4em; flex: 0 0 auto; align-items: flex-start; font-size: small; font-family: monospace; text-align: left; } .namecell .configinfo { margin: 0em .75em; align-self: center; padding: .33rem; font-size: .9rem; } .namecell .configinfo i { vertical-align: text-bottom; /* Fixing alignment issue with Font Awesome icon */ } .namecell .info-block { max-width: 50em; margin: 0.5em; padding: 0 0.4em; border-radius: 0.7rem; line-height: normal; border: 2px solid gainsboro; font-size: 0.8rem; } .namecell .info-block p { margin-top: .5em; } .info-block.pause { background-color: lightgoldenrodyellow; } .info-block.conflict { background-color: #eeb8b8; } .namecell .pause-info { white-space: pre-wrap; } /*.namecell pre.pause-info { margin-top: .5em; width: 75%; background-color: #E8E8E8; padding: 0.75em; border: 1px solid gray; border-radius: 4px; }*/ .namecell .pause-div-label { color: #330066 } .statuscell .important-status { font-weight: 550; text-shadow: 1px 1px 0px rgb(105, 105, 105, 0.1); line-height: 1.75em; } .statuscell .important-status:not(:first-of-type) { margin-top: 0.75em; } .statuscell .blockage-details, .statuscell .pause-details { font-size: 0.75em; } .statuscell .status-msg { font-style: italic; font-size: .9em; } .lastchangecell .catchup { font-size: 0.75em; line-height: 1.1; } .lastchangecell .last-good-cl { font-size: x-small; color: green; display: block; text-align: right; margin-right: 0.5em; } /* EdgeBot Row, below NodeBot Row Parent Do not use a margin or padding on the top, or the canvas will look bad*/ .elist-row { flex-direction: column; /*margin: 0 0 .5em 0; padding: 0 0 .2em 0;*/ border-top: 0px none; } /* Remove bootstrap card border */ .elist-row .card { border: 0 none; } /* Do not use a margin or padding on the top, or the canvas will look bad*/ .elist-row .card-body { flex-direction: row; position: relative; /* Define a position so this becomes the offset parent for our dynamic canvases later on */ padding: 0; /* To match .etable padding-top */ } .elist-canvas, .elist-canvas canvas { width: 3.5em; display: block; padding: 0; margin: 0 !important; overflow: visible !important; height: auto; } /* Cheating here a little bit -- the following actually stylizes the main page (index.html) */ div#branchList { display: flex; flex-direction: column; flex: 1 0; } div#branchList>div { display: inline-flex; flex-direction: column; width: 100%; flex: 1 0; } div#branchList ul.nav.nav-tabs { border-top-left-radius: 6px; border-top-right-radius: 6px; background-color: #f5f5f5; padding: 0.5em 0.5em 0 0.5em; border-bottom-color: black; } div#branchList ul.nav.nav-tabs>li.nav-item { text-align: center; flex: 1 1 auto; min-width: 100px; max-width: 25%; margin-bottom: unset; /* Overriding bootstrap value */ } div#branchList ul.nav.nav-tabs>li.nav-item>a { display: inline-block; min-height: 99%; width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } div#branchList ul.nav.nav-tabs>li.nav-item>.nav-link { padding: 0.5em 1em .25em 1em; } /* 'nav-item-active' is a custom class which changes when tabs are clicked. Relevant listener code can be found in renderBranchList() in main.js */ div#branchList ul.nav.nav-tabs>li.nav-item-active { order: 999; flex: 0 0 33%; margin: 0 0 -2px auto; max-width: unset; } div#branchList ul.nav.nav-tabs>li.nav-item-active>a { border-color: black; border-bottom-color: #fff; /* Match the body of the page */ background-color: #fff; box-shadow: -4px -2px 4px -2px Gray; } div#branchList ul.nav.nav-tabs>li.nav-item:not(.nav-item-active)>a { border: 1px solid #d6d6d6; border-bottom: 1px solid #e0e0e0; box-shadow: -3px 1px 3px -3px Gray; } div#branchList ul.nav.nav-tabs>li.nav-item:not(.nav-item-active)>a:hover, div#branchList ul.nav.nav-tabs>li.nav-item:not(.nav-item-active)>a:focus { border-color: #adadad; border-bottom-color: white; background-color: white; box-shadow: -6px -1px 5px -5px Gray; transform: scale(1.05); transform-origin: bottom; }