]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/src/templates/staff/css/style.css.tt2
holds shelf. actions / clear shelf
[working/Evergreen.git] / Open-ILS / src / templates / staff / css / style.css.tt2
1 /* --------------------------------------------------------------------------
2  * Simple default navbar style adjustements to apply the Evergreen color.
3  * TODO: style other components to match EG color scheme
4  */
5 #top-navbar.navbar-default {
6     background: -webkit-linear-gradient(#00593d, #007a54);
7     background-color: #007a54;
8     color: #fff;
9 }
10 #top-navbar.navbar-default .navbar-nav>li>a {
11     color: #fff;
12 }
13 #top-navbar.navbar-default .navbar-nav>li>a:hover {
14     color: #ddd;
15 }
16 #top-navbar.navbar-default .navbar-nav>.dropdown>a .caret {
17     border-top-color: #fff;
18     border-bottom-color: #fff;
19 }
20 #top-navbar.navbar-default .navbar-nav>.dropdown>a:hover .caret {
21     border-top-color: #ddd;
22     border-bottom-color: #ddd;
23 }
24
25 /* status bar along the bottom of the page ------------------------ */
26 /* decrease padding to decrease overall height */
27
28 /** TODO:move status bar items into navbar config entry (top-right)
29  * to avoid body padding weirdness.  Or if we want a permenently
30  * visible status bar, maybe put it just below the navbar.. */
31
32 /* bottom padding ensures no body content is hidden behind the status
33  * bar.  When content reaches the status bar a scroll bar appears */
34 /*body { padding-bottom: 26px; }*/
35
36 #status-bar {
37   min-height:1.8em !important;
38 }
39 #status-bar > ul {
40   margin-right:6px; 
41 }
42 #status-bar li {
43   padding-left: 10px;
44 }
45 #status-bar > li > a {
46   padding-top:5px !important; 
47   padding-bottom:5px !important;
48 }
49 .status-bar-connected {
50   color: rgb(92, 184, 92); /* success */
51 }
52
53 /* --------------------------------------------------------------------------
54  * Structural modifications
55  */
56
57 #top-content-container {
58     /* allow the primary container to occupy most of the page,
59      * but leave some narrow gutters along the side, much 
60      * narrower than the default Bootstrapp container gutters.
61      */
62     width: 95%;
63 }
64
65
66 /* --------------------------------------------------------------------------
67  * Temporaray local CSS required to make angular-ui-bootstrap
68  * version 0.6.0 look right with Bootstrap CSS 3.0
69  */
70 .nav, .pagination, .carousel a { cursor: pointer; }
71 /*
72 .modal {
73     display: block;
74     height: 0;
75     overflow: visible;
76 }
77 .modal-body:before,
78 .modal-body:after {
79     display: table;
80     content: " ";
81 }
82 .modal-header:before,
83 .modal-header:after {
84     display: table;
85     content: " ";
86 }
87 */
88
89 /* --------------------------------------------------------------------------
90 /* Form Validation CSS - http://docs.angularjs.org/guide/forms
91  * TODO: these colors are harsh and don't fit the EG color scheme
92  */
93 .form-validated input.ng-invalid.ng-dirty {
94   background-color: #FA787E;
95 }
96 .form-validated input.ng-valid.ng-dirty {
97   background-color: #78FA89;
98 }
99
100 /* --------------------------------------------------------------------------
101  * Local style
102  */
103
104 #splash-nav .panel-body div {
105     padding-bottom: 10px;
106 }
107
108 table.list tr.selected td { /* deprecated? */
109     color: #2a6496;
110     background-color: #F5F5F5;
111 }
112
113 .pad-horiz {padding : 0px 10px 0px 10px; }
114 .pad-vert {padding : 20px 0px 10px 0px;}
115 .pad-left {padding-left: 10px;}
116 .pad-right {padding-right: 10px;}
117 .pad-all-min {padding : 5px; }
118 .pad-all {padding : 10px; }
119
120 #print-div { display: none; }
121
122 /* by default, give all tab panes some top padding */
123 .tab-pane { padding-top: 20px; }
124
125 .nav-pills-like-tabs {
126     border-bottom:1px solid #CCC;
127 }
128
129 .btn-pad {
130   /* sometimes you don't want buttons scrunched together -- add some margin */
131   margin-left: 10px;
132 }
133
134 .strong-text {
135   font-weight: bold;
136 }
137 .strong-text-1 {
138   font-size: 110%;
139   font-weight: bold;
140 }
141 .strong-text-2 {
142   font-size: 120%;
143   font-weight: bold;
144 }
145 .strong-text-3 {
146   font-size: 130%;
147   font-weight: bold;
148 }
149 .strong-text-4 {
150   font-size: 140%;
151   font-weight: bold;
152 }
153
154 .currency-input {
155   width: 8em;
156 }
157
158 /* barcode inputs are everywhere.  Let's have a consistent style.
159  * In most cases, form-control (etc.) CSS overrides this, so we
160  * still have to use id-based style. */
161 .barcode { width: 16em; }
162
163 /* bootstrap alerts are heavily padded.  use this to reduce */
164 .alert-less-pad {padding: 5px;}
165
166 /* text displayed inside a <progressbar>, typically the max/progress values */
167 .progressbar-text {
168   color:black;
169   white-space:nowrap;
170 }
171
172 /* ----------------------------------------------------------------------
173  * Grid
174  * ---------------------------------------------------------------------- */
175
176 .eg-grid-primary-label {
177   font-weight: bold;
178   font-size: 120%;
179 }
180
181 /* odd/even row styling */
182 .eg-grid-content-body > div:nth-child(odd):not(.eg-grid-row-selected) {
183   background-color: rgb(248, 248, 248);
184 }
185
186 .eg-grid-row {
187   width: 100%;
188   display: flex;
189   border: 1px solid #ccc;
190 }
191
192 .eg-grid-row:not(.eg-grid-header-row):not(.eg-grid-conf-row) {
193   /* TODO: remove, pretty sure this is no longer needed w/ nowrap */
194   /*height: 1.8em;*/
195 }
196
197 .eg-grid-action-row {
198   border: none;
199   /* margin should not have to be this large; something's up */
200   margin-bottom: 12px;
201 }
202
203 .eg-grid-header-row { 
204   font-weight: bold; 
205 }
206
207 .eg-grid-header-row > .eg-grid-cell {
208   border-right: 1px solid #CCC;
209   text-align: center;
210
211   /* vertically align header cell text by treating 
212      each header cell as a vertical flex container */
213   display:flex;
214   flex-direction:column;
215   justify-content:flex-end;
216 }
217
218 .eg-grid-cell {
219   /* avoid text flowing into adjacent cells */
220   white-space: nowrap;
221   text-overflow: ellipsis;
222   overflow: hidden;
223 }
224
225 /* in config display, make cells more obvious */
226 .eg-grid-as-conf .eg-grid-row {
227   border: 1px solid #777;
228 }
229 .eg-grid-as-conf .eg-grid-cell {
230   border-right: 1px solid #777;
231 }
232
233 /* stock columns need fixed-width controls */
234 .eg-grid-cell-stock {
235   width: 2.2em;
236   text-align: center;
237 }
238
239 /* the conf header must be twice the stock flex */
240 .eg-grid-cell-conf-header {
241   width: 4.4em;
242   font-weight: bold;
243 }
244
245 .eg-grid-row-selected {
246   color: rgb(51, 51, 51);
247   background-color: rgb(201, 221, 225);
248   border-bottom: 1px solid #888;
249 }
250
251 /* Improve ::selection styling by only allowing selection on text
252  * content cells within the main body of the grid.  Otherwise, the browser 
253  * styles row background and text (all dark blue?) when shift-click or 
254  * click-drag is used.
255  */
256 .eg-grid-content-body .eg-grid-row {
257   user-select:none;
258   -moz-user-select: none;
259   -webkit-user-select: none;
260 }
261 .eg-grid-content-body .eg-grid-cell-content {
262   user-select:text;
263   -moz-user-select: text;
264   -webkit-user-select: text;
265 }
266 .eg-grid-cell-content::-moz-selection {
267   color: rgb(51, 51, 51);
268   background: rgb(201, 221, 225);
269   border-bottom: 1px solid #888;
270 }
271 .eg-grid-cell-content::selection {
272   color: rgb(51, 51, 51);
273   background: rgb(201, 221, 225);
274   border-bottom: 1px solid #888;
275 }
276
277 .eg-grid-conf-cell-entry {
278   width:98%;
279   text-align:center;
280   padding: 3px;
281 }
282
283 .eg-grid-conf-cell-entry:not(:first-child) {
284   border-top:1px solid #ccc;
285 }
286
287 .eg-grid-conf-row {
288   background-color: #dff0d8;
289   border-color: #d6e9c6;
290 }
291
292 .eg-grid-conf-row:first-child {
293   /* alignment fix; account for one missing border */
294   padding-right: 1px;
295 }
296
297 .eg-grid-column-move-handle:hover {
298   cursor: move;
299 }
300
301 .eg-grid-column-move-handle-active,
302 .eg-grid-column-move-handle-active:active {
303   /* similar to label-primary, sans padding */
304   background-color: rgb(66, 139, 202);
305   color: #fff;
306 }
307
308 .eg-grid-col-hover {
309   /* similar to label-success, sans padding */
310   background-color: rgb(92, 184, 92);
311   color: #fff;
312 }
313
314 .eg-grid-column-resize-handle {
315   height: 100%;
316 }
317 .eg-grid-column-resize-handle:hover {
318   cursor: col-resize;
319 }
320
321 /* for these to be useful, they would have to be applied 
322  * to the dragover targets.  not yet done */
323 .eg-grid-column-resize-handle-west {
324   cursor: w-resize;
325 }
326 .eg-grid-column-resize-handle-east {
327   cursor: e-resize;
328 }
329
330 .eg-grid-menu-item {
331   margin-right: 10px;
332 }
333
334
335 /* hack to make the header columns line up with the content columns
336    when the scroll bar is visible along the right side of the content
337    columns. TODO: if this varies enough by browser, we'll need to
338    calculate the width instead. */
339 /*
340 .eg-grid-scroll > .eg-grid-header-row, 
341 .eg-grid-scroll > .eg-grid-conf-row { 
342   padding-right: 15px;
343 }
344 .eg-grid-scroll > .eg-grid-content-body {
345   overflow-y:scroll; 
346   height: 600px; 
347 }
348 */
349 .eg-grid-column-picker {
350   height: auto;
351   max-height: 400px;
352   overflow: auto;
353   box-shadow: none;
354 }
355
356
357 /* ----------------------------------------------------------------------
358  * /Grid
359  * ---------------------------------------------------------------------- */
360
361
362 /* simple flex container for consistent-width cell-based structures */
363 .flex-container-striped > .flex-row:nth-child(odd) {
364   background-color: #f5f5f5;
365 }
366 .flex-container-bordered .flex-cell {
367   border-bottom: 1px solid #ddd;
368 }
369 .flex-row {
370   display: flex;
371 }
372 .flex-row.padded div {
373   padding: 5px;
374 }
375 .flex-row.left-anchored > div {
376   margin-right: 10px;
377 }
378 .flex-cell {
379   flex: 1;
380   padding: 4px; /* bootstrap default is much bigger */
381 }
382 .flex-cell.well {
383   min-height: 2.5em; /* don't let empty wells scrunch down */
384   margin-bottom: 5px; /* bootstrap default is 20px */
385 }
386 .flex-2 { /* meh, convience */
387   flex: 2;
388 }
389
390 /* TODO: match media size to Bootstrap "md" col resizing */
391 @media all and (max-width: 800px) {
392   .flex-row {
393     flex-direction: column;
394   }
395   .eg-grid-row {
396     flex-direction: column;
397   }
398 }
399
400
401 [%# 
402 vim: ft=css 
403 %]