3 * Copyright 2012 Nut & Bolt
4 * By David Menting <david@nut-bolt.nl>
5 * Based on Bootstrap v1.4.0
7 * Copyright 2011 Twitter, Inc
8 * Licensed under the Apache License v2.0
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Designed and built with all the love in the world @twitter by @mdo and @fat.
14 * Props to Eric Meyer (meyerweb.com) for his CSS reset file. We're using an adapted version here that cuts out some of the reset HTML elements we will never need here (i.e., dfn, samp, etc).
15 * ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
21 box-sizing: border-box
;
24 abbr
[title
], acronym
[title
] {
25 border-bottom: 1px dotted
;
31 border-collapse: collapse
;
41 -webkit-text-size-adjust: 100%;
42 -ms-text-size-adjust: 100%;
64 vertical-align: baseline
;
76 -ms-interpolation-mode: bicubic
;
86 box-sizing: border-box
;
87 vertical-align: baseline
;
91 button::-moz-focus-inner
, input::-moz-focus-inner
{
99 input
[type
="submit"] {
101 -webkit-appearance: button
;
102 word-break: break-all
;
106 input
[type
="button"][disabled
],
107 input
[type
="reset"][disabled
],
108 input
[type
="submit"][disabled
] {
112 input
[type
="search"] {
113 -webkit-appearance: textfield
;
114 box-sizing: content-box
;
117 input
[type
="search"]::-webkit-search-decoration
{
118 -webkit-appearance: none
;
128 * Basic and global styles for generating a grid system, structural layout, and page templates
129 * ------------------------------------------------------------------------------------------- */
131 background-color: #fff;
132 font-family: "Helvetica Neue", Helvetica
, Arial
, sans-serif
;
137 padding: 58px 5px 5px 5px;
148 .container:before, .container:after {
160 text-decoration: none
;
161 line-height: inherit
;
162 font-weight: inherit
;
167 text-decoration: underline
;
183 * Headings, body text, lists, code, and more for a versatile and durable typography system
184 * ---------------------------------------------------------------------------------------- */
188 .table .tr.cbi-section-table-descr .th {
268 text-transform: uppercase
;
272 margin: 0 0 18px 25px;
319 border-bottom: 1px solid
#eee;
329 font-weight: inherit
;
330 line-height: inherit
;
333 small
{ font-size: 0.9em }
343 font-family: Monaco
, Andale Mono
, Courier New
, monospace
;
349 background-color: #fee9cc;
350 color: rgba
(0, 0, 0, 0.75);
355 background-color: #f5f5f5;
361 border: 1px solid
#ccc;
362 border: 1px solid rgba
(0, 0, 0, 0.15);
365 white-space: pre-wrap
;
366 word-wrap: break-word
;
370 * Base styles for various input types, form layouts, and states
371 * ------------------------------------------------------------- */
389 form
.cbi-tab-descr
{
400 form
.clearfix:before
, form
.clearfix:after
,
401 .cbi-value:before, .cbi-value:after {
407 form
.clearfix:after
,
417 font-family: "Helvetica Neue", Helvetica
, Arial
, sans-serif
;
428 .cbi-value label.cbi-value-title {
438 input
[type
=checkbox
], input
[type
=radio
] {
442 label
> input
[type
="checkbox"],
443 label
> input
[type
="radio"] {
444 vertical-align: bottom
;
451 .cbi-dropdown:not
(.btn
):not
(.cbi-button
),
453 display: inline-block
;
459 border: 1px solid
#ccc;
467 .cbi-dropdown:not
(.btn
):not
(.cbi-button
),
477 display: inline-flex
;
478 flex-direction: column
;
481 .cbi-dynlist > .item {
483 box-shadow: 0 0 2px #ccc;
485 padding: 2px 2em 2px 4px;
486 border: 1px solid
#ccc;
489 pointer-events: none
;
492 .cbi-dynlist > .item::after {
495 display: inline-flex
;
501 border: 1px solid
#ccc;
502 border-radius: 0 3px 3px 0;
505 pointer-events: auto
;
508 .cbi-dynlist > .add-item {
512 .cbi-dynlist
> .add-item
> input
,
513 .cbi-dynlist > .add-item > button {
516 text-overflow: ellipsis
;
523 box-shadow: inset
0 -1px 3px rgba
(0, 0, 0, 0.1);
526 input
[type
=checkbox
], input
[type
=radio
] {
539 background-color: #fff;
542 line-height: initial
;
544 width: auto
!important
;
547 input
[type
=button
], input
[type
=reset
], input
[type
=submit
] {
554 background-color: #fff;
558 height: auto
!important
;
561 .td
> input
[type
=text
],
562 .td
> input
[type
=password
],
564 .td
> .cbi-dropdown:not
(.btn
):not
(.cbi-button
),
565 .cbi-dynlist > .add-item > .cbi-dropdown {
570 background-color: #fff;
573 box-shadow: inset
0 1px 2px rgba
(0, 0, 0, 0.025);
581 ::-webkit-input-placeholder
{
585 .item::after, .btn, .cbi-button, input, button, textarea {
586 transition: border linear
0.2s, box-shadow linear
0.2s;
587 box-shadow: inset
0 1px 3px rgba
(0, 0, 0, 0.1);
591 .btn:hover
, .cbi-button:hover
, button:hover
,
592 input:focus
, textarea:focus
{
594 border-color: rgba
(82, 168, 236, 0.8) !important
;
595 box-shadow: inset
0 1px 3px rgba
(0, 0, 0, 0.1), 0 0 8px rgba
(82, 168, 236, 0.6);
596 text-decoration: none
;
599 input
[type
=file
]:focus
, input
[type
=checkbox
]:focus
, select:focus
{
601 outline: 1px dotted
#666;
612 background-color: #f5f5f5;
614 pointer-events: none
;
620 pointer-events: auto
;
625 .cbi-section-create {
626 padding: 0 0 10px 10px;
629 .cbi-section-create {
631 display: inline-flex
;
635 .cbi-section-create > * {
640 .cbi-section-create > * > input {
648 padding: 17px 20px 18px 17px;
649 border-top: 1px solid
#ddd;
650 border-radius: 0 0 3px 3px;
654 .actions
.secondary-action
,
655 .cbi-page-actions .secondary-action{
659 .actions
.secondary-action a
,
660 .cbi-page-actions .secondary-action a {
664 .actions
.secondary-action
a:hover
,
665 .cbi-page-actions .secondary-action a:hover {
666 text-decoration: underline
;
669 .cbi-page-actions > form {
674 .help-inline, .help-block {
697 * Tables for, you guessed it, tabular data
698 * ---------------------------------------- */
699 .tr { display: table-row
; }
700 .table[width="33%"], .th[width="33%"], .td[width="33%"] { width: 33%; }
701 .table[width="100%"], .th[width="100%"], .td[width="100%"] { width: 100%; }
709 border-collapse: collapse
;
713 .table .th, .table .td {
715 vertical-align: middle
; /* Fixme */
716 padding: 10px 10px 9px;
721 .table .tr:first-child .th {
727 .table .td, .table .th {
728 border-top: 1px solid
#ddd;
732 height: calc
(3em + 20px);
735 .tr.placeholder > .td {
745 .tr.drag-over-below {
746 border: 2px solid
#0069d6;
747 border-width: 2px 0 0 0;
750 .tr.drag-over-below {
751 border-width: 0 0 2px 0;
755 * Repeatable UI elements outside the base styles provided from the scaffolding
756 * ---------------------------------------------------------------------------- */
770 text-shadow: 0 -1px 0 rgba
(0, 0, 0, 0.25);
773 header h3
a:hover
, header
.brand:hover
, header ul
.active
> a
{
774 background-color: #333;
775 background-color: rgba
(255, 255, 255, 0.05);
777 text-decoration: none
;
784 header h3 a
, header
.brand
{
787 padding: 8px 20px 12px;
801 background-color: #222;
802 background-repeat: repeat-x
;
803 background-image: linear-gradient
(to bottom
, #333333, #222222);
804 box-shadow: 0 1px 3px rgba
(0, 0, 0, 0.25), inset
0 -1px 0 rgba
(0, 0, 0, 0.1);
808 header div
> ul
, .nav
{
816 header div
> ul
> li
, .nav
> li
{
821 header div
> ul a
, .nav a
{
824 padding: 10px 10px 11px;
826 text-decoration: none
;
829 header div
> ul
a:hover
, .nav
a:hover
{
831 text-decoration: none
;
834 header div
> ul
.active
> a
, .nav
.active
> a
{
835 background-color: #222;
836 background-color: rgba
(0, 0, 0, 0.5);
839 header div
> ul
.secondary-nav
, .nav
.secondary-nav
{
845 header div
> ul
.secondary-nav
.menu-dropdown
,
846 .nav
.secondary-nav
.menu-dropdown
,
847 header div
> ul
.secondary-nav
.dropdown-menu
,
848 .nav.secondary-nav .dropdown-menu {
853 header div
> ul a
.menu:hover
,
855 header div
> ul li
.open
.menu
,
857 header div
> ul
.dropdown-toggle:hover
,
858 .nav
.dropdown-toggle:hover
,
859 header div
> ul
.dropdown
.open
.dropdown-toggle
,
860 .nav .dropdown.open .dropdown-toggle {
862 background: rgba
(255, 255, 255, 0.05);
865 header div
> ul
.menu-dropdown
,
867 header div
> ul
.dropdown-menu
,
868 .nav .dropdown-menu {
869 background-color: #333;
872 header div
> ul
.menu-dropdown a
.menu
,
873 .nav
.menu-dropdown a
.menu
,
874 header div
> ul
.dropdown-menu a
.menu
,
875 .nav
.dropdown-menu a
.menu
,
876 header div
> ul
.menu-dropdown
.dropdown-toggle
,
877 .nav
.menu-dropdown
.dropdown-toggle
,
878 header div
> ul
.dropdown-menu
.dropdown-toggle
,
879 .nav .dropdown-menu .dropdown-toggle {
883 header div
> ul
.menu-dropdown a
.menu
.open
,
884 .nav
.menu-dropdown a
.menu
.open
,
885 header div
> ul
.dropdown-menu a
.menu
.open
,
886 .nav
.dropdown-menu a
.menu
.open
,
887 header div
> ul
.menu-dropdown
.dropdown-toggle
.open
,
888 .nav
.menu-dropdown
.dropdown-toggle
.open
,
889 header div
> ul
.dropdown-menu
.dropdown-toggle
.open
,
890 .nav .dropdown-menu .dropdown-toggle.open {
892 background: rgba
(255, 255, 255, 0.05);
895 header div
> ul
.menu-dropdown li a
,
896 .nav
.menu-dropdown li a
,
897 header div
> ul
.dropdown-menu li a
,
898 .nav .dropdown-menu li a {
900 text-shadow: 0 1px 0 rgba
(0, 0, 0, 0.5);
903 header div
> ul
.menu-dropdown li
a:hover
,
904 .nav
.menu-dropdown li
a:hover
,
905 header div
> ul
.dropdown-menu li
a:hover
,
906 .nav .dropdown-menu li a:hover {
907 background-color: #191919;
908 background-repeat: repeat-x
;
909 background-image: linear-gradient
(to bottom
, #292929, #191919);
913 header div
> ul
.menu-dropdown
.active a
,
914 .nav
.menu-dropdown
.active a
,
915 header div
> ul
.dropdown-menu
.active a
,
916 .nav .dropdown-menu .active a {
920 header div
> ul
.menu-dropdown
.divider
,
921 .nav
.menu-dropdown
.divider
,
922 header div
> ul
.dropdown-menu
.divider
,
923 .nav .dropdown-menu .divider {
924 background-color: #222;
928 header ul
.menu-dropdown li a
, header ul
.dropdown-menu li a
{
936 a
.menu:after
, .dropdown-toggle:after
{
939 display: inline-block
;
941 text-indent: -99999px;
945 border-left: 4px solid transparent
;
946 border-right: 4px solid transparent
;
947 border-top: 4px solid
#fff;
951 .menu-dropdown, .dropdown-menu {
952 background-color: #fff;
966 border-color: rgba
(0, 0, 0, 0.2);
968 border-width: 0 1px 1px;
969 border-radius: 0 0 6px 6px;
970 box-shadow: 0 2px 4px rgba
(0, 0, 0, 0.2);
971 background-clip: padding-box
;
974 .menu-dropdown li, .dropdown-menu li {
977 background-color: transparent
;
980 .menu-dropdown .divider, .dropdown-menu .divider {
984 background-color: #eee;
985 border-bottom: 1px solid
#fff;
988 header
.dropdown-menu a
, .dropdown-menu a
{
995 text-shadow: 0 1px 0 #fff;
998 header
.dropdown-menu
a:hover
,
999 .dropdown-menu
a:hover
,
1000 header
.dropdown-menu a
.hover
,
1001 .dropdown-menu a.hover {
1002 background-color: #ddd;
1003 background-repeat: repeat-x
;
1004 background-image: linear-gradient
(to bottom
, #eee, #ddd);
1006 text-decoration: none
;
1007 box-shadow: inset
0 1px 0 rgba
(0, 0, 0, 0.025), inset
0 -1px rgba
(0, 0, 0, 0.025);
1011 .dropdown
.open
.menu
,
1012 .open
.dropdown-toggle
,
1013 .dropdown.open .dropdown-toggle {
1016 background: rgba
(0, 0, 0, 0.3);
1019 .open
.menu-dropdown
,
1020 .dropdown
.open
.menu-dropdown
,
1021 .open
.dropdown-menu
,
1022 .dropdown.open .dropdown-menu {
1026 .dropdown:hover ul.dropdown-menu {
1030 .dropdown-menu .dropdown-menu {
1039 .tabs, .cbi-tabmenu {
1040 margin: 0 -5px 18px;
1045 background: linear-gradient
(#fff 28px, #ddd 28px);
1046 background-size: 1px 29px;
1047 background-position: left bottom
;
1050 .tabs > li, .cbi-tabmenu > li {
1053 align-items: center
;
1056 margin: 4px 2px 0 2px;
1058 border: 1px solid
#ddd;
1059 border-bottom: none
;
1060 border-radius: 4px 4px 0 0;
1064 .tabs > li > a, .cbi-tabmenu > li > a {
1066 white-space: nowrap
;
1068 text-overflow: ellipsis
;
1070 text-decoration: none
;
1071 border-radius: 4px 4px 0 0;
1076 .tabs > li:not(.active):hover, .cbi-tabmenu > .cbi-tab-disabled:hover {
1077 background: linear-gradient
(#fff 90%, #ddd 100%);
1080 .tabs > li:not(.active), .cbi-tabmenu > .cbi-tab-disabled {
1082 background: linear-gradient
(#eee 90%, #ddd 100%);
1085 .cbi-tab-disabled[data-errors]::after {
1086 content: attr
(data-errors
);
1087 background: #c43c35;
1101 .cbi-tabmenu.map > li {
1106 .cbi-tabcontainer > fieldset.cbi-section[id] > legend {
1110 .tabs .menu-dropdown, .tabs .dropdown-menu {
1113 border-radius: 0 6px 6px 6px;
1116 .tabs a.menu:after, .tabs .dropdown-toggle:after {
1117 border-top-color: #999;
1122 .tabs li.open.menu .menu, .tabs .open.dropdown .dropdown-toggle {
1126 .tabs li.open a.menu:after, .tabs .dropdown.open .dropdown-toggle:after {
1127 border-top-color: #555;
1130 .tab-content
> .tab-pane
,
1131 .tab-content > div {
1135 .tab-content > .active {
1142 background-color: #f5f5f5;
1143 background-repeat: repeat-x
;
1144 background-image: linear-gradient
(to bottom
, #fff, #f5f5f5);
1145 border: 1px solid
#ddd;
1147 box-shadow: inset
0 1px 0 #fff;
1152 text-shadow: 0 1px 0 #fff;
1155 .breadcrumb .divider {
1160 .breadcrumb .active a {
1167 border-top: 1px solid
#eee;
1176 background: rgba
(0, 0, 0, 0.7);
1179 -webkit-overflow-scrolling: touch
;
1180 transition: opacity
.125s ease-in
;
1192 align-items: center
;
1195 box-shadow: 0 0 3px #444;
1196 padding: 1em 1em .5em 1em;
1203 line-height: normal
;
1204 margin-bottom: .5em;
1210 white-space: pre-wrap
;
1214 body
.modal-overlay-active
{
1219 body
.modal-overlay-active #modal_overlay
{
1223 visibility: visible
;
1227 .alert-message
.danger
,
1229 .alert-message
.danger:hover
,
1231 .alert-message
.error
,
1233 .alert-message
.error:hover
,
1235 .alert-message
.success
,
1237 .alert-message
.success:hover
,
1239 .alert-message
.info
,
1241 .alert-message
.info:hover
,
1242 .cbi-tooltip.error, .cbi-tooltip.success, .cbi-tooltip.info {
1246 .btn .close, .alert-message .close {
1247 font-family: Arial
, sans-serif
;
1252 .alert-message
.danger
,
1254 .alert-message
.error
,
1255 .cbi-tooltip.error {
1256 background: linear-gradient
(to bottom
, #ee5f5b, #c43c35) repeat-x
;
1257 text-shadow: 0 -1px 0 rgba
(0, 0, 0, 0.25);
1258 border-color: rgba
(0, 0, 0, 0.1) rgba
(0, 0, 0, 0.1) rgba
(0, 0, 0, 0.25);
1261 .btn.success, .alert-message.success, .cbi-tooltip.success {
1262 background: linear-gradient
(to bottom
, #62c462, #57a957) repeat-x
;
1263 text-shadow: 0 -1px 0 rgba
(0, 0, 0, 0.25);
1264 border-color: rgba
(0, 0, 0, 0.1) rgba
(0, 0, 0, 0.1) rgba
(0, 0, 0, 0.25);
1267 .btn.info, .alert-message.info, .cbi-tooltip.info {
1268 background: linear-gradient
(to bottom
, #5bc0de, #339bb9) repeat-x
;
1269 text-shadow: 0 -1px 0 rgba
(0, 0, 0, 0.25);
1270 border-color: rgba
(0, 0, 0, 0.1) rgba
(0, 0, 0, 0.1) rgba
(0, 0, 0, 0.25);
1273 .alert-message.notice, .cbi-tooltip.notice {
1274 background: linear-gradient
(to bottom
, #efefef, #fefefe) repeat-x
;
1275 text-shadow: 0 -1px 0 rgba
(255, 255, 255, 0.25);
1276 border-color: rgba
(0, 0, 0, 0.1) rgba
(0, 0, 0, 0.1) rgba
(0, 0, 0, 0.25);
1283 display: inline-block
;
1284 background: linear-gradient
(#fff, #fff 25%, #e6e6e6) no-repeat
;
1285 padding: 5px 14px 6px;
1286 text-shadow: 0 1px 1px rgba
(255, 255, 255, 0.75);
1289 line-height: normal
;
1290 border: 1px solid
#ccc;
1291 border-bottom-color: #bbb;
1293 box-shadow: inset
0 1px 0 rgba
(255, 255, 255, 0.2), 0 1px 2px rgba
(0, 0, 0, 0.05);
1298 outline: 1px dotted
#666;
1302 .cbi-input-invalid
.cbi-dropdown
,
1303 .cbi-input-invalid
.cbi-dropdown:not
([open
]) > ul
> li
,
1304 .cbi-value-error input {
1309 .cbi-button-positive
,
1310 .cbi-button-fieldadd
,
1317 .cbi-button-neutral
,
1318 .cbi-button-download
,
1331 border-color: #0069d6;
1335 .cbi-button-negative
,
1336 .cbi-section-remove
.cbi-button
,
1338 .cbi-button-remove {
1343 .cbi-page-actions::after {
1349 .cbi-page-actions > * {
1350 vertical-align: middle
;
1353 .cbi-page-actions > :not([method="post"]):not(.cbi-button-apply):not(.cbi-button-negative):not(.cbi-button-save):not(.cbi-button-reset) {
1359 .cbi-button-action
.important
,
1360 .cbi-page-actions
.cbi-button-apply
,
1361 .cbi-section-actions .cbi-button-edit {
1363 background: linear-gradient
(to bottom
, #0069d6, #0049d6) no-repeat
;
1364 text-shadow: 0 -1px 0 rgba
(0, 0, 0, 0.25);
1367 .cbi-button-positive
.important
,
1368 .cbi-page-actions .cbi-button-save {
1370 background: linear-gradient
(to bottom
, #4a4, #484) no-repeat
;
1371 text-shadow: 0 -1px 0 rgba
(0, 0, 0, 0.25);
1374 .cbi-button-negative.important {
1376 background: linear-gradient
(to bottom
, #c44, #c00) no-repeat
;
1377 text-shadow: 0 -1px 0 rgba
(0, 0, 0, 0.25);
1380 .cbi-page-actions
.cbi-button-apply
+ .cbi-button-save
,
1381 .cbi-page-actions .cbi-button-negative + .cbi-button-save {
1382 background: linear-gradient
(#fff, #fff 25%, #e6e6e6);
1383 text-shadow: 0 -1px 0 rgba
(255, 255, 255, 0.75);
1388 display: inline-flex
!important
;
1392 padding: 0 !important
;
1395 .cbi-dropdown:not(.btn):not(.cbi-button) {
1396 background: linear-gradient
(#fff 0%, #e9e8e6 100%);
1397 border: 1px solid
#ccc;
1402 .cbi-dynlist
> .item:focus
,
1403 .cbi-dropdown:focus {
1404 outline: 2px solid
#4b6e9b;
1407 .cbi-dropdown > ul {
1408 margin: 0 !important
;
1417 .cbi-dropdown
.btn
> ul:not
(.dropdown
),
1418 .cbi-dropdown.cbi-button > ul:not(.dropdown) {
1419 margin: 0 0 0 13px !important
;
1422 .cbi-dropdown
.btn
.spinning
> ul:not
(.dropdown
),
1423 .cbi-dropdown.cbi-button.spinning > ul:not(.dropdown) {
1424 margin: 0 !important
;
1427 .cbi-dropdown > ul.preview {
1431 .cbi-dropdown
> .open
,
1432 .cbi-dropdown > .more {
1436 flex-direction: column
;
1437 justify-content: center
;
1443 .cbi-dropdown
.btn
> .open
,
1444 .cbi-dropdown.cbi-button > .open {
1447 border-left: 1px solid
;
1450 .cbi-dropdown
> .more
,
1451 .cbi-dropdown:not(.btn):not(.cbi-button) > ul > li[placeholder] {
1454 text-shadow: 1px 1px 0px #fff;
1456 justify-content: center
;
1459 .cbi-dropdown > ul > li {
1461 white-space: nowrap
;
1463 text-overflow: ellipsis
;
1466 align-items: center
;
1471 .cbi-dropdown
> ul
.dropdown
> li
,
1472 .cbi-dropdown:not(.btn):not(.cbi-button) > ul > li {
1478 .cbi-dropdown > ul > li .hide-open { display: block
; display: initial
; }
1479 .cbi-dropdown > ul > li .hide-close { display: none
; }
1481 .cbi-dropdown > ul > li[display]:not([display="0"]) {
1482 border-left: 1px solid
#ccc;
1485 .cbi-dropdown[empty] > ul {
1489 .cbi-dropdown > ul > li > form {
1493 pointer-events: none
;
1496 .cbi-dropdown > ul > li img {
1497 vertical-align: middle
;
1498 margin-right: .25em;
1501 .cbi-dropdown > ul > li > form > input[type="checkbox"] {
1505 .cbi-dropdown > ul > li input[type="text"] {
1509 .cbi-dropdown[open] {
1513 .cbi-dropdown[open] > ul.dropdown {
1515 background: #f6f6f5;
1516 border: 1px solid
#918e8c;
1517 box-shadow: 0 0 4px #918e8c;
1523 transition: max-height
.125s ease-in
;
1526 .cbi-dropdown
> ul
> li
[display
],
1527 .cbi-dropdown
[open
] > ul
.preview
,
1528 .cbi-dropdown
[open
] > ul
.dropdown
> li
,
1529 .cbi-dropdown
[multiple
] > ul
> li
> label
,
1530 .cbi-dropdown
[multiple
][open
] > ul
.dropdown
> li
,
1531 .cbi-dropdown
[multiple
][more
] > .more
,
1532 .cbi-dropdown[multiple][empty] > .more {
1534 display: flex
!important
;
1537 .cbi-dropdown
[empty
] > ul
> li
,
1538 .cbi-dropdown
[optional
][open
] > ul
.dropdown
> li
[placeholder
],
1539 .cbi-dropdown[multiple][open] > ul.dropdown > li > form {
1540 display: block
!important
;
1543 .cbi-dropdown[open] > ul.dropdown > li .hide-open { display: none
; }
1544 .cbi-dropdown[open] > ul.dropdown > li .hide-close { display: block
; display: initial
; }
1546 .cbi-dropdown[open] > ul.dropdown > li {
1547 border-bottom: 1px solid
#ccc;
1550 .cbi-dropdown[open] > ul.dropdown > li[selected] {
1551 background: #b0d0f0;
1554 .cbi-dropdown[open] > ul.dropdown > li.focus {
1555 background: linear-gradient
(90deg, #a3c2e8 0%, #84aad9 100%);
1558 .cbi-dropdown[open] > ul.dropdown > li:last-child {
1560 border-bottom: none
;
1563 .cbi-dropdown[open] > ul.dropdown > li[unselectable] {
1567 .cbi-dropdown[open] > ul.dropdown > li > input.create-item-input:first-child:last-child {
1571 .cbi-dropdown[disabled] {
1572 pointer-events: none
;
1576 input
[type
="text"] + .cbi-button
,
1577 input
[type
="password"] + .cbi-button
,
1578 select
+ .cbi-button
{
1579 border-radius: 0 3px 3px 0;
1583 vertical-align: top
;
1589 select
+ .cbi-button
{
1590 border-left-color: transparent
;
1597 .cbi-title-ref::after {
1601 .cbi-tooltip-container {
1609 box-shadow: 0 0 2px #ccc;
1615 transition: opacity
.25s ease-in
;
1618 .cbi-tooltip-container:hover .cbi-tooltip:not(:empty) {
1621 transition: opacity
.25s ease-in
;
1625 border: 1px solid
#ccc;
1631 background: #f9f9f9;
1634 .cbi-progressbar > div {
1635 background: #90c0e0;
1637 transition: width
.25s ease-in
;
1641 .cbi-progressbar::after {
1648 text-shadow: 0 0 2px #fff;
1649 content: attr
(title
);
1652 text-overflow: ellipsis
;
1655 .zonebadge .cbi-tooltip {
1657 background: inherit
;
1658 margin: -1.6em 0 0 -5px;
1660 pointer-events: none
;
1661 box-shadow: 0 0 3px #444;
1664 .zonebadge .cbi-tooltip > * {
1673 .zone-forwards > * {
1678 .zone-forwards > span {
1683 .zone-forwards
.zone-src
,
1684 .zone-forwards .zone-dest {
1686 flex-direction: column
;
1689 .btn.active, .btn:active {
1690 box-shadow: inset
0 2px 4px rgba
(0, 0, 0, 0.25), 0 1px 2px rgba
(0, 0, 0, 0.05);
1707 line-height: normal
;
1708 padding: 9px 14px 9px;
1713 padding: 7px 9px 7px;
1717 button
.btn::-moz-focus-inner
, input
[type
=submit
].btn::-moz-focus-inner
{
1727 line-height: 13.5px;
1728 text-shadow: 0 1px 0 #fff;
1734 text-decoration: none
;
1740 padding: .5em .5em .25em .5em;
1741 margin-bottom: .5em;
1743 background: linear-gradient
(to bottom
, #fceec1, #eedc94) repeat-x
;
1744 text-shadow: 0 -1px 0 rgba
(0, 0, 0, 0.25);
1745 border-color: rgba
(0, 0, 0, 0.1) rgba
(0, 0, 0, 0.1) rgba
(0, 0, 0, 0.25);
1746 text-shadow: 0 1px 0 rgba
(255, 255, 255, 0.5);
1748 border-style: solid
;
1750 box-shadow: inset
0 1px 0 rgba
(255, 255, 255, 0.25);
1753 .alert-message .close {
1766 line-height: inherit
;
1767 background: transparent
;
1772 .alert-message button {
1777 padding: 1px 3px 2px;
1780 color: #fff !important
;
1781 text-transform: uppercase
;
1782 white-space: nowrap
;
1783 background-color: #bfbfbf;
1794 text-decoration: none
;
1798 background-color: #c43c35;
1802 background-color: #f89406;
1806 background-color: #46a546;
1810 background-color: #62cffc;
1813 /* LuCI specific items */
1814 .hidden { display: none
}
1820 form
.inline
{ display: inline
; margin-bottom: 0; }
1822 header
.pull-right
{ padding-top: 8px; }
1824 #modemenu li:last-child span
.divider
{ display: none
}
1826 #syslog { width: 100%; }
1828 .cbi-section-table
.tr:hover
.td
,
1829 .cbi-section-table
.tr:hover
.th
,
1830 .cbi-section-table .tr:hover::before {
1831 background-color: #f5f5f5;
1834 .cbi-section-table .tr.cbi-section-table-descr .th {
1835 font-weight: normal
;
1838 .cbi-section-table-titles
.named::before
,
1839 .cbi-section-table-descr
.named::before
,
1840 .cbi-section-table-row[data-title]::before {
1841 content: attr
(data-title
) " ";
1842 display: table-cell
;
1843 padding: 10px 10px 9px;
1846 vertical-align: middle
;
1849 .cbi-section-table-titles
.named::before
,
1850 .cbi-section-table-descr
.named::before
,
1851 .cbi-section-table-row[data-title]::before {
1852 border-top: 1px solid
#ddd;
1855 .left { text-align: left
!important
; }
1856 .right { text-align: right
!important
; }
1857 .center { text-align: center
!important
; }
1858 .top { vertical-align: top
!important
; }
1859 .middle { vertical-align: middle
!important
; }
1860 .bottom { vertical-align: bottom
!important
; }
1862 .cbi-value-field { line-height: 1.5em; }
1864 .cbi-value-field input
[type
=checkbox
],
1865 .cbi-value-field input[type=radio] {
1871 .cbi-value-field table td {
1875 .table
.cbi-section-table input
[type
="password"],
1876 .table
.cbi-section-table input
[type
="text"],
1877 .table
.cbi-section-table textarea
,
1878 .table.cbi-section-table select {
1882 .table.cbi-section-table .td.cbi-section-table-cell {
1883 white-space: nowrap
;
1887 .table.cbi-section-table .td.cbi-section-table-cell select {
1891 .td.cbi-section-actions {
1893 vertical-align: middle
;
1896 .td.cbi-section-actions > * {
1900 .td
.cbi-section-actions
> * > *,
1901 .td.cbi-section-actions > * > form > * {
1906 .td.cbi-section-actions > * > form {
1907 display: inline-flex
;
1911 .table.valign-middle .td {
1912 vertical-align: middle
;
1917 .tr.cbi-section-table-titles {
1918 background: #f9f9f9;
1921 .cbi-value-description {
1922 background-image: url
(/luci-static
/resources
/cbi
/help
.gif
);
1923 background-position: .25em .2em;
1924 background-repeat: no-repeat
;
1925 margin: .25em 0 0 0;
1926 padding: 0 0 0 1.7em;
1929 .cbi-section-error {
1930 border: 1px solid
#f00;
1932 background-color: #fce6e6;
1934 margin-bottom: 18px;
1937 .cbi-section-error ul { margin: 0 0 0 20px; }
1939 .cbi-section-error ul li {
1945 background-color: #fff;
1946 border: 1px solid
#ccc;
1949 white-space: nowrap
;
1950 background-image: linear-gradient
(#fff, #fff 25%, #f9f9f9);
1951 text-shadow: 0 1px 1px rgba
(255, 255, 255, 0.75);
1953 box-shadow: inset
0 1px 0 rgba
(255, 255, 255, 0.2), 0 1px 2px rgba
(0, 0, 0, 0.05);
1954 display: inline-flex
;
1955 flex-direction: column
;
1960 .ifacebox .ifacebox-head {
1961 border-bottom: 1px solid
#ccc;
1966 .ifacebox .ifacebox-head.active {
1967 background: #90c0e0;
1970 .ifacebox .ifacebox-body {
1975 display: inline-block
;
1976 flex-direction: row
;
1977 white-space: nowrap
;
1978 background-color: #fff;
1979 border: 1px solid
#ccc;
1981 background-image: linear-gradient
(#fff, #fff 25%, #f9f9f9);
1982 text-shadow: 0 1px 1px rgba
(255, 255, 255, 0.75);
1984 box-shadow: inset
0 1px 0 rgba
(255, 255, 255, 0.2), 0 1px 2px rgba
(0, 0, 0, 0.05);
1992 vertical-align: middle
;
1995 .ifacebadge-active {
2000 .network-status-table {
2005 .network-status-table .ifacebox {
2010 .network-status-table .ifacebox-body {
2012 flex-direction: column
;
2017 .network-status-table .ifacebox-body > * {
2021 .network-status-table .ifacebox-body > span {
2026 .network-status-table .ifacebox-body > div {
2030 #dsl_status_table .ifacebox-body span
> strong
{
2031 display: inline-block
;
2036 .network-status-table .ifacebox-body .ifacebadge {
2045 display: inline-flex
;
2048 .network-status-table .ifacebox-body .ifacebadge > span {
2050 text-overflow: ellipsis
;
2054 .ifacebadge.large > * {
2061 display: inline-block
;
2062 white-space: nowrap
;
2064 text-shadow: 0 1px 1px rgba
(255, 255, 255, 0.75);
2068 .zonebadge > strong {
2070 display: inline-block
;
2077 .zonebadge > .ifacebadge {
2082 border: 1px dashed
#aaa;
2089 .td.cbi-value-field var {
2094 #modal_overlay > .modal
.uci-dialog
,
2095 #modal_overlay > .modal
.cbi-modal
{
2104 .uci-change-list del
,
2105 .uci-change-list ins
,
2106 .uci-change-list var
,
2107 .uci-change-legend-label del
,
2108 .uci-change-legend-label ins
,
2109 .uci-change-legend-label var {
2110 text-decoration: none
;
2111 font-family: monospace
;
2113 border: 1px solid
#ccc;
2121 .uci-change-list ins
,
2122 .uci-change-legend-label ins {
2127 .uci-change-list del
,
2128 .uci-change-legend-label del {
2133 .uci-change-list var
,
2134 .uci-change-legend-label var {
2139 .uci-change-list var ins
,
2140 .uci-change-list var del {
2141 display: inline-block
;
2147 .uci-change-legend {
2151 .uci-change-legend-label {
2156 .uci-change-legend-label
> ins
,
2157 .uci-change-legend-label
> del
,
2158 .uci-change-legend-label > var {
2167 .uci-change-legend-label var ins
,
2168 .uci-change-legend-label var del {
2183 background: rgba
(0, 0, 0, 0.7);
2186 -webkit-overflow-scrolling: touch
;
2187 transition: opacity
.125s ease-in
;
2191 #modal_overlay > .modal
{
2198 align-items: center
;
2201 box-shadow: 0 0 3px #444;
2202 padding: 1em 1em .5em 1em;
2207 #modal_overlay .modal
> * {
2209 line-height: normal
;
2210 margin-bottom: .5em;
2213 #modal_overlay .modal
> pre
,
2214 #modal_overlay .modal
> textarea
{
2215 white-space: pre-wrap
;
2219 body
.modal-overlay-active
{
2224 body
.modal-overlay-active #modal_overlay
{
2230 html body
.apply-overlay-active
{
2231 height: calc
(100vh - 63px);
2234 #applyreboot-section {
2238 [data-page
="admin-network-dhcp"] [data-name
="ip"] {
2244 50% { opacity: .5; }
2245 100% { opacity: 1; }
2249 animation: flash
.35s;
2254 padding-left: 32px !important
;
2264 background: url
(../resources/icons/loading.gif) no-repeat center
;
2265 background-size: 16px;
2274 [data-tab-active
="true"] {
2278 transition: opacity
.25s ease-in
;
2284 border: 1px solid
#ccc;
2287 flex-direction: column
;
2293 .cbi-filebrowser.open {
2297 transition: opacity
.25s ease-in
;
2300 .cbi-filebrowser > * {
2303 text-overflow: ellipsis
;
2304 padding: 0 0 .25em 0;
2305 margin: .25em .25em 0px .25em;
2306 white-space: nowrap
;
2307 border-bottom: 1px solid
#ccc;
2310 .cbi-filebrowser .cbi-button-positive {
2311 margin-right: .25em;
2314 .cbi-filebrowser > div {
2315 border-bottom: none
;
2318 .cbi-filebrowser > ul > li {
2320 flex-direction: row
;
2323 .cbi-filebrowser > ul > li:hover {
2324 background: #f5f5f5;
2327 .cbi-filebrowser > ul > li > div:first-child {
2330 text-overflow: ellipsis
;
2333 .cbi-filebrowser > ul > li > div:last-child {
2338 .cbi-filebrowser > ul > li > div:last-child > button {
2339 padding: .125em .25em;
2340 margin: 1px 0 1px .25em;
2343 .cbi-filebrowser .upload {
2345 flex-direction: row
;
2347 margin: 0 -.125em .25em -.125em;
2348 padding: 0 0 .125em 0px;
2349 border-bottom: 1px solid
#ccc;
2352 .cbi-filebrowser .upload > * {
2357 .cbi-filebrowser .upload > .btn {
2361 .cbi-filebrowser .upload > div {
2366 .cbi-filebrowser .upload > div > input {
2370 @keyframes fade-in
{
2372 100% { opacity: 1; }
2375 @keyframes fade-out
{
2377 100% { opacity: 0; }
2381 animation: fade-in
.4s ease
;
2385 animation: fade-out
.4s ease
;