1 /* --------------------------------------------------------------------------
2 * Simple default navbar style adjustements to apply the Evergreen color.
3 * TODO: style other components to match EG color scheme
5 #top-navbar.navbar-default {
6 background: -webkit-linear-gradient(#00593d, #007a54);
7 background-color: #007a54;
10 #top-navbar.navbar-default .navbar-nav>li>a {
13 #top-navbar.navbar-default .navbar-nav>li>a:hover {
16 #top-navbar.navbar-default .navbar-nav > .open > a,
17 #top-navbar.navbar-default .navbar-nav > .open > a:focus,
18 #top-navbar.navbar-default .navbar-nav > .open > a:hover {
19 background-color: #7a7a7a;
21 #top-navbar.navbar-default .navbar-nav>.dropdown>a .caret {
22 border-top-color: #fff;
23 border-bottom-color: #fff;
25 #top-navbar.navbar-default .navbar-nav>.dropdown>a:hover .caret {
26 border-top-color: #ddd;
27 border-bottom-color: #ddd;
30 /* Hatch / WebSockets / Etc. connectivity status indicator */
32 color: rgb(92, 184, 92); /* success */
36 color: #000; /* note: this is not comprehensive; changing Bootstrap's
37 default text color from #333 to #000 would require
41 /* --------------------------------------------------------------------------
42 * Structural modifications
45 #top-content-container {
46 /* allow the primary container to occupy most of the page,
47 * but leave some narrow gutters along the side, much
48 * narrower than the default Bootstrapp container gutters.
55 /* --------------------------------------------------------------------------
56 * Temporaray local CSS required to make angular-ui-bootstrap
57 * version 0.6.0 look right with Bootstrap CSS 3.0
59 .nav, .pagination, .carousel a { cursor: pointer; }
78 /* --------------------------------------------------------------------------
79 /* Form Validation CSS - http://docs.angularjs.org/guide/forms
80 * TODO: these colors are harsh and don't fit the EG color scheme
82 .form-validated input.ng-invalid.ng-dirty {
83 background-color: #FA787E;
85 .form-validated input.ng-valid.ng-dirty {
86 background-color: #78FA89;
88 .form-validated textarea.ng-invalid.ng-dirty {
89 background-color: #FA787E;
91 .form-validated textarea.ng-valid.ng-dirty {
92 background-color: #78FA89;
95 /* --------------------------------------------------------------------------
99 /* change default link color to provide adequate contrast */
106 /* no bootstrap way to directly disable a link. */
108 pointer-events: none;
110 color: #888 !important;
113 #splash-nav .panel-body div {
114 padding-bottom: 10px;
117 table.list tr.selected td { /* deprecated? */
119 background-color: #F5F5F5;
122 .pad-horiz {padding : 0px 10px 0px 10px; }
123 .pad-vert {padding : 20px 0px 10px 0px;}
124 .pad-left {padding-left: 10px;}
125 .pad-right {padding-right: 10px;}
126 .pad-right-min {padding-right: 5px;}
127 .pad-all-min {padding : 5px; }
128 .pad-all-min2 {padding : 2px; }
129 .pad-all {padding : 10px; }
131 #print-div { display: none; }
133 /* by default, give all tab panes some top padding */
134 .tab-pane { padding-top: 20px; }
136 .nav-pills-like-tabs {
137 border-bottom:1px solid #CCC;
141 /* sometimes you don't want buttons scrunched together -- add some margin */
145 /* button styling by Cory LaViska from
146 http://www.abeautifulsite.net/whipping-file-inputs-into-shape-with-bootstrap-3/
152 .btn-file input[type=file] {
160 filter: alpha(opacity=0);
192 /* barcode inputs are everywhere. Let's have a consistent style. */
193 .barcode { width: 16em !important; }
195 /* use strike-through to mark something that has been acknowledged,
196 e.g., a copy alert */
197 .acknowledged { text-decoration: line-through; }
199 /* bootstrap alerts are heavily padded. use this to reduce */
200 .alert-less-pad {padding: 5px;}
202 /* text displayed inside a <progressbar>, typically the max/progress values */
208 /* embedded UI iframe */
212 .eg-embed-frame iframe {
219 /* Useful for grid-like things that aren't proper grids.
220 * Mimics the grids color scheme. */
222 background-color: rgb(248, 248, 248);
225 /* Reduces the vertical space added by form-group's. Especially useful
226 * for tall modal windows.
228 .tight-vert-form .form-group {
233 /* ----------------------------------------------------------------------
235 * ---------------------------------------------------------------------- */
237 .eg-grid-primary-label {
243 /* odd/even row styling */
244 .eg-grid-content-body > div:nth-child(odd):not(.eg-grid-row-selected) {
245 background-color: rgb(248, 248, 248);
251 border: 1px solid #ccc;
254 .eg-grid-row:not(.eg-grid-header-row):not(.eg-grid-conf-row) {
255 /* TODO: remove, pretty sure this is no longer needed w/ nowrap */
259 .eg-grid-action-row {
261 /* margin should not have to be this large; something's up */
265 .eg-grid-header-row {
269 .eg-grid-header-row > .eg-grid-cell {
270 border-right: 1px solid #CCC;
273 /* vertically align header cell text by treating
274 each header cell as a vertical flex container */
276 flex-direction:column;
277 justify-content:flex-end;
281 /* avoid text flowing into adjacent cells */
283 text-overflow: ellipsis;
287 /* in config display, make cells more obvious */
288 .eg-grid-as-conf .eg-grid-row {
289 border: 1px solid #777;
291 .eg-grid-as-conf .eg-grid-cell {
292 border-right: 1px solid #777;
295 /* stock columns need fixed-width controls */
296 .eg-grid-cell-stock {
301 /* the conf header must be twice the stock flex */
302 .eg-grid-cell-conf-header {
307 .eg-grid-row-selected {
309 background-color: rgb(201, 221, 225);
310 border-bottom: 1px solid #888;
313 /* Improve ::selection styling by only allowing selection on text
314 * content cells within the main body of the grid. Otherwise, the browser
315 * styles row background and text (all dark blue?) when shift-click or
316 * click-drag is used.
318 .eg-grid-content-body .eg-grid-row {
320 -moz-user-select: none;
321 -webkit-user-select: none;
323 .eg-grid-content-body .eg-grid-cell-content {
325 -moz-user-select: text;
326 -webkit-user-select: text;
328 .eg-grid-cell-content::-moz-selection {
330 background: rgb(201, 221, 225);
331 border-bottom: 1px solid #888;
333 .eg-grid-cell-content::selection {
335 background: rgb(201, 221, 225);
336 border-bottom: 1px solid #888;
338 .eg-grid-cell-content a {
339 text-decoration: underline;
342 .eg-grid-conf-cell-entry {
348 .eg-grid-conf-cell-entry:not(:first-child) {
349 border-top:1px solid #ccc;
353 background-color: #dff0d8;
354 border-color: #d6e9c6;
357 .eg-grid-conf-row:first-child {
358 /* alignment fix; account for one missing border */
362 .eg-grid-column-move-handle:hover {
366 .eg-grid-column-move-handle-active,
367 .eg-grid-column-move-handle-active:active {
368 /* similar to label-primary, sans padding */
369 background-color: rgb(66, 139, 202);
374 /* similar to label-success, sans padding */
375 background-color: rgb(92, 184, 92);
379 .eg-grid-column-resize-handle {
382 .eg-grid-column-resize-handle:hover {
386 /* for these to be useful, they would have to be applied
387 * to the dragover targets. not yet done */
388 .eg-grid-column-resize-handle-west {
391 .eg-grid-column-resize-handle-east {
395 .eg-grid-column-last-mod {
396 background-color: #78FA89;
404 /* hack to make the header columns line up with the content columns
405 when the scroll bar is visible along the right side of the content
406 columns. TODO: if this varies enough by browser, we'll need to
407 calculate the width instead. */
409 .eg-grid-scroll > .eg-grid-header-row,
410 .eg-grid-scroll > .eg-grid-conf-row {
413 .eg-grid-scroll > .eg-grid-content-body {
418 .eg-grid-column-picker {
426 /* ----------------------------------------------------------------------
428 * ---------------------------------------------------------------------- */
431 /* simple flex container for consistent-width cell-based structures */
432 .flex-container-striped > .flex-row:nth-child(odd) {
433 background-color: #f5f5f5;
435 .flex-container-bordered .flex-cell {
436 border-bottom: 1px solid #ddd;
441 .flex-row.padded div {
444 .flex-row.left-anchored > div {
449 padding: 4px; /* bootstrap default is much bigger */
452 min-height: 2.5em; /* don't let empty wells scrunch down */
453 margin-bottom: 5px; /* bootstrap default is 20px */
455 .flex-2 { /* meh, convience */
458 .flex-3 { /* meh, convience */
461 .flex-4 { /* meh, convience */
465 /* TODO: match media size to Bootstrap "md" col resizing */
466 @media all and (max-width: 800px) {
468 flex-direction: column;
471 flex-direction: column;
475 /* optional class to make 'lg' Bootstrap modals even wider */
476 @media (min-width: 768px) {
477 .eg-wide-modal .modal-lg {
482 @media all and (min-width: 800px) {
483 /* scrollable menus for full-size screens */
491 .eg-modal-progress progress {
496 .eg-grid-columns-modal-body {
501 .eg-grid-columns-modal-body .row {
502 padding: 2px 0px 2px 0px;
503 border-bottom: 1px solid #aaa;
506 .eg-grid-columns-modal-body .visible {
508 background-color: rgb(201, 221, 225);
509 border-bottom: 1px solid #888;