GUI CSS: Decoupled remaining view styles for inventory (CMK-1171)
[check_mk.git] / web / htdocs / themes / facelift / scss / _views.scss
blob5e2f0cf4fe2591f3ec531ce542e1bf86d2c9728c
1 /*
2 +------------------------------------------------------------------+
3 |             ____ _               _        __  __ _  __           |
4 |            / ___| |__   ___  ___| | __   |  \/  | |/ /           |
5 |           | |   | '_ \ / _ \/ __| |/ /   | |\/| | ' /            |
6 |           | |___| | | |  __/ (__|   <    | |  | | . \            |
7 |            \____|_| |_|\___|\___|_|\_\___|_|  |_|_|\_\           |
8 |                                                                  |
9 | Copyright Mathias Kettner 2012             mk@mathias-kettner.de |
10 +------------------------------------------------------------------+
12 This file is part of Check_MK.
13 The official homepage is at http://mathias-kettner.de/check_mk.
15 check_mk is free software;  you can redistribute it and/or modify it
16 under the  terms of the  GNU General Public License  as published by
17 the Free Software Foundation in version 2.  check_mk is  distributed
18 in the hope that it will be useful, but WITHOUT ANY WARRANTY;  with-
19 out even the implied warranty of  MERCHANTABILITY  or  FITNESS FOR A
20 PARTICULAR PURPOSE. See the  GNU General Public License for more de-
21 ails.  You should have  received  a copy of the  GNU  General Public
22 License along with GNU Make; see the file  COPYING.  If  not,  write
23 to the Free Software Foundation, Inc., 51 Franklin St,  Fifth Floor,
24 Boston, MA 02110-1301 USA.
27 /*-------------------------------------------------------------------------.
28 |  _____     _            ___      ___        _   _                        |
29 | |_   _|_ _| |__  ___   ( _ )    / _ \ _ __ | |_(_) ___  _ __  ___        |
30 |   | |/ _` | '_ \/ __|  / _ \/\ | | | | '_ \| __| |/ _ \| '_ \/ __|       |
31 |   | | (_| | |_) \__ \ | (_>  < | |_| | |_) | |_| | (_) | | | \__ \       |
32 |   |_|\__,_|_.__/|___/  \___/\/  \___/| .__/ \__|_|\___/|_| |_|___/       |
33 |                                      |_|                                 |
34 +--------------------------------------------------------------------------+
35 | The navi table contains the tab navigation above the content tables      |
36 | containing the buttons "filter", "commands", "display" and so on.        |
37 '-------------------------------------------------------------------------*/
39 table.filterform {
40     border-collapse: collapse;
41     padding: 0px;
42     border-style: none;
44 table.filterform td {
45     padding: 0px;
48 div.floatfilter {
49     margin: 0px 4px 3px 0px;
50     width: 310px;
51     height: 53px;
52     float: left;
53     border-width: 1px;
54     border-style: solid;
55     border-color: #acc #22404d #22414d #8ab;
56     box-shadow: 0.5px 0.5px 1px #444;
57     background-color: rgba(160, 181, 190, 0.6);
58     border-radius: 5px;
59     color: black;
62 .filterform > tbody > tr > td div.floatfilter {
63   height: auto;
64   width: 372px;
65   position: relative;
66   margin-right: 16px;
67   margin-bottom: 16px;
68   background: $theme-color-white;
69   border: 1px solid $theme-color-table-border;
70   box-shadow: none;
73 body.main.screenshotmode div.floatfilter {
74     background-color: #5893af;
77 div.floatfilter.double {
78     height: 110px;
79     display: table-cell;
82 .filterform > tbody > tr > td div.floatfilter.single {
83     height: 114px;
86 .filterform > tbody > tr > td div.floatfilter.double {
87     height: 246px;
90 div.floatfilter input[type=text] {
91     width: 294px;
94 div.floatfilter input[type=text].neg {
95     width: 229px;
98 div.floatfilter .legend {
99     color: white;
100     margin-bottom: 1px;
101     width: 300px;
102     height: 17px;
103     background-color: rgba(255, 255, 255, 0.2);
104     padding: 3px 5px 0px 5px;
105     border-radius: 5px 5px 0px 0px;
108 .filterform > tbody > tr > td div.floatfilter .legend {
109     padding: 12px;
110     box-sizing: border-box;
111     height: auto;
112     color: $theme-color-table-text;
113     text-transform: uppercase;
114     width: 100%;
117 div.floatfilter .content {
118     width: 311px;
119     height: 30px;
120     margin-top: 0px;
121     margin-left: 0px;
122     display: table-cell;
123     padding-left: 4px;
124     text-align: left;
125     padding-top: 5px;
128 .filterform > tbody > tr > td div.floatfilter .content {
129     width: 100%;
130     display: block;
131     box-sizing: border-box;
132     padding: 12px;
135 div.floatfilter.double .content {
136     height: 82px;
139 div.floatfilter .content > select {
140     width: 300px;
143 .filterform > tbody > tr > td div.floatfilter .content select {
144     box-sizing: border-box;
147 div.floatfilter .content > select.neg,
148 div.floatfilter .content > select#opthost_group,
149 div.floatfilter .content > select#optservice_contact_group,
150 div.floatfilter .content > select#opthost_contact_group,
151 div.floatfilter .content > select#optservice_group {
152     width: 237px;
155 .filterform > tbody > tr > td div.floatfilter .content table {
156     border-spacing: 8px 4px;
159 div.floatfilter .content .multigroup table {
160     margin-top: -6px;
163 div.floatfilter .content .multigroup select {
164     width: 148px;
165     height: 66px;
168 div.floatfilter .content .multigroup select.large {
169     width: 228px;
172 div.floatfilter .content .multigroup select.small {
173     width: 68px;
176 div.floatfilter .content .filtertime select {
177     width: 136px;
180 .filterform > tbody > tr > td div.floatfilter .content .checkbox {
181     display: block;
182     float: left;
183     margin-right: 8px;
184     margin-bottom: 8px;
187 .filterform > tbody > tr > td div.floatfilter .content input,
188 .filterform > tbody > tr > td div.floatfilter .content select,
189 .filterform > tbody > tr > td div.floatfilter .content textarea,
190 .filterform > tbody > tr > td div.floatfilter .content #mk_side_search_field,
191 .filterform > tbody > tr > td div.floatfilter .content select {
192     margin-bottom: 8px;
195 .filterform > tbody > tr > td div.floatfilter .content input[type^=radio],
196 .filterform > tbody > tr > td div.floatfilter .content select[type^=radio],
197 .filterform > tbody > tr > td div.floatfilter .content textarea[type^=radio],
198 .filterform > tbody > tr > td div.floatfilter .content [type^=radio]#mk_side_search_field,
199 .filterform > tbody > tr > td div.floatfilter .content select[type^=radio] {
200     width: auto;
201     margin-bottom: 0px;
204 div.floatfilter.service_custom_variable input, div.floatfilter.host_custom_variable input,
205 div.floatfilter.service_custom_variable select, div.floatfilter.host_custom_variable select {
206     display: inline-block;
207     width: 45%;
210 div.floatfilter.service_custom_variable select, div.floatfilter.host_custom_variable select {
211     margin-right: 10px;
214 .filterform > tbody > tr > td div.floatfilter .content .valuespec_tuple {
215     width: 100%;
216     border-spacing: 2px 2px;
219 /* Improving styling of floatfilters that are contained in a ListOf() */
220 table.valuespec_listof.filter {
221     width: 300px;
222     border-spacing: 0px;
225 select.vlof_filter {
226     width: 312px;
229 table.valuespec_listof td.vlof_content.filter {
230     width: 1px;
231     border-style: none;
234 table.valuespec_listof td.vlof_buttons.filter {
235     width: 1px;
236     border-style: none;
237     vertical-align: top;
240 table.valuespec_listof td.vlof_buttons.filter img {
241     position: relative;
242     top: 2px;
243     left: -28px;
244     width: 16px;
245     height: 16px;
248 table.nform table.valuespec_listof {
249     border-spacing: 0px;
252 table.nform table.valuespec_listof > tbody > tr {
253     vertical-align: middle;
256 table.nform table.valuespec_listof .vlof_content {
257     border-bottom: 1px solid $theme-color-table-border;
258     padding: 8px 0px;
259     vertical-align: top;
262 table.nform table.valuespec_listof .vlof_content .valuespec_tuple {
263     border-spacing: 8px;
266 table.nform table.valuespec_listof .vlof_content .content nobr {
267     display: inline-block;
268     margin-top: 8px;
271 table.nform table.valuespec_listof .vlof_buttons {
272     vertical-align: middle;
273     border-bottom: 1px solid $theme-color-table-border;
274     padding-bottom: 32px;
275     padding-top: 8px;
278 table.nform table.valuespec_listof.filter .vlof_content.filter .floatfilter {
279     height: auto;
280     box-shadow: none;
281     border: 1px solid $theme-color-table-border;
282     background-color: $theme-color-white;
283     width: 400px;
286 table.nform table.valuespec_listof.filter .vlof_content.filter .floatfilter .legend {
287     font-size: $theme-font-size-global;
288     text-transform: uppercase;
289     letter-spacing: $theme-letter-spacing-table;
290     color: $theme-color-table-text;
291     padding: 16px 0px 0px 16px;
294 table.nform table.valuespec_listof.filter .vlof_content.filter .floatfilter .content {
295     padding: 16px;
296     width: 100%;
299 table.nform table.valuespec_listof.filter .vlof_content.filter .floatfilter .content table {
300     border-spacing: 8px 4px;
303 table.nform table.valuespec_listof.filter .vlof_buttons.filter img {
304     top: 8px;
305     left: -40px;
308 table.filtertime td {
309     vertical-align: middle;
312 div.optiondial, div.optiondial.num_columns, div.optiondial.refresh {
313   background: $theme-color-white;
314   height: 32px;
315   width: 73px;
316   box-shadow: none;
317   border: 1px solid $theme-color-table-border;
318   border-radius: $theme-border-radius;
319   margin-right: 12px;
320   margin-bottom: 12px;
321   top: 0;
324 div.optiondial {
325     cursor: pointer;
326     position: relative;
327     margin-top: 0;
328     margin-left: 0;
329     float: left;
330     overflow: hidden;
331     box-shadow: 0px 0px 3px #123;
332     text-shadow: 0px 0.5px 0.5px #fff;
333     color: #222;
336 div.optiondial.num_columns {
337     margin-right: 0px;
338     border-right: 0px;
339     border-radius: $theme-border-radius 0px 0px 4px;
340     width: 74px;
343 div.optiondial.refresh {
344     margin-left: -6px;
345     border-radius: 0px 4px 4px 0px;
348 div.optiondial div, div.optiondial.num_columns div, div.optiondial.refresh div {
349     line-height: 34px;
350     padding: 0px;
353 div.optiondial div {
354     width: 100%;
355     height: 100%;
356     position: relative;
357     top: 0px;
358     text-align: center;
361 div.view_form {
362     margin-bottom: 10px;
365 /*-------------------------------------------------------------------------.
366 |                _                            _                            |
367 |               | |    __ _ _   _  ___  _   _| |_ ___                      |
368 |               | |   / _` | | | |/ _ \| | | | __/ __|                     |
369 |               | |__| (_| | |_| | (_) | |_| | |_\__ \                     |
370 |               |_____\__,_|\__, |\___/ \__,_|\__|___/                     |
371 |                           |___/                                          |
372 +--------------------------------------------------------------------------+
373 | Styles used by layouts of the views (plugins/views/layouts.py)           |
374 '-------------------------------------------------------------------------*/
377 /* TODO: Reproduce this html element */
378 td.fillup {
379     background-color: #eee;
382 tr.groupheader td {
383   padding: 0px;
384   color: $theme-color-text;
385   background: transparent;
388 td.groupheader {
389     margin: 0;
392 tr.groupheader td.groupheader .groupheader tbody tr td {
393     padding: 12px 0px 4px;
394     color: $theme-color-text;
395     font-weight: $theme-font-weight-global;
396     letter-spacing: $theme-letter-spacing-table;
397     display: inline-block;
398     font-size: $theme-font-table-header;
399     vertical-align: baseline;
402 tr.groupheader td.groupheader .groupheader tbody tr td a,
403 tr.groupheader td.groupheader .groupheader tbody tr td body.main .popup_menu span,
404 body.main .popup_menu tr.groupheader td.groupheader .groupheader tbody tr td span {
405     color: $theme-color-text;
406     font-weight: $theme-font-weight-global;
407     letter-spacing: $theme-letter-spacing-table;
408     display: inline-block;
409     font-size: $theme-font-table-header;
412 tr.groupheader td.groupheader .groupheader tbody tr td.state {
413     padding: 0px 8px;
414     width: auto;
415     box-shadow: none;
416     font-size: 14px;
417     text-transform: uppercase;
420 tr.groupheader td.groupheader .groupheader tbody tr td.state a,
421 tr.groupheader td.groupheader .groupheader tbody tr td.state body.main .popup_menu span,
422 body.main .popup_menu tr.groupheader td.groupheader .groupheader tbody tr td.state span {
423     font-size: 14px;
424     text-transform: uppercase;
427 tr.groupheader td.groupheader .groupheader tbody tr td.state.hstate1 a,
428 tr.groupheader td.groupheader .groupheader tbody tr td.state.hstate1 body.main .popup_menu span,
429 body.main .popup_menu tr.groupheader td.groupheader .groupheader tbody tr td.state.hstate1 span {
430     color: $theme-color-lightgrey;
433 tr.groupheader a,
434 tr.groupheader body.main .popup_menu span,
435 body.main .popup_menu tr.groupheader span {
436   color: $theme-color-text;
439 table.data.oddeven > tbody > tr.groupheader {
440     background-color: transparent;
443 table.data tr.data > td.gap,
444 table.data tr > td.last_col,
445 table.data tr > th.last_col {
446     border-right: 0;
449 td.gap, table.data .checkbox_hover.gap {
450     /* TODO: Check whether these background styles are needed */
451     background-image: url("images/contentframe_background.jpg");
452     background-attachment: fixed;
453     background-repeat: repeat;
454     width: 5px;
457 /* boxed layout */
458 table.boxlayout {
459     border-spacing: 0px;
461 table.boxlayout td.boxcolumn {
462     padding-right: 20px;
465 /* tiled layout */
466 table.tiled td {
467     border-style: none;
470 .tile {
471     width: 180px;
472     border: 1px solid #000;
473     float: left;
474     border-radius: 0px;
475     margin-right: 6px;
476     margin-bottom: 6px;
477     box-shadow: 1px 1px 3px #000;
478     background-color: #ccc;
481 table.data.tiled td.tiles div.tile {
482     border: 1px solid $theme-color-table-border;
483     border-radius: $theme-border-radius;
484     box-shadow: none;
485     background: $theme-color-white;
486     width: 240px;
487     padding: 4px;
490 .tile img.icon {
491     width: 16px;
492     height: 16px;
495 .tile table {
496     height: 70px;
497     width: 100%;
500 .tile td {
501     border-style: none;
502     font-size: 7pt;
505 table.data.tiled td.tiles {
506   padding: 0;
509 table.data.tiled td.tiles div.tile table {
510   border-spacing: 4px 8px;
513 table.data.tiled td.tiles div.tile table td {
514     padding: 8px;
517 table.data.tiled td.tiles div.tile table td.states {
518   border-radius: $theme-border-radius;
521 table.data.tiled td.tiles div.tile .cont {
522   box-sizing: border-box;
525 .tile.sstate0, .tile.hhstate0 {
526     border-color: #0f0;
529 .tile.sstate1 {
530     border-color: #ff0;
531     background-color: #ff0;
534 .tile.sstate2, .tile.hhstate1 {
535     border-color: #f00;
536     background-color: #f88;
539 .tile.sstate3, .tile.hhstate2 {
540     border-color: #f80;
541     background-color: #fc8;
544 .tile td.tl, .tile td.bl {
545     text-align: left;
548 .tile td.tr, .tile td.br {
549     text-align: right;
552 .tile td.center {
553     vertical-align: middle;
556 .tile td.center, .tile td.cont {
557     text-align: center;
560 .tile td.bl, .tile td.br {
561     vertical-align: bottom;
564 .tile td.bl, .tile td.br, .tile td.tl, .tile td.tr {
565     height: 20px;
569  LAYOUT: dataset
570  The dataset layout is used to display detailed information
571  about a single host/service on a page. e.g. the "host details"
572  page uses thislayout
574 table.data.single {
575     margin-top: 5px;
576     border-spacing: 1px;
577     padding: 0;
578     border-collapse: collapse;
579     empty-cells: show;
582 table.data.single tr.data > td {
583     padding-bottom: 4px;
584     padding: 4px 5px 2px 5px;
585     text-align: left;
586     height: 16px;
587     line-height: 14px;
588     vertical-align: top;
591 table.data.single tr.data td.left {
592     width: 10%;
593     white-space: nowrap;
594     vertical-align: top;
595     padding-right: 20px;
598 table.data.single > tbody > tr > td,
599 table.data.single > tbody tr.odd0 > td,
600 table.data.single > tbody tr.even0 > td {
601     padding: 8px 16px;
602     background-color: $theme-color-white;
603     border-radius: 0px;
606 table.data.single > tbody > tr > td.left,
607 table.data.single > tbody tr.odd0 > td.left,
608 table.data.single > tbody tr.even0 > td.left {
609     font-weight: $theme-font-weight-bold;
610     background-color: $theme-color-white;
611     border-right: 1px solid $theme-color-table-border;
612     transition: .15s ease-in-out;
615 table.data.single td.gap {
616     background-color: transparent;
617     border-left-style: none;
618     border-right-style: none;
621 /* #TODO: Check whether this style is redundant
622  * see styles for table.data.single tr.data > td
623  */
624 table.data.single td.age,
625 table.data.single td.number,
626 table.data.single td.count {
627     text-align: left;
630 table.data.single td.perfometer div.glass {
631     width: 100%;
634 table.data.matrix {
635     width: auto;
636     margin-bottom: 10px;
639 table.data.matrix tbody > tr.data > td {
640   padding: 8px;
641   border: 1px solid $theme-color-table-border;
642   border-left: 0px solid;
645 table.data.matrix tr.even0 td.left {
646     background-color: #bbb;
649 table.data.matrix tr.odd0 td.left {
650     background-color: #ccc;
653 table.data.matrix tbody > tr.data > td.left {
654     font-weight: $theme-font-weight-bold;
655     background-color: $theme-color-white;
656     border-right: 1px solid $theme-color-table-border;
657     transition: .15s ease-in-out;
658     border-left: 1px solid $theme-color-table-border;
661 table.data.matrix tbody tr.even0 td.matrixhead,
662 table.data.matrix tbody tr.odd0 td.matrixhead {
663   color: $theme-color-text;
664   font-weight: $theme-font-weight-bold;
667 table.data.matrix tr.even0 td.matrixhead {
668     background-color: #888;
671 table.data.matrix tr.odd0 td.matrixhead {
672     background-color: #999;
675 /* TODO: Reproduce this html element
676  * .perfometer seems to always be one table level lower than tr.data, so not a direct child
677  */
678 table.data.matrix tbody > tr.data > td.perfometer {
679     width: 180px;
682 table.data.matrix tbody > tr.data > td.cell td.perfometer div.title {
683     padding: 0;
686 table.data.matrix tbody > tr.data > td.cell td.perfometer div.content {
687     padding: 0;
690 table.data.matrix tbody > tr.data:hover td.left {
691   background-color: $theme-color-table-background;
694 table.data.matrix tbody > tr.data:first-child {
695   background: transparent;
698 table.data.matrix tbody > tr.data:first-child td {
699     background: transparent;
700     border: none;
703 table.data.matrix tbody > tr.data:first-child td.matrixhead {
704     font-size: $theme-font-size-global;
705     text-transform: uppercase;
706     letter-spacing: $theme-letter-spacing-table;
709 table.data.matrix td.cell {
710     padding: 0px;
713 table.data.matrix td.cell table {
714     width: 100%;
715     padding: 0px;
718 /* TODO: Reproduce this html element */
719 table.data.matrix table.cell > tbody > tr > td {
720     padding: 0px;
721     border: 1px solid red;
724 /* TODO: Reproduce this html element */
725 table.data.matrix tr.matrixhead td.left a,
726 table.data.matrix tr.matrixhead td.left {
727     color: white;
730 .even0 .minority {
731     background-color: #cff;
733 .odd0 .minority {
734     background-color: #dff;
737 table.data.matrix tr.even0 td.left.minority {
738     background-color: #bdd;
740 table.data.matrix tr.odd0 td.left.minority {
741     background-color: #cee;
744 /*-------------------------------------------------------------------------.
745 |              _____    _ _ _           _                                  |
746 |             | ____|__| (_) |_  __   _(_) _____      __                   |
747 |             |  _| / _` | | __| \ \ / / |/ _ \ \ /\ / /                   |
748 |             | |__| (_| | | |_   \ V /| |  __/\ V  V /                    |
749 |             |_____\__,_|_|\__|   \_/ |_|\___| \_/\_/                     |
750 |                                                                          |
751 +--------------------------------------------------------------------------+
752 | Styles used while editing a view in the view editor                      |
753 '-------------------------------------------------------------------------*/
755 div.clear {
756     clear: left;
759 input#try{
760     float:left;
764 /*-------------------------------------------------------------------------.
765 |       _     _     _            __         _                              |
766 |      | |   (_)___| |_    ___  / _| __   _(_) _____      _____            |
767 |      | |   | / __| __|  / _ \| |_  \ \ / / |/ _ \ \ /\ / / __|           |
768 |      | |___| \__ \ |_  | (_) |  _|  \ V /| |  __/\ V  V /\__ \           |
769 |      |_____|_|___/\__|  \___/|_|     \_/ |_|\___| \_/\_/ |___/           |
770 |                                                                          |
771 +--------------------------------------------------------------------------+
772 | The table with the list of all views                                     |
773 '-------------------------------------------------------------------------*/
774 /* TODO: Check whether this list of views is deprecated
775  * page_edit_views() in cmk.gui.views is never called
776  */
778 table.views {
779     border-collapse: collapse;
780     empty-cells: show;
781     margin-bottom: 1ex;
784 table.views td, table.views th{
785     border: 1px solid #444;
786     padding: 2px 1ex;
789 table.views td {
790     height: 25px;
791     padding-top: 3px;
792     color: #fff;
795 table.views th {
796     background-color: #709aa5;
797     color: #fff;
800 table.views td.legend {
801     background-color: #8eaeb8;
802     color: #fff;
805 table.views td.content {
806     background-color: #9ebec8;
807     color: #fff;
810 table.views td.edit {
811     background-color: #6ab;
812     text-align: center;
815 table.views td.buttons {
816     padding: 3px;
817     vertical-align: middle;
818     background-color: #8EAEB8;
821 /* Availability */
822 table.data.availability {
823     width: 100%;
826 table.data.availability td.number {
827     width: 60px;
830 table.data.availability td.unused {
831     color: #888;
832     text-shadow: 1px 1px 0.5px #fff;
835 table.data.availability tr.summary {
836     background-color: #bbb;
839 table.data.availability tr.summary td {
840     border-top: 1px solid $theme-color-table-border;
841     font-weight: bold;
842     border-bottom-style: none;
843     padding-bottom: 1px;
844     padding-top: 1px;
847 table.data td.flapping, table.timeline td.flapping, div.avlegend.timeline div.state.flapping {
848     background-color: #f0f;
850 table.data td.downtime, table.timeline td.downtime, div.avlegend.timeline div.state.downtime {
851     background-color: #0af;
853 table.data td.hostdown, table.timeline td.hostdown, div.avlegend.timeline div.state.hostdown {
854     background-color: #048;
855     color: white;
857 table.data td.unmonitored,
858 table.timeline td.unmonitored,
859 div.avlegend.timeline div.state.unmonitored {
860     background-color: #cacaca;
861     color: #888;
864 table.timeline td.ooservice, div.avlegend.timeline div.state.ooservice {
865     background-color: #cacaca;
866     /* TODO: Check whether this image can be dropped (seems not to be available anymore */
867     background-image: url("images/ooservice.png");
868     background-repeat: repeat;
871 table.data.availability tr.odd0 td.number:not(.unused), table.data.availability td.number.stats {
872     opacity: .7;
875 table.data.availability tr.odd0 td.number.stats {
876     opacity: .5;
879 div.floatfilter.rangespec table.valuespec_tuple {
880     width: 100%;
883 div.floatfilter.rangespec table.valuespec_tuple span.title {
884     position: relative;
885     top: 7px;
888 /* #TODO: Reproduce this html element */
889 div#avoptions_on {
890     margin-right: 3px;
893 table.data tr.data > td.timeline {
894     width: 500px;
895     padding: 0px;
898 table.timeline {
899     height: 30px;
900     border-spacing: 0px;
901     border-collapse: collapse;
904 table.timeline.low {
905     height: 5px;
906     margin-top: -18px;
907     border-spacing: 0px;
908     border-collapse: collapse;
911 table.timeline.standalone {
912     box-shadow: 0px 0px 1px #ccf;
913     margin-bottom: 20px;
914     width: 800px;
917 table.timeline.inline {
918     border-style: none;
919     width: 500px;
920     box-shadow: 0px 0px 1px #555 inset;
923 table.timeline td {
924     padding: 0px;
925     border-style: none;
928 /* #TODO: Reproduce this html element */
929 table.timeline td.hilite {
930     padding: 0px;
931     border-style: none;
932     background-color: #0091b6;
933     filter: brightness(80%);
936 table.timeline td.chaos {
937     background-color: #8844ff;
940 div.timelinerange {
941     position: relative;
942     width: 800px;
943     float: none;
946 /* We render the small vertical lines in a way that only
947    the left border is visible but the thing is thick 5 pixels.
948    That makes hovering over it more easy. */
949 div.timelinerange div.timelinechoord {
950     position: absolute;
951     top: 0px;
952     width: 5px;
953     height: 30px;
954     border-style: none none none solid;
955     border-width: 0px 0px 0px 1px;
956     border-color: #666;
959 table.timelineevents {
960     width: 800px;
963 /* #TODO: Reproduce this html element */
964 table.data.oddeven.timelineevents > tbody > tr.hilite {
965     background-color: #6ab;
966     color: white;
969 div.timelinerange.inline {
970     width: 500px;
973 div.timelinerange div {
974     width: 300px;
975     float: left;
978 div.timelinerange div.until {
979     text-align: right;
980     float: right;
983 .timelinerange .from, .timelinerange .until {
984   color: $theme-color-darkgrey;
985   display: inline-block;
986   margin-bottom: 4px;
987   margin-top: 8px;
988   font-size: $theme-font-size-small;
989   letter-spacing: $theme-letter-spacing-table;
992 .timelinerange .timeline {
993   box-shadow: none;
996 .timelinerange .timeline.standalone td {
997     border: 1px solid $theme-color-table-border;
1000 /* #TODO: Reproduce this html element */
1001 table.data.timewarp {
1002     width: 800px;
1003     margin-bottom: 20px;
1006 div.avlegend {
1007     background-color: rgba(255, 255, 255, 0.2);
1008     padding: 5px 15px;
1009     border-radius: 5px;
1010     margin-top: 10px;
1011     text-align: right;
1014 div.avlegend h3 {
1015     margin-top: 0px;
1016     font-size: 13px;
1017     color: black;
1020 div.avlegend div {
1021     display: inline-block;
1022     width: 50px;
1023     white-space: nowrap;
1024     margin-right: 5px;
1027 div.avlegend div.state {
1028     text-align: center;
1029     padding: 2px 0px;
1030     font-size: 12px;
1033 div.avlegend div:last-child {
1034     margin-right: 0px;
1037 div.avlegend.levels div.level {
1038     margin-right: 15px;
1039     color: black;
1042 div.avlegend.timeline div.state {
1043     width: 75px;
1046 div.avlegend.timeline div.state.ooservice {
1047     color: black;
1051 /*--Inventory--------------------------------------------------------------.
1052 |            ___                      _                                    |
1053 |           |_ _|_ ____   _____ _ __ | |_ ___  _ __ _   _                  |
1054 |            | || '_ \ \ / / _ \ '_ \| __/ _ \| '__| | | |                 |
1055 |            | || | | \ V /  __/ | | | || (_) | |  | |_| |                 |
1056 |           |___|_| |_|\_/ \___|_| |_|\__\___/|_|   \__, |                 |
1057 |                                                   |___/                  |
1058 +--------------------------------------------------------------------------+
1059 | Styles for displaying HW/SW-Inventory data                               |
1060 '-------------------------------------------------------------------------*/
1062 td.invtree {
1063     width: 100%;
1066 /* TODO: Reproduce this html element */
1067 td.invtree b.treeangle.title {
1068     color: black;
1069     font-weight: normal;
1072 td.invtree ul.treeangle {
1073     margin: 0px;
1074     margin-bottom: 3px;
1077 td.sla_spec table,
1078 td.invtree table,
1079 td.agent_config table {
1080    border-collapse: collapse;
1081    border: 0.5px solid black;
1082    box-shadow: 0.5px 0.5px 1px #ccc;
1083    margin-top: 3px;
1086 td.invtree table td,
1087 td.invtree table th {
1088     border: 1px solid #888;
1089     padding: 1px 5px;
1090     height: 14px;
1093 table.data.single tr.data td.invtree table {
1094     box-shadow: none;
1095     border: 1px solid $theme-color-table-border;
1096     margin: 8px 0px 12px;
1099 table.data.single tr.data td.invtree table th,
1100 table.data.single tr.data td.invtree table td {
1101     background-color: $theme-color-table-background;
1102     border: 1px solid $theme-color-table-border;
1103     padding: 2px 4px;
1104     height: 14px;
1107 table.data.single tr.data td.invtree table th {
1108     background-color: whitesmoke;
1109     color: $theme-color-text;
1112 /* Make td class of invtree more specific, when shown in single dataset mode */
1113 /* td.data.single td.invtree td.number { */
1114 table.data.single td.invtree td.number {
1115     text-align: right;
1118 td.invtree table th {
1119     text-align: left;
1122 td.invtree table td {
1123     background-color: #fff;
1126 /* TODO: Reproduce this html element */
1127 td.invtree span.invold, span.invold table.data {
1128     color: #ff0000;
1131 /* TODO: Reproduce this html element */
1132 td.invtree span.invnew, span.invnew table.data {
1133     color: #00bf00;
1136 /* Positioning of the link from an inventory dicttable to the matching multisite table */
1137 div.invtablelink {
1138     position: absolute;
1139     top: -17px;
1140     right: 1px;
1143 td.if_state {
1144     box-shadow: none;
1145     text-align: center;
1146     width: 50px;
1149 table.data.single tr.data td.invtree table td.if_state.if_state_up {
1150   background-color: $theme-color-state-success-background;
1151   box-shadow: none; }
1153 table.data.single tr.data td.invtree table td.if_state.if_state_down {
1154   background-color: $theme-color-state-2-background;
1155   box-shadow: none; }
1157 table.data.single tr.data td.invtree table td.if_state.if_state_other {
1158   background-color: $theme-color-state-9-background;
1159   box-shadow: none; }
1161 table.data.single tr.data td.invtree table td.if_state.if_available {
1162   color: $theme-color-black;
1163   background-color: $theme-color-state-success-background;
1166 table.data.single tr.data td.invtree table td.if_state.if_not_available {
1167   color: $theme-color-black;
1168   background-color: $theme-color-state-4-background;
1171 /* #TODO: Reproduce all .sla elements */
1172 table.data.headerleft.sla th {
1173     width: 130px;
1174     text-align: left;
1175     padding: 4px 5px;
1178 table.data.headerleft.sla a {
1179     color: white;
1180     text-decoration: underline;
1183 table.data.headerleft.sla th.sla_state {
1184     width: 30px;
1187 table.data.headerleft.sla th.sla_date,
1188 table.data.headerleft.sla td.sla_date {
1189     width: 120px;
1190     padding-right: 4px;
1193 table.data.headerleft.sla th.sla_duration {
1194     text-align: left;
1197 table.data.headerleft.sla td.sla_duration {
1198     text-align: right;
1199     padding-right: 4px;
1202 table.data.headerleft.sla td.sla_output {
1203     width: 70%;
1204     padding-left: 4px;
1207 table.data.headerleft.sla td {
1208     padding: 0px;
1211 table.data.headerleft.sla {
1212     margin-bottom: 20px;
1215 table.timeline.standalone.sla td {
1216     border: 0px solid #444;
1217     padding: 0px;
1220 table.timeline.standalone.sla {
1221     margin-bottom: 5px;
1224 table.timeline.standalone.sla.period {
1225     margin-bottom: 5px;
1226     height: 10px;
1229 table.timeline td.state0.even {
1230     background-color: #0b3;
1233 table.timeline td.state0.odd {
1234     background-color: #092;
1237 table.timeline td.state2.even {
1238     background-color: #f00;
1241 table.timeline td.state2.odd {
1242     background-color: #900;
1245 div.sla_details {
1246     background-color: #73a1b4;
1249 td.sla > div.foldable > b {
1250     color: black;
1253 h2.sla {
1254     margin-bottom: 3px;
1257 h3.sla {
1258     margin-top: 3px;
1261 table.data tr.sla_horizontal_line > td.sla_horizontal_line {
1262     height: 1px;
1265 table.data tr.sla_horizontal_line > td.sla_horizontal_line.black {
1266     height: 1px;
1267     border-bottom: 1px solid black;
1270 table.timeline.sla td.sla_hilite,
1271 table.data.oddeven > tbody > tr.sla_hilite {
1272     padding: 0px;
1273     border-style: none;
1274     filter: brightness(70%);
1277 table.timeline.sla td.sla_hilite.sla_error_hilite,
1278 table.data.oddeven > tbody > tr.sla_hilite.sla_error_hilite {
1279     padding: 0px;
1280     border-style: none;
1281     filter: brightness(50%);
1284 div.timelinerange.sla {
1285     width: auto;
1286     float: none;
1289 table.data.headerleft.sla tbody tr td, table.data.headerleft.sla tbody tr td.sla {
1290     padding: 4px 8px !important;
1293 table.data.headerleft.sla tbody tr td table.timeline.standalone,
1294 table.data.headerleft.sla tbody tr td.sla table.timeline.standalone {
1295     margin-bottom: 0px;
1296     box-shadow: none;
1299 table.data.headerleft.sla tbody tr td table.timeline.standalone tbody tr td,
1300 table.data.headerleft.sla tbody tr td.sla table.timeline.standalone tbody tr td {
1301     border-radius: 0px;
1304 table.data.headerleft.sla tbody tr td.sla_spec > table,
1305 table.data.headerleft.sla tbody tr td.sla_spec table.sla_spec {
1306     border-spacing: 0px;
1307     margin: 0px;
1308     border: none;
1309     box-shadow: none;
1312 table.data.headerleft.sla tbody tr td.sla_spec > table tbody tr td,
1313 table.data.headerleft.sla tbody tr td.sla_spec table.sla_spec tbody tr td {
1314     vertical-align: baseline;
1315     border: none;
1316     margin: 0px;
1317     box-shadow: none;
1318     padding-left: 0px !important;
1321 table.data.headerleft.sla tbody tr td.sla_spec > table tbody tr td.title,
1322 table.data.headerleft.sla tbody tr td.sla_spec table.sla_spec tbody tr td.title {
1323     display: table-cell;
1324     font-weight: $theme-font-weight-bold;
1325     width: 280px;
1326     background: transparent;
1327     color: $theme-color-text;
1330 table.data.headerleft.sla tbody tr td.sla_spec > table tbody tr td table,
1331 table.data.headerleft.sla tbody tr td.sla_spec table.sla_spec tbody tr td table {
1332     border-spacing: 0px;
1333     border: none;
1334     box-shadow: none;
1335     margin: 0;
1338 table.data.headerleft.sla tbody tr td.sla_spec > table tbody tr td table tbody tr td,
1339 table.data.headerleft.sla tbody tr td.sla_spec table.sla_spec tbody tr td table tbody tr td {
1340     padding: 0px !important;
1341     padding-right: 16px;
1344 table.data.headerleft.sla tbody tr th {
1345     width: 240px !important;
1348 table.data.headerleft.sla a,
1349 table.data.headerleft.sla body.main .popup_menu span,
1350 body.main .popup_menu table.data.headerleft.sla span {
1351     color: $theme-color-text !important;
1355 div#avoptions td.dictleft {
1356     width: 99%;
1359 div#avoptions td.dictright {
1360     padding-right: 4px;