1 /* Create some padding at bottom of the page for breathing room */
2 body { padding-bottom: 50px; }
4 /* --------------------------------------------------------------------------
5 * Simple default navbar style adjustements to apply the Evergreen color.
6 * TODO: style other components to match EG color scheme
8 #top-navbar.navbar-default {
9 background: -webkit-linear-gradient(#00593d, #007a54);
10 background-color: #007a54;
13 #top-navbar.navbar-default .navbar-nav>li>a {
16 #top-navbar.navbar-default .navbar-nav>li>a:hover {
19 #top-navbar.navbar-default .navbar-nav > .open > a,
20 #top-navbar.navbar-default .navbar-nav > .open > a:focus,
21 #top-navbar.navbar-default .navbar-nav > .open > a:hover {
22 background-color: #7a7a7a;
24 #top-navbar.navbar-default .navbar-nav>.dropdown>a .caret {
25 border-top-color: #fff;
26 border-bottom-color: #fff;
28 #top-navbar.navbar-default .navbar-nav>.dropdown>a:hover .caret {
29 border-top-color: #ddd;
30 border-bottom-color: #ddd;
33 /* Hatch / WebSockets / Etc. connectivity status indicator */
35 color: rgb(92, 184, 92); /* success */
39 color: #000; /* note: this is not comprehensive; changing Bootstrap's
40 default text color from #333 to #000 would require
44 /* --------------------------------------------------------------------------
45 * Structural modifications
48 #top-content-container {
49 /* allow the primary container to occupy most of the page,
50 * but leave some narrow gutters along the side, much
51 * narrower than the default Bootstrapp container gutters.
58 /* --------------------------------------------------------------------------
59 * Temporaray local CSS required to make angular-ui-bootstrap
60 * version 0.6.0 look right with Bootstrap CSS 3.0
62 .nav, .pagination, .carousel a { cursor: pointer; }
81 /* --------------------------------------------------------------------------
82 /* Form Validation CSS - http://docs.angularjs.org/guide/forms
83 * TODO: these colors are harsh and don't fit the EG color scheme
85 .form-validated input.ng-invalid.ng-dirty {
86 background-color: #FA787E;
88 .form-validated input.ng-valid.ng-dirty {
89 background-color: #78FA89;
91 .form-validated textarea.ng-invalid.ng-dirty {
92 background-color: #FA787E;
94 .form-validated textarea.ng-valid.ng-dirty {
95 background-color: #78FA89;
98 /* --------------------------------------------------------------------------
102 /* change default link color to provide adequate contrast */
109 /* no bootstrap way to directly disable a link. */
111 pointer-events: none;
113 color: #888 !important;
119 #splash-nav .panel-body div {
120 padding-bottom: 10px;
123 table.list tr.selected td { /* deprecated? */
125 background-color: #F5F5F5;
128 .pad-horiz {padding : 0px 10px 0px 10px; }
129 .pad-vert {padding : 20px 0px 10px 0px;}
130 .pad-left {padding-left: 10px;}
131 .pad-right {padding-right: 10px;}
132 .pad-right-min {padding-right: 5px;}
133 .pad-all-min {padding : 5px; }
134 .pad-all-min2 {padding : 2px; }
135 .pad-all {padding : 10px; }
137 #print-div { display: none; }
139 /* by default, give all tab panes some top padding */
140 .tab-pane { padding-top: 20px; }
142 .nav-pills-like-tabs {
143 border-bottom:1px solid #CCC;
147 /* sometimes you don't want buttons scrunched together -- add some margin */
151 /* button styling by Cory LaViska from
152 http://www.abeautifulsite.net/whipping-file-inputs-into-shape-with-bootstrap-3/
158 .btn-file input[type=file] {
166 filter: alpha(opacity=0);
200 /* barcode inputs are everywhere. Let's have a consistent style. */
201 .barcode { width: 16em !important; }
203 /* use strike-through to mark something that has been acknowledged,
204 e.g., a item alert */
205 .acknowledged { text-decoration: line-through; }
207 /* eg-help-popover directive doesn't need a border around its <button> */
208 .no-border.glyphicon-question-sign,
209 .no-border.glyphicon-info-sign {
213 /* bootstrap alerts are heavily padded. use this to reduce */
214 .alert-less-pad {padding: 5px;}
216 /* text displayed inside a <progressbar>, typically the max/progress values */
222 /* embedded UI iframe */
226 .eg-embed-frame iframe {
233 /* Useful for grid-like things that aren't proper grids.
234 * Mimics the grids color scheme. */
236 background-color: rgb(248, 248, 248);
239 /* Reduces the vertical space added by form-group's. Especially useful
240 * for tall modal windows.
242 .tight-vert-form .form-group {
247 /* ----------------------------------------------------------------------
249 * ---------------------------------------------------------------------- */
251 .eg-grid-primary-label {
257 /* odd/even row styling */
258 .eg-grid-content-body > div:nth-child(odd):not(.eg-grid-row-selected) {
259 background-color: rgb(248, 248, 248);
265 border: 1px solid #ccc;
268 .eg-grid-row:not(.eg-grid-header-row):not(.eg-grid-conf-row) {
269 /* TODO: remove, pretty sure this is no longer needed w/ nowrap */
273 .eg-grid-action-row {
275 /* margin should not have to be this large; something's up */
279 .eg-grid-header-row {
283 .eg-grid-header-row > .eg-grid-cell {
284 border-right: 1px solid #CCC;
287 /* vertically align header cell text by treating
288 each header cell as a vertical flex container */
290 flex-direction:column;
291 justify-content:flex-end;
295 /* avoid text flowing into adjacent cells */
297 text-overflow: ellipsis;
301 /* in config display, make cells more obvious */
302 .eg-grid-as-conf .eg-grid-row {
303 border: 1px solid #777;
305 .eg-grid-as-conf .eg-grid-cell {
306 border-right: 1px solid #777;
309 /* stock columns need fixed-width controls */
310 .eg-grid-cell-stock {
315 /* the conf header must be twice the stock flex */
316 .eg-grid-cell-conf-header {
321 .eg-grid-cell-stock-status {
326 /* the conf header must be 4x the stock width when status is present */
327 .eg-grid-cell-conf-header-status {
332 .eg-grid-row-selected {
334 background-color: rgb(201, 221, 225);
335 border-bottom: 1px solid #888;
338 /* Improve ::selection styling by only allowing selection on text
339 * content cells within the main body of the grid. Otherwise, the browser
340 * styles row background and text (all dark blue?) when shift-click or
341 * click-drag is used.
343 .eg-grid-content-body .eg-grid-row {
345 -moz-user-select: none;
346 -webkit-user-select: none;
348 .eg-grid-content-body .eg-grid-cell-content {
350 -moz-user-select: text;
351 -webkit-user-select: text;
353 .eg-grid-cell-content::-moz-selection {
355 background: rgb(201, 221, 225);
356 border-bottom: 1px solid #888;
359 /* patron bill row-highlighting */
362 background-color: #EB0000 !important;
364 .overdue-row a:link, .overdue-row a:visited, .lost-row a:link, .lost-row a:visited {
368 .overdue-row a:visited, .lost-row a:visited {
374 background-color: #FFE1A8 !important;
378 background-color: #800000 !important;
381 .eg-grid-row-selected.overdue-row {
382 background-color: #CF0000 !important;
384 .eg-grid-row-selected.longoverdue-row {
385 background-color: #FFCF75 !important;
387 .eg-grid-row-selected.lost-row {
388 background-color: #5C0000 !important;
391 .eg-grid-cell-content::selection {
393 background: rgb(201, 221, 225);
394 border-bottom: 1px solid #888;
396 .eg-grid-cell-content a {
397 text-decoration: underline;
400 .eg-grid-conf-cell-entry {
406 .eg-grid-conf-cell-entry:not(:first-child) {
407 border-top:1px solid #ccc;
411 background-color: #dff0d8;
412 border-color: #d6e9c6;
415 .eg-grid-conf-row:first-child {
416 /* alignment fix; account for one missing border */
420 .eg-grid-column-move-handle:hover {
424 .eg-grid-column-move-handle-active,
425 .eg-grid-column-move-handle-active:active {
426 /* similar to label-primary, sans padding */
427 background-color: rgb(66, 139, 202);
432 /* similar to label-success, sans padding */
433 background-color: rgb(92, 184, 92);
437 .eg-grid-column-resize-handle {
440 .eg-grid-column-resize-handle:hover {
444 /* for these to be useful, they would have to be applied
445 * to the dragover targets. not yet done */
446 .eg-grid-column-resize-handle-west {
449 .eg-grid-column-resize-handle-east {
453 .eg-grid-column-last-mod {
454 background-color: #78FA89;
462 /* hack to make the header columns line up with the content columns
463 when the scroll bar is visible along the right side of the content
464 columns. TODO: if this varies enough by browser, we'll need to
465 calculate the width instead. */
467 .eg-grid-scroll > .eg-grid-header-row,
468 .eg-grid-scroll > .eg-grid-conf-row {
471 .eg-grid-scroll > .eg-grid-content-body {
476 .eg-grid-column-picker {
486 /* avoid visited "blue" links over black background */
492 /* ----------------------------------------------------------------------
494 * ---------------------------------------------------------------------- */
497 /* simple flex container for consistent-width cell-based structures */
498 .flex-container-striped > .flex-row:nth-child(odd) {
499 background-color: #f5f5f5;
501 .flex-container-bordered .flex-cell {
502 border-bottom: 1px solid #ddd;
507 .flex-row.padded div {
510 .flex-row.left-anchored > div {
515 padding: 4px; /* bootstrap default is much bigger */
518 min-height: 2.5em; /* don't let empty wells scrunch down */
519 margin-bottom: 5px; /* bootstrap default is 20px */
521 .flex-2 { /* meh, convience */
524 .flex-3 { /* meh, convience */
527 .flex-4 { /* meh, convience */
531 /* 768px equals Bootstrap "md" col resizing */
532 @media all and (max-width: 768px) {
534 flex-direction: column;
537 flex-direction: column;
539 #top-navbar.navbar-default .navbar-nav>li>ul>li>a {
542 #top-navbar.navbar-default .navbar-nav>li>ul>li>a:hover {
547 /* optional class to make 'lg' Bootstrap modals even wider */
548 @media (min-width: 768px) {
549 .eg-wide-modal .modal-lg {
554 @media all and (min-width: 768px) {
555 /* scrollable menus for full-size screens */
563 .eg-modal-progress progress {
568 .eg-grid-columns-modal-body {
573 .eg-grid-columns-modal-body .row {
574 padding: 2px 0px 2px 0px;
575 border-bottom: 1px solid #aaa;
578 .eg-grid-columns-modal-body .visible {
580 background-color: rgb(201, 221, 225);
581 border-bottom: 1px solid #888;
589 .eg-grid-tooltip .tooltip-inner {