:root {
    --pm-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --pm-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --pm-body-color: #424242;
    --pm-control-color: #424242;
}

body {
    margin: 0;
    padding: 0;
}

body.index {
    background: #f9f9f9;
}

@media only screen and (device-width: 768px) {
    
    .scrollbar_outer {
        -webkit-overflow-scrolling: touch;
        overflow-y: scroll;
    }
    
    #app_body_outer {
        -webkit-overflow-scrolling: touch;
        overflow-y: scroll;
    }
}

iframe {
    *zoom: 1;
}

b, strong {
    font-weight: bolder;
}

body, td, th, p {
    font-family: var(--pm-font-sans-serif);
    /* font-size: 12px; */
    font-size: 13px;
    color: var(--pm-body-color);
}

div, table, td, th, span, button, input, select, textarea, fieldset, legend, label {
    *zoom: 1;
    box-sizing: border-box;
}

hr {
    border: 0;
    border-top: 1px dashed #e7e7e7;
}

h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1, th, .th {
    font-weight: 500;
}

h1 {
    margin: 5px 0 15px 0;
    font-size: 22px;
    line-height: 100%;
    color: #16b2c9;
}

h2 {
    margin: 5px 0 15px 0;
    font-size: 17px;
    line-height: 100%;
    color: var(--pm-body-color);
}

h3 {
    margin: 5px 0 15px 0;
    font-size: 15px;
    line-height: 100%;
    color: var(--pm-body-color);
}

h4 {
    margin: 5px 0 15px 0;
    font-size: 13px;
    line-height: 100%;
    color: var(--pm-body-color);
}

.form h2 {
    margin: 10px 3px 10px 3px;
    font-size: 15px;
}

.form h3 {
    margin: 10px 3px 10px 3px;
    font-size: 14px;
}

.form h4 {
    margin: 10px 3px 10px 3px;
    font-size: 13px;
}

a {
    color: #16b2c9;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}

a:focus {
    outline: 0;
}

a img {
    border: 0;
}

a span {
    cursor: pointer;
}

a span.normal {
    color: var(--pm-body-color);
}

form {
    *display: inline;
}

label {
    vertical-align: middle;
    font-weight: 500;
    margin-right: 4px;
}

input, select, textarea, span.inputbox {
    color: var(--pm-control-color);
    border: 1px solid silver;
    /*font-size: 11px;*/
    font-size: 11px;
    vertical-align: middle;
    border-radius: 2px;
}

input:focus, select:focus, textarea:focus {
    background: #FFFFDD !important;
    box-shadow: 0px 0px 1px 0px rgba(219, 219, 219, 0.75);
    -moz-box-shadow: 0px 0px 1px 0px rgba(219, 219, 219, 0.75);
    -webkit-box-shadow: 0px 0px 1px 0px rgba(219, 219, 219, 0.75);
}

input.time {
    border: 0;
    line-height: 100%;
    margin-top: -1px;
}

.inputbox {
    padding: 5px 5px 4px 5px;
}

textarea {
    width: 100%;
}

select, select.inputbox {
    padding: 4px 5px 3px 5px;
    *margin-top: 1px;
}

.selectbox label {
    display: block;
    text-align: left;
    padding: 0 0 4px 0;
}

.selectbox td {
    padding: 0 !important;
}

.selectbox td.buttons {
    padding: 10px !important;
    width: 60px;
    vertical-align:top;
}

.selectbox td.buttons button {
    margin-bottom: 10px;
}

button {
    cursor: pointer;
    /* font-size: 11px; */
    font-size: 11px;
    background: #2abed4;
    color: #fff;
    /* border: 1px solid #37AB20; */
    border: 0;
    /* font-weight: 500; */
    font-weight: normal;
    text-transform: uppercase;
    padding: 2px 8px;
    white-space: nowrap;
    display: inline-block;
    /*vertical-align: middle;*/
    min-width: 28px;
    max-width: 100px;

    overflow: hidden;
    text-overflow: ellipsis;
    
    /* border-radius: 4px; */
    line-height: 20px;
    
    *padding: 0 8px;
    *zoom: 1;
    *display: inline;
    *width: 100%;
    *overflow: visible;
    
    /* background: -webkit-linear-gradient(#58eb3b, #27ae60);
    background: -o-linear-gradient(#58eb3b, #27ae60);
    background: -moz-linear-gradient(#58eb3b, #27ae60);
    background: linear-gradient(#58eb3b, #27ae60); */
}

button span {
    margin-left: 3px;
}

.field_input button, .error_page button {
    *width: auto;
}

button:hover, button.hover {
    opacity: .5;
    /*--ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    filter: alpha(opacity=50);*/
}

button.small {
    width: 40px;
}

button.primary {
    background: #27ae60;
    color: #fff;
}

button.secondary {
    background: #d2d2d2;
    color: #252525;
    /* border: 1px solid #E67300;
    
    background: -webkit-linear-gradient(#ffce87, #34495e);
    background: -o-linear-gradient(#ffce87, #34495e);
    background: -moz-linear-gradient(#ffce87, #34495e);
    background: linear-gradient(#ffce87, #34495e); */
}

button.bigbutton {
    font-size: 15px;
    line-height: 14px;
    padding: 6px 20px;
}

button.toggle {
    border: 0;
    background: none !important;
    color: var(--pm-body-color);
    font-size: 16px;
    text-overflow: unset;
}

fieldset {
    border: 1px solid #E7E7E7;
    padding: 3px 6px 8px 6px;
    background: #F9F9F9;
    border-radius: 4px;
}

legend {
    color: #333;
    font-weight: 500;
}

legend a {
    color: inherit;
}

fieldset {
    *position: relative;
    *margin-top: 5px;
    *margin-bottom: 5px;
    *zoom: 1;
}

legend {
    *position: relative;
    *margin-top: -10px;
    *zoom: 1;
}

.clr {
    clear: both;
    height: 0;
    line-height: 0;
    font-size: 0;
}

.m-0 {
    margin: 0 !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.p-0 {
    padding: 0 !important;
}

.nowrap {
    white-space: nowrap;
}

.nopadd {
    padding: 0 !important;
}

.nopadd-x {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.nopadd-y {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.checkbox {
    vertical-align: middle;
    margin: 0 3px 0 3px;
    border: 0 !important;
}

.incomplete {
    color: #999;
}

.left {
    text-align: left !important;
}

.right {
    text-align: right !important;
}

.right input {
    text-align: right !important;
}

.center {
    text-align: center !important;
}

.center input {
    text-align: center !important;
}

.aleft {
    float: left;
}

.symbol {
    border: 0;
    background: transparent;
    width: 17px;
    height: 17px;
    line-height: 17px;
    display: inline-block;
    *display: block;
    padding: 0;
    text-align: center;
    vertical-align: middle;
    font-weight: normal;
}

embed {
    *zoom: 1;
}

.maxw {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
}

.greentext {
    color: #0e7238;
}

.redtext {
    color: #98291d;
}

.graytext {
    color: var(--pm-body-color);
}

.lightgraytext {
    color: #999999;
}

.darkyellowtext {
    color: #9f7500;
}

pre {
    border: 1px solid #E7E7E7;
    padding: 8px 6px 8px 6px;
    overflow: auto;
}

.normal {
    font-weight: normal;
}

.strong {
    font-weight: 500;
}

.upper {
    text-transform: uppercase;
}

.lower {
    text-transform: lowercase;
}

/* Modal */

#sbox-window, .sbox-bg-wrap, .sbox-bg-wrap div {
    box-sizing: content-box;
}

/* Messages */
#messages {
    position: fixed;
    /*bottom: 39px;
    right: 30px;*/
    top: 37px;
    right: 12px;
    width: auto;
    z-index: 999;
}

ul.messages {
    margin: 0;
    padding: 0;
    list-style: none;
}

ul.messages li {
    padding: 5px 10px;
    margin: 0 0 10px 0;
    font-weight: 500;
    line-height: 100%;
    /* border-radius: 4px; */
}

.message {
    color: #0e7238;
    background-color: #b0ebae;
    border: 1px solid #27ae60;
}

.error {
    color: #98291d;
    background-color: #FFD5D5;
    border: 1px solid #e74c3c;
}

.warning, .noresult {
    color: #9f7500;
    background-color: #fae8b6;
    border: 1px solid #f4b400;
}

.active {
    color: #9f7500;
    background-color: #fae8b6;
    border: 1px solid #f4b400;
}

.inactive {
    color: #666;
    background-color: #bfbfbf;
    border: 1px solid #adadad;
}

.readonly {
    color: #999;
    background-color: #fbfbfb;
    border: 1px solid #E7E7E7;
}

.pending {
    color: var(--pm-body-color);
    background-color: #fff;
    border: 1px solid #fbfbfb;
}

.remake {
    background: #a8cde3;
    border: 1px solid #6abce2;
    color: #1c6b8b;
}

.selected {
    background: #e5f3fb;
    border: 1px solid #6abce2;
    color: #1c6b8b;
}

/* Pagenav */
ul.pagenav {
    margin: 0;
    padding: 0;
    list-style: none;
}

ul.pagenav li {
    display: inline-block;
    padding-left: 6px;
}

/* ul.pagenav li.first, ul.pagenav li.prev {
    border-right: 1px solid #E7E7E7;
    padding-right: 2px;
    margin-right: 2px;
}

ul.pagenav li.next, ul.pagenav li.last {
    border-left: 1px solid #E7E7E7;
    padding-left: 2px;
    margin-left: 2px;
} */

ul.pagenav li a, ul.pagenav li span {
    padding: 2px 8px;
    display: inline-block;
    font-weight: 500;
    font-size: 12px;
    text-align: center;
    line-height: 20px;
    min-width: 28px;
    box-sizing: border-box;
    vertical-align: top;
}

/* ul.pagenav li.pagenum a, ul.pagenav li.pagenum span {
    padding: 2px 0;
    width: 18px;
} */

/* ul.pagenav li.pagenum3 a, ul.pagenav li.pagenum3 span {
    width: 23px;
}

ul.pagenav li.pagenum4 a, ul.pagenav li.pagenum4 span {
    width: 28px;
}

ul.pagenav li.pagenum5 a, ul.pagenav li.pagenum5 span {
    width: 33px;
}

ul.pagenav li.pagenum6 a, ul.pagenav li.pagenum6 span {
    width: 38px;
} */

ul.pagenav li a {
    background: #2abed4;
    /* border: 1px solid #37AB20; */
    color: #fff;
    /* border-radius: 4px;
    
    background: -webkit-linear-gradient(#58eb3b, #27ae60);
    background: -o-linear-gradient(#58eb3b, #27ae60);
    background: -moz-linear-gradient(#58eb3b, #27ae60);
    background: linear-gradient(#58eb3b, #27ae60); */
}

ul.pagenav li a.secondary {
    background: #34495e;
    color: #fff;
    /* border: 1px solid #E67300; */
}

ul.pagenav li.active {
    border: 0;
    background: none;
}

ul.pagenav li.active a, ul.pagenav li.active span {
    background: #fff;
    color: #2abed4;
    border: 1px solid #2abed4;
    padding: 1px 8px;
}

ul.pagenav li a:hover {
    text-decoration: none;
    opacity: .5;
    /*--ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    filter: alpha(opacity=50);*/
}

ul.pagenav li span {
    color: #252525;
    /* border: 1px solid #e7e7e7; */
    /* border-radius: 4px; */
}

ul.pagenav li.separator {
    border-right: 1px solid #fff;
}

ul.pagenav li.separator span {
    border: 0;
    height: 24px;
    min-width: 1px;
    width: 1px;
    border-right: 1px solid #e7e7e7;
    padding: 0;
}

/* Toolbar */
.toolbar {
    padding: 4px 0;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    /*background: #fff;*/
    background: #f0f0f0;
    /* background: -webkit-linear-gradient(#f9f9f9, #f0f0f0);
    background: -o-linear-gradient(#f9f9f9, #f0f0f0);
    background: -moz-linear-gradient(#f9f9f9, #f0f0f0);
    background: linear-gradient(#f9f9f9, #f0f0f0); */
    border-bottom: 1px solid #e7e7e7;
    *z-index: 2;
}

.cpanel {
    *z-index: 1;
}

.layout_sidebar .toolbar {
    background: #F9F9F9;
    border-bottom: 1px solid #fff;
}

.toolbar_inner {
    padding: 0 10px;
}

body.layout_sidebar #body_outer .toolbar_inner {
    /*padding: 0;*/
    padding-left: 5px;
}

.toolbar table {
    width: 100%;
}

body.layout_sidebar #body_outer .toolbar table {
    width: auto;
}

.toolbar td {
    padding: 0 0 0 6px;
    vertical-align: middle;
}

.toolbar td.title {
    padding-left: 0;
}

.toolbar h1 {
    margin: 0;
    height: 24px;
    overflow: hidden;
    font-size: 17px;
    line-height: 24px;
    /* text-shadow: 1px 1px #fff; */
}

.toolbar h1 a {
    color: #333;
}

.toolbar h1 .pathway a {
    color: #333;
}

.toolbar h3 {
    margin: 0;
    height: 24px;
    line-height: 24px;
    overflow: hidden;
    color: #333;
}

.toolbar h3 .pathway a {
    color: #333;
}

.toolbar h1 img#loading {
    margin: 1px 5px 0 0;
    float: left;
}

.toolbar h3 img#loading {
    margin: 3px 5px 0 0;
    float: left;
}

.toolbar img.locked {
    vertical-align: middle;
    margin-bottom: .25em;
}

.toolbar button {
    background: #2abed4;
    color: #fff;
    /* border: 1px solid #E67300;
    
    background: -webkit-linear-gradient(#ffce87, #34495e);
    background: -o-linear-gradient(#ffce87, #34495e);
    background: -moz-linear-gradient(#ffce87, #34495e);
    background: linear-gradient(#ffce87, #34495e); */
}

.toolbar button.primary {
    /* background: #2abed4;
    color: #fff; */
    /* border: 1px solid #37AB20;
    
    background: -webkit-linear-gradient(#58eb3b, #27ae60);
    background: -o-linear-gradient(#58eb3b, #27ae60);
    background: -moz-linear-gradient(#58eb3b, #27ae60);
    background: linear-gradient(#58eb3b, #27ae60); */
}

.toolbar button.new, .toolbar button.primary {
    background: #27ae60;
    color: #fff;
    /* border: 1px solid #1694a7;
    
    background: -webkit-linear-gradient(#2abed4, #1899ac);
    background: -o-linear-gradient(#2abed4, #1899ac);
    background: -moz-linear-gradient(#2abed4, #1899ac);
    background: linear-gradient(#2abed4, #1899ac); */
}

.toolbar button.remove {
    background: #e65252;
    color: #fff;
    /* border: 1px solid rgb(199, 38, 38);
    
    background: -webkit-linear-gradient(#ee5d5d, #98291d);
    background: -o-linear-gradient(#ee5d5d, #98291d);
    background: -moz-linear-gradient(#ee5d5d, #98291d);
    background: linear-gradient(#ee5d5d, #98291d); */
}

.toolbar button.save {
    background: #27ae60;
    color: #fff;
    /* border: 1px solid #37AB20;
    
    background: -webkit-linear-gradient(#58eb3b, #27ae60);
    background: -o-linear-gradient(#58eb3b, #27ae60);
    background: -moz-linear-gradient(#58eb3b, #27ae60);
    background: linear-gradient(#58eb3b, #27ae60); */
}

.toolbar button span {
    margin-left: 3px;
}

.toolbar button.printSetup span,
.toolbar button.publish span,
.toolbar button.unpublish span,
.toolbar button.assign span,
.toolbar button.unassign span,
.toolbar button.calculate span,
.toolbar button.refresh span,
.toolbar button.lock span,
.toolbar button.unlock span,
.toolbar button.copy span,
.toolbar button.compile span,
.toolbar button.uncompile span,
.toolbar button.archive span,
.toolbar button.unarchive span,
.toolbar button.update span,
.toolbar button.print span,
.toolbar button.preview span,
.toolbar button.edit span {
    display: none;
}

.toolbar .spacer span {
    border-right: 1px solid #ccc;
    display: block;
    width: 1px;
}

.toolbar td.separator {
    white-space: nowrap;
    border-right: 1px solid #fff;
}

.toolbar td.separator div.separator {
    border-right: 1px solid #e7e7e7;
    height: 24px;
    width: 1px;
    overflow: hidden;
}

.toolbar .text {
    white-space: nowrap;
    font-size: 12px;
}

.toolbar .text select {
    max-width: 150px;
}

.toolbar .mark {
    /* border-radius: 4px; */
    /* font-size: 11px; */
    font-size: 12px;
    line-height: 13px;
    *display: inline;
    display: inline-block;
    padding: 0 5px;
}

/* Tab Panel */
.tabPanel .tabbuttons {
    height: 30px;
    overflow: hidden;
    z-index: 10;
    margin-bottom: -1px;
    position: relative;
}

.tabPanel .tabs {
    border: 1px solid #e7e7e7;
    z-index: 1;
    position: relative;
    background: #f9f9f9;
}

.tabPanel .tabs .tab {
    /*padding: 15px;*/
}

.tabPanel .tabbuttons .title .close {
    cursor: pointer;
    /*font-size: 11px;*/
    font-size: 11px;
    font-weight: normal;
    padding: 1px 4px;
    white-space: nowrap;
    display: inline-block;
    vertical-align: middle;
    line-height: 14px;
    background: #34495e;
    color: #fff;
    /* border: 1px solid #E67300; */
    margin: -2px -6px 0 6px;
    /* border-radius: 4px; */
    
    *padding: 0 4px;
    *zoom: 1;
    *display: inline;
    *width: 100%;
    *overflow: visible;
    
    /* background: -webkit-linear-gradient(#ffce87, #34495e);
    background: -o-linear-gradient(#ffce87, #34495e);
    background: -moz-linear-gradient(#ffce87, #34495e);
    background: linear-gradient(#ffce87, #34495e); */
}

.tabPanel .tabbuttons .title .close:hover {
    text-decoration: none;
    opacity: .5;
}

.tabPanel .tabbuttons .titles {
    height: 30px;
    /*background: #fff;*/
}

.tabPanel .tabbuttons .titles div.title {
    height: 30px;
    line-height: 30px;
    padding: 0 10px;
    float: left;
    margin-right: 5px;
    cursor: pointer;
    /*background: #f9f9f9;
    border: 1px solid #e7e7e7;
    color: #0b55c4;*/
    /*color: var(--pm-body-color);*/
    
    
    /* font-weight: 500;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px; */
    font-weight: normal;
    text-transform: uppercase;
    /* font-size: 12px; */
    font-size: 13px;
    
    background: none repeat scroll 0 0 #2abed4;
    /* border: 1px solid #4d8fbd; */
    color: #fff;
    border-bottom: 1px solid #2abed4;
/*     
    background: -webkit-linear-gradient(#90c8f0, #2abed4);
    background: -o-linear-gradient(#90c8f0, #2abed4);
    background: -moz-linear-gradient(#90c8f0, #2abed4);
    background: linear-gradient(#90c8f0, #2abed4); */
    
    position: relative;

    /* text-shadow: 1px 1px #4d8fbd; */
    
}

.tabPanel .tabbuttons .titles div.active {
    /*background: none repeat scroll 0 0 #27ae60;
    border: 1px solid #37AB20;*/
    
    /*background: none repeat scroll 0 0 #2abed4;
    border: 1px solid #4d8fbd;
    color: #fff;
    border-bottom: 1px solid #2abed4;
    
    background: -webkit-linear-gradient(#90c8f0, #2abed4);
    background: -o-linear-gradient(#90c8f0, #2abed4);
    background: -moz-linear-gradient(#90c8f0, #2abed4);
    background: linear-gradient(#90c8f0, #2abed4);*/
    
    background: #f9f9f9;
    border: 1px solid #e7e7e7;
    color: #333;
    border-bottom: 1px solid #f9f9f9;

    /* text-shadow: 1px 1px #fff; */
}

.tabpanel_title_menu {
    position: fixed;
    z-index: 9999;
    background: #ffffff;
    border: 1px solid silver;
    padding: 5px;
    margin-top: -1px;
    margin-right: -1px;
    min-width: 120px;
}

.tabpanel_title_menu div.title {
    float: none !important;
    cursor: pointer;
    padding: 3px 6px;
}

.tabpanel_title_menu div.title:hover,
.tabpanel_title_menu div.active:hover {
    background: #f1f1f1;
}

.tabpanel_title_menu div.active {
    border: 0;
    background: inherit;
    color: inherit;
}

.tabpanel_title_menu div.title a {
    float: right;
}

.tabPanel .noresult {
    margin: 10px;
}

/* Toggler */
.toggler .title {
    text-align: left;
    padding: 4px 10px;
    font-weight: 500;
    line-height: 20px;
    /* border-radius: 4px; */
    cursor: pointer;
    margin: 2px 0;
    
    background: none repeat scroll 0 0 #2abed4;
    border: 1px solid #4d8fbd;
    color: #fff;
    
    /* background: -webkit-linear-gradient(#90c8f0, #2abed4);
    background: -o-linear-gradient(#90c8f0, #2abed4);
    background: -moz-linear-gradient(#90c8f0, #2abed4);
    background: linear-gradient(#90c8f0, #2abed4); */

    /* text-shadow: 1px 1px #4d8fbd; */
}

.toggler .active {
    color: #333;
    background: #F0F0F0;
    border: 1px solid #e7e7e7;
    
    /* background: -webkit-linear-gradient(#f9f9f9, #f0f0f0);
    background: -o-linear-gradient(#f9f9f9, #f0f0f0);
    background: -moz-linear-gradient(#f9f9f9, #f0f0f0);
    background: linear-gradient(#f9f9f9, #f0f0f0); */

    /* text-shadow: 1px 1px #fff; */
}

.toggler .element {
}

/* Tips */
.tip-wrap .tip {
    z-index: 13000;
    border: 1px solid #c5c5c5;
    background: #e6e6e6;
}
 
.tip-wrap .tip-title {
    font-weight: 500;
    margin: 0;
    color: var(--pm-body-color);
    padding: 5px 5px 0 5px;
}
 
.tip-wrap .tip-text {
    padding: 5px;
}

.tip-wrap .admin_form td {
    height: auto !important;
}

.tip-wrap .admin_form td.field_label {
    width: 80px;
}

/* Progress bar */
.progressbar {
    background: #bfbfbf;
    width: 100%;
    height: 12px;
    line-height: 12px;
    overflow: hidden;
    /* border-radius: 2px; */
}

.progressbar .progress {
    background: #2abed4;
    height: 12px;
    line-height: 12px;
    font-size: 12px;
    color: #fff;
}

/* App Layout */

#app_header_outer {
    /* background: url('../images/header_bg.png') repeat-x top; */
    background: #252525;
    height: 49px;
    overflow: hidden;
}

#app_header_inner {
    height: 49px;
    position: relative;
}

#logo {
    position: absolute;
    top: 0;
    /* left: -10px; */
    color: #fff;
    font-size: 22px;
    line-height: 47px;
    font-weight: 500;
}

#logo a {
    color: #fff;
    font-size: 17px;
    line-height: 47px;
    font-weight: 500;
    outline: 0;
}

#logo a:hover {
    text-decoration: none;
}

#logo a img {
    float: left;
    height: 30px;
    margin: 10px;
}

#topnav {
    position: absolute;
    top: 14px;
    right: 10px;
    color: #ccc;
}

#body_outer {
    padding: 10px;
}

body.layout_table #body_outer, body.layout_form #body_outer, body.layout_archive #body_outer {
    padding: 0;
}

body.has_pagenav #body_outer {
    padding: 0 0 28px 0 !important;
}

body.has_itemnav #body_outer {
    padding: 0 0 26px 0 !important;
}

body.layout_layout #body_outer {
    padding: 0 !important;
}

body.layout_pdf #body_outer, body.layout_image #body_outer {
    padding: 0;
}

body.layout_sidebar #body_outer {
    /*padding-top: 41px !important;*/
    /*padding-left: 0 !important;*/
    /*padding-right: 0 !important;*/
    /*padding-bottom: 0 !important;*/
}

#app_footer_outer {
    border-top: 1px solid #E7E7E7;
    padding: 12px 15px;
    position: relative;
    
    background: #f0f0f0;
    /* background: -webkit-linear-gradient(#f9f9f9, #f0f0f0);
    background: -o-linear-gradient(#f9f9f9, #f0f0f0);
    background: -moz-linear-gradient(#f9f9f9, #f0f0f0);
    background: linear-gradient(#f9f9f9, #f0f0f0); */
}

#app_footer_inner {
    text-align: left;
    color: #999;
    /* font-size: 11px; */
    font-size: 12px;
}

#app_footer_inner #loading_bar {
    position: absolute;
    top: 12px;
    right: 12px;
}

iframe#app {
    background: #f9f9f9;
}

body.has_toolbar #body_outer {
    padding-top: 40px !important;
}

#app_header_inner .hello {
    color: #fff;
    margin-right: 5px;
}

#app_footer_inner #clock {
    position: absolute;
    top: 0;
    right: 0;
    width: 100px;
    text-align: center;
    padding-top: 4px;
}
#app_footer_inner #clock .clock {
    color: var(--pm-body-color);
    font-size: 13px;
}

#app_footer_inner #clock .date {
    color: #999;
}

/* Admin Tables */

.noresult {
    text-align: inherit;
    padding: 10px 5px;
    /*color: #999;
    border: 1px solid #E7E7E7;
    background: #fff;*/
    /* border-radius: 4px; */
    margin: 10px;
}

#table_footer {
    border: 0;
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    overflow: hidden;
    background: #ffffff;
    height: 34px;
    z-index: 2000;
}

#table_footer .inner {
    border: 1px solid #E7E7E7;
    color: #999;
    /* font-size: 11px; */
    font-size: 12px;
    height: 34px;
    background: #f9f9f9;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    padding: 4px 0;
}

#table_footer .block {
    float: left;
    padding-right: 6px;
    line-height: 20px;
}

#table_footer .table_nav, #table_footer .prev_item, #table_footer .next_item, #table_footer .item_nav {
    float: left;
}

#table_footer .table_limit, #table_footer .table_res, #table_footer .table_extra, #table_footer .item_extra {
    float: right;
    padding: 2px 6px 2px 0;
    text-align: right;
    white-space: nowrap;
    overflow: hidden;
    line-height: 20px;
}

#table_footer label {
    line-height: 20px;
    vertical-align: top;
}

#table_footer input, #table_footer select {
    vertical-align: top;
}

#table_footer div.right {
    float: right;
}

.scrollbar {
    overflow: auto;
    *zoom: 1;
    /*border: 1px solid #E7E7E7;*/
    /*background: #F9F9F9;*/
}

.layout_sidebar .scrollbar {
    /*border: 1px solid #f9f9f9;*/
}

.layout {
    /*background: #F9F9F9;   */
}

.scrollbar .admin_table, .scrollbar .admin_form,
.layout_table .admin_table, .layout_table .admin_form {
    /*margin: -1px;*/
    /*margin: 0 auto;*/
}

div.table {
    /*text-align: center;*/
}

div.table > table {
}

.admin_table {
    background-color: #E7E7E7;
    border-spacing: 1px;
    color: var(--pm-body-color);
    border-collapse: separate;
    /*table-layout: fixed;*/
}

.layout_sidebar .admin_table {
    margin: 0 auto;
}

.admin_table ul.messages li {
    margin-bottom: 3px !important;
}

.admin_table td, .admin_table th {
    padding: 4px;
    line-height: 12px;
}

.admin_table td a, .admin_table th a {
    line-height: 12px;
}

.admin_table td div.td a {
    line-height: 25px;
}

.admin_table th {
    white-space: nowrap;
}

.admin_table th.order a {
    display: block;
    padding: 4px;
    font-size: 14px;
}

.admin_table th.order a span {
    font-weight: 500 !important;
}

.admin_table th.order a span.tasks_split {
    color: #333;
}

.admin_table th.order a:hover {
    text-decoration: none !important;
    background: #fbfbfb;
}

.admin_table th .th {
    height: 20px;
    line-height: 20px;
    /*overflow: hidden;*/
    vertical-align: middle;
}

.admin_table th .th a, .admin_table th .th span {
    line-height: 20px;
}

.admin_table td .td {
    height: 27px;
    line-height: 27px;
    overflow: hidden;
    vertical-align: middle;
}

.admin_table td div.table {
    padding: 0;
}

.admin_table th {
    border-left: 1px solid #FFFFFF;
    border-right: 0;
    border-top: 0;
    color: var(--pm-body-color);
    text-align: center;
    
    border-bottom: 1px solid #e7e7e7;
    background: #f0f0f0;
    /* background: -webkit-linear-gradient(#f9f9f9, #f0f0f0);
    background: -o-linear-gradient(#f9f9f9, #f0f0f0);
    background: -moz-linear-gradient(#f9f9f9, #f0f0f0);
    background: linear-gradient(#f9f9f9, #f0f0f0); */

    /* text-shadow: 1px 1px #fff; */
}

.admin_table tr th.disabled a, .admin_table tr th.disabled span {
    color: var(--pm-body-color) !important;
}

.admin_table tr td.disabled {
    background-color: #ccc !important;
}

.admin_table tr td.disabled a, .admin_table tr td.disabled span {
    color: var(--pm-body-color) !important;
}

body .admin_table tr.disabled td {
    background-color: #E7E7E7;
    border-top: 1px solid #FFFFFF;
}

body .admin_table tr.disabled td a {
    color: #999;
}

.admin_table tr.row1 > td {
    background: none repeat scroll 0 0 #F9F9F9;
    border-top: 1px solid #FFFFFF;
}

body .admin_table tr.checked > td,
body .admin_table tr.checked > td:hover,
body .admin_table tr.checked:hover > td,
body .admin_table tr.checked:hover > td:hover{
    background: none repeat scroll 0 0 #e5f3fb;
    
    /* background: -webkit-linear-gradient(#f5fbff, #e5f3fb);
    background: -o-linear-gradient(#f5fbff, #e5f3fb);
    background: -moz-linear-gradient(#f5fbff, #e5f3fb);
    background: linear-gradient(#f5fbff, #e5f3fb); */
}


.admin_table tr.row0 td.msg, .admin_table tr.row0:hover td.msg,
.admin_table tr.row1 td.msg, .admin_table tr.row1:hover td.msg,
.admin_table tr th.msg, .admin_table tr:hover th.msg {
    background: none repeat scroll 0 0 #b0ebae !important;
}

.admin_table tr.row0 td.warn, .admin_table tr.row0:hover td.warn,
.admin_table tr.row1 td.warn, .admin_table tr.row1:hover td.warn,
.admin_table tr th.warn, .admin_table tr:hover th.warn {
    background: none repeat scroll 0 0 #fae8b6 !important;
}

.admin_table tr.row0 td.err, .admin_table tr.row0:hover td.err,
.admin_table tr.row1 td.err, .admin_table tr.row1:hover td.err,
.admin_table tr th.err, .admin_table tr:hover th.err,
.admin_table tr th.err, .admin_table tr:hover th.err {
    background: none repeat scroll 0 0 #FFD5D5 !important;
}

.admin_table tr.row0 td.msg, .admin_table tr.row0:hover td.msg,
.admin_table tr.row1 td.msg, .admin_table tr.row1:hover td.msg,
.admin_table tr th.msg, .admin_table tr:hover th.msg {
    background: none repeat scroll 0 0 #b0ebae;
}

.admin_table tr.row0 td.message, .admin_table tr.row0:hover td.message,
.admin_table tr.row1 td.message, .admin_table tr.row1:hover td.message,
.admin_table tr th.message, .admin_table tr:hover th.message {
    color: #0e7238;
    background-color: #b0ebae;
}

.admin_table tr.row0 td.error, .admin_table tr.row0:hover td.error,
.admin_table tr.row1 td.error, .admin_table tr.row1:hover td.error,
.admin_table tr th.error, .admin_table tr:hover th.error {
    color: #98291d;
    background-color: #FFD5D5;
}

.admin_table tr.row0 td.warning, .admin_table tr.row0:hover td.warning,
.admin_table tr.row1 td.warning, .admin_table tr.row1:hover td.warning,
.admin_table tr th.warning, .admin_table tr:hover th.warning {
    color: #9f7500;
    background-color: #fae8b6;
}

.admin_table tr.row0 td.active, .admin_table tr.row0:hover td.active,
.admin_table tr.row1 td.active, .admin_table tr.row1:hover td.active,
.admin_table tr th.active, .admin_table tr:hover th.active {
    color: #9f7500;
    background-color: #fae8b6;
}

.admin_table tr.row0 td.inactive, .admin_table tr.row0:hover td.inactive,
.admin_table tr.row1 td.inactive, .admin_table tr.row1:hover td.inactive,
.admin_table tr th.inactive, .admin_table tr:hover th.inactive {
    color: #ccc;
    background-color: #FBFBFB;
}

.admin_table tr.row0 td.remake, .admin_table tr.row0:hover td.remake,
.admin_table tr.row1 td.remake, .admin_table tr.row1:hover td.remake,
.admin_table tr th.remake, .admin_table tr:hover th.remake {
    background: #a8cde3;
    color: #1c6b8b;
}

.admin_table tr.row0 td.selected, .admin_table tr.row0:hover td.selected,
.admin_table tr.row1 td.selected, .admin_table tr.row1:hover td.selected,
.admin_table tr th.selected, .admin_table tr:hover th.selected {
    background: #e5f3fb;
    color: #1c6b8b;
}

.admin_table td {
    background: none repeat scroll 0 0 #FFFFFF;
    border: 1px solid #FFFFFF;
    font-weight: normal;
}

.admin_table .admin_table td, .admin_table .admin_form td {
    /* padding-top: 0 !important;
    padding-bottom: 0 !important;
    height: 18px !important; */
}

.admin_table tr:hover > td {
    background: #FFFFDD;
}

.admin_table td.center {
    text-align: center;
}

.admin_table td.child > div {
    padding: 0 0 0 33px !important;
    display: block;
    text-align: left;
}

.admin_table td.child > div:first-child {
    background: url(../images/admin_table_child_td.png) no-repeat 13px 3px !important;
    min-height: 27px;
}

.admin_table .spacer {
    padding: 0;
    height: auto;
    line-height: 100%;
    background: #ccc;
}

.admin_table .spacer .td {
    height: 4px;
}

.admin_table tr:hover td.spacer {
    background: #ccc;
}

.admin_table .inputbox, .admin_table select {
    width: 100%;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    /*padding: 1px 2px;
    margin: 4px 0;
    margin: 0;*/
    *width: 80%;
}

.admin_table select, .admin_table .inputbox {
    margin: 1px 0;
}

.admin_table td .checkbox {
    /*margin: 5px 0;*/
    *margin: 0;
}

.admin_table label {
    margin: 0;
    width: 100%;
    overflow: hidden;
    height: 18px;
    line-height: 18px;
    display: inline-block;
    *display: block;
    text-align: left;
}

.admin_table .field_input span {
    line-height: 18px;
}

.admin_table th button {
    margin: 0 4px;
    line-height: 11px;
    /* font-size: 10px; */
    font-size: 11px;
    *width: auto !important;
}

.admin_table th button.toggle {
    line-height: 100%;
    font-size: 18px;
    width: 20px;
    margin: 0;
    padding: 0;
    display: inline-block;
    vertical-align: middle;
}

.admin_table th.column_control button {
    width: 25px;
}

.admin_table td button {
    *width: 100%;
}

.admin_table td.number a {
    /* font-size: 13px; */
    font-size: 14px;
    white-space: nowrap;
}

.admin_table td.number .td {
    overflow-x: visible !important;
}

.admin_table td.toggle button {
    width: 22px;
    line-height: 12px;
}

.admin_table .toggler .title {
    line-height: 100%;
    padding-top: 3px;
    padding-bottom: 3px;
}

.admin_table td.nopadd select, .admin_table td.nopadd input {
    margin: 0;
}

.admin_table td.message div,
.admin_table td.error div,
.admin_table td.warning div,
.admin_table td.remake div,
.admin_table td.pending div,
.admin_table td.active div,
.admin_table td.inactive div {
    /* font-size: 11px; */
    font-size: 12px;
}

.table_td_column_content .element {
    height: auto !important;
}

/* Filters */

.filters .clr {
    *margin-bottom: -1px;
    *margin-right: -1px;
}

.filter {
    padding: 0;
    float: left;
    margin-left: -6px;
    margin-top: -2px;
    margin-right: 6px;
    margin-bottom: 4px;
    border-right: 1px solid #fff;
    padding-left: 6px;
}

.sidebar_filter .filter {
    padding-right: 0;
    float: none;
}

.filter_table {
    /*border: 1px solid #E7E7E7;
    background: #f9f9f9;
    height: 32px;*/
    border-right: 1px solid #e7e7e7;
}

.layout_sidebar .filter_table {
    border: 1px solid #fff;
    background: #F9F9F9;
}

.filter_table td {
    padding: 2px 8px 2px 0;
    vertical-align: middle;
}

.filter_table td label {
    font-weight: normal;
    /* font-size: 11px; */
    font-size: 12px;
    margin-right: 0;
}

.filter button, .filter button.primary {
    line-height: 16px;
    margin-left: -6px;
    font-size: 11px;
}

.filter_table td label, .filter_table td input, .filter_table td select {
    vertical-align: middle;
    max-width: 150px;
}

.sidebar_filter .filter .filter_table .inputbox, .sidebar_filter .filter .filter_table select {
    width: 105px;
}

.filter_cell small {
    display: none;
}

/* Forms */
div.col {
    float: left;
    width: 50%;
    margin-right: -10px;
}

div.col.col-100 {
    width: 100%;
}

div.col.col-25 {
    width: 25%;
}

div.col.col-33 {
    width: 33%;
}

div.col.col-17 {
    width: 16.66666%;
}

div.col .inner {
    padding: 10px;
    *padding-top: 15px;
}

div.col .col .inner {
    padding-left: 0;
    padding-right: 0;
}

div.col pre {
    background: #fff;
}

fieldset.col {
    *zoom:1;
}

.admin_form {
    background-color: #E7E7E7;
    border-spacing: 1px;
    color: var(--pm-body-color);
    width: 100%;
}

fieldset div.table {
    padding: 2px;
}

.admin_form .field_label {
    width: 150px;
    text-align: right;
    background: #fbfbfb;
}

.admin_form .field_tip {
    white-space: nowrap;
    width: 30%;
}

table .admin_form .field_label {
    width: 35% !important;
}
table .admin_form .field_label label {
    /* font-size: 10px; */
    font-size: 11px;
}

.admin_form td {
    background: none repeat scroll 0 0 #FFFFFF;
    border: 1px solid #FFFFFF;
    height: 25px;
    padding: 6px;
}

.admin_form .td .admin_table td {
    padding: 0 6px;
}

.admin_form .separator td {
    font-weight: 500;
    border-left: 1px solid #FFFFFF;
    color: var(--pm-body-color);
    /*font-size: 1px;
    line-height: 1px;
    height: 1px;*/
    
    border-bottom: 1px solid #e7e7e7;
    background: #f0f0f0;
    /* background: -webkit-linear-gradient(#f9f9f9, #f0f0f0);
    background: -o-linear-gradient(#f9f9f9, #f0f0f0);
    background: -moz-linear-gradient(#f9f9f9, #f0f0f0);
    background: linear-gradient(#f9f9f9, #f0f0f0); */
}

.admin_form tr.msg td.field_input {
    background: none repeat scroll 0 0 #b0ebae !important;
}

.admin_form tr.warn td.field_input {
    background: none repeat scroll 0 0 #fae8b6 !important;
}

.admin_form tr.err td.field_input {
    background: none repeat scroll 0 0 #FFD5D5 !important;
}

.admin_form tr.message td.field_input {
    color: #0e7238;
    background-color: #b0ebae;
}

.admin_form tr.error td.field_input {
    color: #98291d;
    background-color: #FFD5D5;
}

.admin_form tr.warning td.field_input {
    color: #9f7500;
    background-color: #fae8b6;
}

.admin_form tr.active td.field_input {
    color: #9f7500;
    background-color: #fae8b6;
}

.admin_form tr.inactive td.field_input {
    color: #ccc;
    background-color: #FBFBFB;
}

.admin_form tr.remake td.field_input {
    background: #a8cde3;
    color: #1c6b8b;
}

span.requiredmark {
    font-weight: 500;
    font-size: 14px;
    color: red;
}

/* Calendar */

.admin_table th.period {
    width: 31px;
}

.admin_table th.shift {
    padding-top: 2px;
    padding-bottom: 2px;
}

.admin_table th.shift .th {
    height: 25px;
    width: 25px;
    line-height: 25px;
}

.admin_table th.period, .admin_table td.period, .admin_table tr.group th.period {
    text-align: center;
}

.admin_table th.weekday6, .admin_table th.weekday7 {
    background: none repeat scroll 0 0 #E4E4E4;
}

.admin_table th.weekday6, .admin_table th.weekday7,
.admin_table th.weekday6 a, .admin_table th.weekday7 a,
.admin_table th.weekday6 span, .admin_table th.weekday7 span {
    color: red;
}

.admin_table tr.row1 th.today a, .admin_table tr.row0 th.today a,
.admin_table tr.row1 th.today span, .admin_table tr.row0 th.today span,
.admin_table tr th a.today, .admin_table tr th a.today,
.admin_table tr th span.today, .admin_table tr th span.today {
    color: #27ae60 !important;
    font-weight: 500;
}

.admin_table td.shift {
    padding-top: 3px;
    padding-bottom: 3px;
}

.admin_table td.shift .td {
    height: 25px;
    width: 25px;
}

.admin_table tr.row1 td.weekday6, .admin_table tr.row1 td.weekday7 {
    background: none repeat scroll 0 0 #EEEEEE;
}

.admin_table tr.row0 td.weekday6, .admin_table tr.row0 td.weekday7 {
    background: none repeat scroll 0 0 #F1F1F1;
}

.admin_table tr.row1 td.today a, .admin_table tr.row0 td.today a,
.admin_table tr.row1 td.today span, .admin_table tr.row0 td.today span {
    color: #27ae60 !important;
    font-weight: 500;
}

.admin_table tr.row1 td.weekend a, .admin_table tr.row0 td.weekend a,
.admin_table tr th.weekend a,
.admin_table tr.row1 td.weekend span, .admin_table tr.row0 td.weekend span,
.admin_table tr th.weekend span {
    color: #FF0000 !important;
    font-weight: 500;
}

.admin_table tr.row1 td.holiday a, .admin_table tr.row0 td.holiday a,
.admin_table tr th.holiday a,
.admin_table tr.row1 td.holiday span, .admin_table tr.row0 td.holiday span,
.admin_table tr th.holiday span {
    color: #FF0000 !important;
    font-weight: 500;
}

.admin_table tr.group th {
    text-align: left;
}

.admin_table td.period {
    padding: 0;
    text-align: center;
    height: 36px;
    line-height: 36px;
}

.admin_table td.period .td {
    line-height: 33px;
    height: 33px;
}

.admin_table td.period a, .admin_table td.period span {
    display: block;
    line-height: 33px;
    height: 33px;
    width: 29px;
    overflow: hidden;
}

body .admin_table td.period a, .admin_table td.period span span {
    padding: 0;
    display: inline;
    margin: 0;
    height: auto;
    line-height: 100%;
    width: auto;
}

/*.admin_table td.period .split a, .admin_table td.period .split span {
    line-height: 18px;
    height: 18px;
    width: 20px;
}*/

.admin_table td.period .min_button a, .admin_table td.period .min_button span {
    line-height: 20px;
    height: 20px;
    width: 20px;
    margin: 0 auto;
}

.admin_table td .split, .admin_table td.period .split {
    line-height: 10px;
}

.admin_table td .split small {
    /* font-size: 9px; */
    font-size: 10px;
    color: #ccc;
}

.admin_table td.period .split, .admin_table td.period .split a, .admin_table td.period .split span, .admin_table th.period-total .split {
    /* font-size: 10px; */
    font-size: 10px;
}

.split .min_button {
    height: 20px !important;
    line-height: 20px !important;
}

.split input {
    /*padding: 0 !important;*/
    margin-bottom: 0 !important;
}

.admin_table td.period a.pending {
    color: #999 !important;
}

.admin_table td.period a .details {
    color: var(--pm-body-color);
    /* font-size: 10px; */
    font-size: 11px;
}

.admin_table td.now, .admin_table th.now {
    border-left: 2px solid red;
}

.admin_table tr.now td, .admin_table tr.now th {
    border-top: 2px solid red;
}

.admin_table tr.now td table td, .admin_table tr.now td table th,
.admin_table tr.now th table td, .admin_table tr.now th table th {
    border-top: 0;
}

.admin_table .name {
    width: 150px !important;
}

.admin_table .new_group td {
    border-top: 1px solid #37AB20 !important;
}

.admin_table .details .th {
    height: auto;
    line-height: normal;
}

.min_button, .min_button_disabled {
    border: 0;
    background: transparent;
    width: 21px;
    height: 21px;
    line-height: 21px;
    display: inline-block;
    *display: block;
    padding: 0;
}

.admin_table .min_button, .admin_table .min_button_disabled {
    border-radius: 0;
    background: transparent;
    width: 26px;
    height: 36px;
    line-height: 36px;
    display: inline-block;
    *display: block;
    padding: 0;
    border: 0;
}

.admin_table th .min_button, .admin_table th .min_button_disabled {
    height: 25px;
    line-height: 25px;
    margin: 0;
}

.admin_table .min_button:hover {
    background: #ccc;
}

.admin_table .min_button, .admin_table .min_button .symbol {
    cursor: pointer;
}

.admin_table .min_button .symbol {
    display: block;
}

.admin_table .min_button_disabled {
    opacity: 0.8;
    /*--ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    filter: alpha(opacity=80);*/
    cursor: auto !important;
}

.admin_table th .min_button {
    background: #fff;
}

.admin_table .tz_added .symbol {
    border: 2px solid #37AB20;
}

/**
 * Components
 */

/* Stock */
.stock_planning .admin_table th.report_period {
    width: 42px;
}

.stock_planning .admin_table td.report_period a, .stock_planning .admin_table td.report_period span {
    width: 49px;
}

.stock_planning .admin_table td.report_period div.td {
    width: 49px;
}

.stock_planning .admin_table td.employees div.td {
    height: 28px;
    line-height: 28px;
}

.stock_planning #employees_select {
    position: absolute;
    width: 250px;
    height: 250px;
    overflow: auto;
    background: #fff;
    border: 1px solid #E7E7E7;
}

.stock_planning #employees_select input {
    display: block;
    float: left;
    margin: 5px;
}

.stock_planning #employees_select label {
    width: 200px;
    display: block;
    float: left;
    margin: 5px;
}

/* Cpanel */
.cpanel fieldset {
    background: #F9F9F9;
}

.cpanel fieldset button {
    vertical-align: middle;
}

.cpanel div.separator {
    overflow: hidden;
    margin: 5px 0;
    float: left;
    *zoom: 1;
}

.cpanel .separator div {
    width: 11px;
    overflow: hidden;
    height: 90px;
    /* margin: 1px; */
}

.cpanel .separator div span {
    display: block;
    width: 1px;
    overflow: hidden;
    height: 75px;
    background: #e7e7e7;
    margin: 10px 5px 0 5px;
}

.cpanel div.divider {
    overflow: hidden;
    margin: 7px 5px 6px 5px;
    *zoom: 1;
}

.cpanel .divider div {
    height: 1px;
    overflow: hidden;
}

.cpanel .divider div span {
    display: block;
    height: 1px;
    overflow: hidden;
    background: #e7e7e7;
}

.cpanel .icon {
    float: left;
    *zoom: 1;
    margin: 5px;
    /* border-radius: 5px; */
}

.cpanel .icon a {
    display: block;
    height: 90px;
    width: 90px;
    text-align: center;
    text-decoration: none;
    border: 1px solid #E7E7E7;
    color: var(--pm-body-color);
    /* font-size: 12px; */
    font-size: 13px;
    background: #fff;
    *zoom: 1;
    /* border-radius: 4px; */
    box-sizing: border-box;
}

.cpanel .icon:hover a {
    border: 1px solid #c0c0c0;
    /*border-bottom: 1px solid #e7e7e7;*/
    /* background: #fbfbfb; */
    color: var(--pm-body-color);
    box-shadow: 0px 0px 5px 0px rgba(219, 219, 219, 0.75);
    -moz-box-shadow: 0px 0px 5px 0px rgba(219, 219, 219, 0.75);
    -webkit-box-shadow: 0px 0px 5px 0px rgba(219, 219, 219, 0.75);
    height: 100px;
    width: 100px;
    margin: -5px;
    padding: 5px;
}

.cpanel .icon a span {
    display: block;
    cursor: pointer;
}

.cpanel .icon a span.img {
    height: 60px;
    line-height: 60px;
    vertical-align: middle;
}

.cpanel .icon a span.text {
    line-height: 13px;
    font-size: 12px;
    padding: 0 3px;
}

.cpanel .icon a span.img img {
    vertical-align: middle;
    width: 48px;
    height: 48px;
}

.cpanel .icon_buttons {
    position: relative;
}

.cpanel .icon_buttons a span.buttons {
    display: none;
    background: #f9f9f9;
    position: absolute;
    height: 40px;
    width: 100px;
    bottom: -40px;
    margin-left: -6px;
    border: 1px solid #c0c0c0;
    border-top: 0 !important;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.cpanel .icon_buttons a span.buttons span {
    display: inline;
}

.cpanel .icon_buttons a:hover {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.cpanel .icon_buttons a:hover span.buttons {
    display: block;
}

.cpanel .icon_buttons a span.buttons button {
    margin-top: 3px;
    /* font-size: 11px; */
    font-size: 11px;
    font-weight: 500;
    line-height: 14px;
}

.cpanel .icon_buttons a span.buttons .time {
    line-height: 16px;
    font-size: 11px;
    color: #999;
}

.cpanel .join {
    float: left;
    position: relative;
    padding-left: 20px;
    white-space: nowrap;
}

.cpanel .join .join_check {
    display: block;
    left: 0;
    padding: 5px 3px;
    position: absolute;
    top: 0;
}

/* Users */
#login_form {
    text-align: left;
    margin: 25px auto;
    width: 400px;
    border: 1px solid #E7E7E7;
    /* border-radius: 4px; */
    background: #fff;
}

#login_form h2 {
    border-bottom: 1px solid #e7e7e7;
    margin: 0 15px;
    padding: 15px 0 10px 0;
}

#login_form .login_form_wrapper {
    padding: 15px;
}

#login_form .login_form td {
    padding: 6px;
}

#login_form .login_form .field_label {
    text-align: right;
    padding-right: 12px;
}

#login_form .login_form .field_label label {
    font-weight: 500;
}

#login_form button {
    font-size: 13px;
}

/* Planning */
/* Calendar */

.admin_table th.planning_period {
    width: 48px;
    padding-left: 0;
    padding-right: 0;
}

.admin_table td.planning_period {
    width: 48px;
}

.admin_table td.planning_period a, .admin_table td.planning_period span {
    width: 48px;
}

.admin_table td.planning_period div {
    width: 48px;
}

/* Production */
.production_appointment_task_table {
    padding-bottom: 45px;
}

.production_appointment_task_table h2 {
    background: #fff;
    padding: 5px;
}
.production_appointment_task_table h4 {
    margin: 0;
}

.production_appointment_task_items_table td {
    vertical-align: top;
    padding: 15px;
}

.production_appointment_task_items_table td table td {
    padding: 4px;
}

.production_appointment_task_table .icon .number {
    font-size: 36px;
    line-height: 44px;
    font-weight: 500;
    white-space: nowrap;
    /* text-shadow: 1px 1px #fff; */
}

.production_appointment_task_table .icon .number .smaller {
    font-size: 17px;
    line-height: 44px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.production_appointment_task_table .icon .number .smallest {
    font-size: 13px;
    line-height: 44px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.production_appointment_task_table .icon .number .ultrasmall {
    /* font-size: 11px; */
    font-size: 12px;
    line-height: 44px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.production_appointment_task_table .icon .info {
    margin-top: 6px;
}

.production_appointment_task_table .smallnumber {
    display: inline;
    font-size: 13px;
    font-weight: normal;
}

.production_appointment_task_table td.order {
    vertical-align: top;
    padding-top: 15px;
    width: 170px;
}

.production_appointment_task_table td.order label {
    font-size: 24px;
    font-weight: 500;
    line-height: 30px;
    display: inline;
}

.production_appointment_task_table td.order .checkbox {
    margin: 0 6px 0 0;
}

.production_appointment_task_table td.order .extra_number {
    font-size: 15px;
    font-weight: normal;
}

.production_appointment_task_table .icon div {
    position: relative;
}

.cpanel .icon a.message, .cpanel .icon a.message:hover {
    color: #0e7238;
    background-color: #b0ebae;
    border: 1px solid #27ae60;
}

.cpanel .icon a.error, .cpanel .icon a.error:hover {
    color: #98291d;
    background-color: #FFD5D5;
    border: 1px solid #e74c3c;
}

.cpanel .icon a.warning, .cpanel .icon a.warning:hover {
    color: #9f7500;
    background-color: #fae8b6;
    border: 1px solid #f4b400;
}

.cpanel .icon a.active, .cpanel .icon a.active:hover {
    color: #9f7500;
    background-color: #fae8b6;
    border: 1px solid #f4b400;
}

.cpanel .icon a.inactive, .cpanel .icon a.inactive:hover {
    color: #eee;
    background-color: #bfbfbf;
    border: 1px solid #a7a7a7;
}

.cpanel .icon a.remake, .cpanel .icon a.remake:hover {
    background: #a8cde3;
    border: 1px solid #6abce2;
    color: #1c6b8b;
}

.cpanel .icon .check {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    padding: 5px;
    *padding: 1px;
    *zoom: 1;
}

.cpanel .icon:hover .check {
    top: 5px;
    left: 0;
}

.cpanel .icon .check .checkbox {
    margin: 0;
}

.cpanel .icon .actions, .cpanel .icon:hover .actions {
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 2px 0;
    background: #ffff00;
    color: #000;
    font-weight: 500;
    /* font-size: 12px; */
    font-size: 13px;
    border: 1px solid #000;
    height: auto;
    width: 18px;
    text-align: center;
    /* border-radius: 4px !important; */
}

.cpanel .icon:hover .actions {
    right: 5px;
    bottom: 10px;
}

.actionstabtitle {
    background: #ffff00 !important;
    color: #000 !important;
    /* text-shadow: 1px 1px #fff !important; */
}

.actionstabtitle.active {
    border-top-color: #000 !important;
    border-left-color: #000 !important;
    border-right-color: #000 !important;
    border-bottom-color: #ffff00 !important;
}

.cpanel .icon a.message:hover, .cpanel .icon a.error:hover, .cpanel .icon a.warning:hover, .cpanel .icon a.active:hover, .cpanel .icon a.pending:hover, .cpanel .icon a.inactive:hover, .cpanel .icon a.remake:hover {
    /* opacity: .6; */
    /*--ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
    filter: alpha(opacity=60);*/
}

.cpanel .icon_buttons a:hover {
    opacity: 1 !important;
}

.cpanel .icon_buttons a.message:hover span.content, .cpanel .icon_buttons a.error:hover span.content, .cpanel .icon_buttons a.warning:hover span.content, .cpanel .icon_buttons a.active:hover span.content, .cpanel .icon_buttons a.pending:hover span.content, .cpanel .icon_buttons a.inactive:hover span.content, .cpanel .icon_buttons a.remake:hover span.content {
    /* opacity: .6; */
    /*--ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
    filter: alpha(opacity=60);*/
}

.cpanel .icon a button.status {
    font-size: 11px;
    line-height: 12px;
    font-weight: normal;
}

.cpanel .icon a button.status:hover {
    opacity: 1;
}

.cpanel .icon a .crm_number {
    display: block;
    margin-top: -7px;
    margin-bottom: 2px;
    font-size: 11px;
}

button.inactive {
    color: #eee;
    background: #bfbfbf;
    border: 1px solid #adadad;
}

button.message {
    color: #fff;
    background: #27ae60;
    /* border: 1px solid #27ae60; */
    
    /* background: -webkit-linear-gradient(#e9ffcf, #b0ebae);
    background: -o-linear-gradient(#e9ffcf, #b0ebae);
    background: -moz-linear-gradient(#e9ffcf, #b0ebae);
    background: linear-gradient(#e9ffcf, #b0ebae); */
}

button.error {
    color: #fff;
    background: #e74c3c;
    /* border: 1px solid #e74c3c; */
    
    /* background: -webkit-linear-gradient(#ffe6e6, #FFD5D5);
    background: -o-linear-gradient(#ffe6e6, #FFD5D5);
    background: -moz-linear-gradient(#ffe6e6, #FFD5D5);
    background: linear-gradient(#ffe6e6, #FFD5D5); */
}

button.pending {
    color: #999;
    background: #f9f9f9;
    border: 1px solid #E7E7E7;
    
    /* background: -webkit-linear-gradient(#ffffff, #f9f9f9);
    background: -o-linear-gradient(#ffffff, #f9f9f9);
    background: -moz-linear-gradient(#ffffff, #f9f9f9);
    background: linear-gradient(#ffffff, #f9f9f9); */
}

button.active {
    color: #252525;
    background: #f4b400;
    /* border: 1px solid #e7bd72; */
    
    /* background: -webkit-linear-gradient(#fff8ca, #fff3a3);
    background: -o-linear-gradient(#fff8ca, #fff3a3);
    background: -moz-linear-gradient(#fff8ca, #fff3a3);
    background: linear-gradient(#fff8ca, #fff3a3); */
}

button.remake {
    background: #a8cde3;
    border: 1px solid #6abce2;
    color: #1c6b8b;
    
    /* background: -webkit-linear-gradient(#d7f0ff, #a8cde3);
    background: -o-linear-gradient(#d7f0ff, #a8cde3);
    background: -moz-linear-gradient(#d7f0ff, #a8cde3);
    background: linear-gradient(#d7f0ff, #a8cde3); */
}

.admin_table .week_number {
    font-weight: 500;
    font-size: 15px;
}

.action_table td div.td {
    /*height: 18px;
    line-height: 18px;*/
    height: auto !important;
}

.production_appointment_task_items_table .action_table td {
    font-weight: 500;
}

.production_appointment_task_item_actions_table .item_number {
    font-size: 17px;
    font-weight: 500;
}

.production_appointment_task_item_actions_table .action_table td {
    font-size: 15px;
    font-weight: 500;
}

.production_appointment_task_item_actions_table .action_table td .td {
    overflow: visible !important;
    height: auto !important;
    line-height: 25px;
}

.production_appointment_task_item_errors_table .item_number {
    font-size: 17px;
    font-weight: 500;
}

.production_appointment_task_items_table .typedata {
    max-height: 87px;
    overflow: auto;
    margin-top: 10px;
}

.production_appointment_task_items_table .typedata table {
    margin: 0;
}

.production_appointment_task_items_table .typedata div.table {
    padding: 0;
}

.admin_table .action_table .checkbox {
    /*margin-top: 2px;*/
}

#production_employees_form {
    margin: 0 auto;
    width: 620px;
    text-align: center;
}

#production_employees_form table {
    margin: 0 auto;
}

#production_employees_form select {
    font-size: 17px;
}

#production_employees_form option {
    font-size: 17px;
}

#production_employees_form div.table {
    width: 500px;
    margin: 20px auto 0 auto;
}

#production_employees_form .letter {
    margin: 2px;
    font-size: 17px;
    height: 30px;
    line-height: 100%;
    width: 35px;
    padding: 1px 4px;
}

.production_report .admin_table th.report_period {
    width: 42px;
}

.production_report .admin_table td.report_period a, .production_report .admin_table td.report_period span {
    width: 49px;
    white-space: nowrap;
}

.production_report .admin_table td.report_period div.td {
    width: 49px;
}

.production_report .admin_table th.report_total {
    width: 62px;
}

.production_report .admin_table td.report_total a, .production_report .admin_table td.report_total span {
    width: 69px;
    white-space: nowrap;
}

.production_report .admin_table td.report_total div.td {
    width: 69px;
}

.production_report .admin_table td.employees div.td {
    height: 28px;
    line-height: 28px;
}

.production_report #employees_select {
    position: absolute;
    width: 250px;
    height: 250px;
    overflow: auto;
    background: #fff;
    border: 1px solid #E7E7E7;
}

.production_report #employees_select input {
    display: block;
    float: left;
    margin: 5px;
}

.production_report #employees_select label {
    width: 200px;
    display: block;
    float: left;
    margin: 5px;
}

.appointment_notes {
    font-size: 16px;
}

.production_appointment_session_task_table #table_footer {
    background: #f9f9f9;
}

.production_appointment_session_task_table #table_footer .inner {
    border: 1px solid #fff;
}

.production_appointment_task_item_errors_table td .admin_table td strong.title {
    font-size: 15px;
}

.production_appointment_task_item_errors_table .status_data, .production_appointment_task_item_errors_table table .admin_form .field_label label {
    font-size: 15px;
}

.toolbar .selected_date {
    background:#9f7500; 
    color: #fff; 
    text-shadow: none;
}

/* #res_selected {
    border-radius: 4px;
} */

td.task_name a {
    font-size: 13px;
}

.icon a.close, .icon:hover a.close {
    cursor: pointer;
    /* font-size: 11px; */
    font-size: 12px;
    /* font-weight: 500; */
    font-weight: normal;
    padding: 1px 4px;
    white-space: nowrap;
    display: inline-block;
    vertical-align: middle;
    line-height: 14px;
    background: #34495e;
    color: #fff;
    border: 0;
    margin: -2px -6px 0 6px;
    /* border-radius: 4px; */
    width: auto;
    height: auto;
    position: absolute;
    top: 6px;
    right: 10px;
    
    *padding: 0 4px;
    *zoom: 1;
    *display: inline;
    *width: auto;
    *overflow: visible;
    
    /* background: -webkit-linear-gradient(#ffce87, #34495e);
    background: -o-linear-gradient(#ffce87, #34495e);
    background: -moz-linear-gradient(#ffce87, #34495e);
    background: linear-gradient(#ffce87, #34495e); */
}

.icon:hover a.close {
    top: 11px;
    right: 10px;
}

#report_archive_intervals {
    margin: 0px;
    padding: 0px;
    display: block;
    overflow: auto;
    border: 1px solid #e7e7e7;
    border-right: 0;
    float: left;
}

#report_archive_preview {
    margin: 0px;
    padding: 0px;
    display: block;
    overflow: auto;
    border: 1px solid #e7e7e7;
    border-left: 0;
    float: left;
}

#order_appointments_timeline {
    margin: 0px;
    padding: 0px;
    display: block;
    overflow: auto;
    border: 1px solid #e7e7e7;
    border-right: 0;
    float: left;
}

#order_appointments_list {
    margin: 0px;
    padding: 0px;
    display: block;
    overflow: auto;
    border: 1px solid #e7e7e7;
    float: left;
}

/* Timeline */
.vis-timeline {
    border-color: #e7e7e7;
    background: #fff;
}

.vis-labelset .vis-label {
    font-weight: 500;
}

.vis-panel.vis-top {
    border-bottom: 1px solid #e7e7e7;
    background: #f0f0f0;
    /* background: -webkit-linear-gradient(#f9f9f9, #f0f0f0);
    background: -o-linear-gradient(#f9f9f9, #f0f0f0);
    background: -moz-linear-gradient(#f9f9f9, #f0f0f0);
    background: linear-gradient(#f9f9f9, #f0f0f0); */
}

.vis-text.vis-major, .vis-text.vis-minor {
    font-weight: 500;
    color: var(--pm-body-color);
}

.vis-time-axis .vis-grid.vis-odd {
    background: #F9F9F9;
}

.vis-item.vis-selected {
    background: none repeat scroll 0 0 #e5f3fb;
    
    /* background: -webkit-linear-gradient(#f5fbff, #e5f3fb);
    background: -o-linear-gradient(#f5fbff, #e5f3fb);
    background: -moz-linear-gradient(#f5fbff, #e5f3fb);
    background: linear-gradient(#f5fbff, #e5f3fb); */
    color: #333;
    border-color: #bee7ff;
}

.vis-item .vis-item-overflow {
    overflow: visible;
}

.vis-item .vis-item-content {
    padding: 2px 5px;
    position: relative;
}

.vis-item .vis-item-content .progressbar {
    margin-top: 2px;
    min-width: 120px;
}

.vis-item .vis-item-content .shift {
    display: inline-block;
    border-radius: 0;
    background: #333;
    color: #fff;
    margin-right: 4px;
    text-align: center;
    min-width: 16px;
    font-size: 11px;
}

.vis-item .vis-item-content .shift-i {
    background: #61a9f3;
}

.vis-item .vis-item-content .shift-ii {
    background: #f381b9;
}

.vis-item .vis-item-content .shift-iii {
    background: #61e3a9;
}

.vis-item.pending {
    border-color: #bfbfbf !important;
}

div.vis-tooltip {
    position: absolute;
    visibility: hidden;
    padding: 5px;
    white-space: nowrap;
    color: var(--pm-body-color);
    background-color: #e6e6e6;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    border: 1px solid #c5c5c5;
    box-shadow: none;
    pointer-events: none;
    z-index: 5;
    font-size: 13px;
}

body .vis-item.vis-range {
    border-radius: 0;
}

/* Smartair */
#smartair_registration_form {
    margin: 0 auto;
    width: 640px;
    text-align: center;
}

#smartair_registration_form_cam {
    position: relative;
    width: 640px;
    height: 480px;
    /* margin-bottom: 20px; */
}

#smartair_registration_form_cam_video, #smartair_registration_form_cam_canvas {
    position: absolute;
    top: 0;
    left: 0;
}

#smartair_registration_form_timer {
    font-size: 50px;
    font-weight: 500;
    font-family: var(--pm-font-monospace);
}

#smartair_registration_form_employee {
    margin-bottom: 20px;
}

#smartair_registration_form_employee select {
    font-size: 30px;
    width: 100%;
    padding: 10px;
}

#smartair_registration_form_buttons .smartair_registration_form_button {
    width: 100%;
}

#smartair_registration_form_buttons button {
    font-size: 30px;
    width: 100%;
    height: 50px;
    max-width: 100%;
}

#smartair_registration_form_employee_result {
    margin-bottom: 20px;
}

#smartair_registration_form_employee_result img {
    width: 100%;
}

#smartair_registration_form_employee_result .img {
    width: 30%;
    float: left;
}

#smartair_registration_form_employee_result .data {
    width: 70%;
    float: left;
    text-align: left;
    padding-left: 20px;
}

#smartair_registration_form_employee_result .data .name {
    font-size: 30px;
    margin-bottom: 10px;
}

#smartair_registration_form_employee_result .data .action {
    font-size: 20px;
    padding: 15px;
}

#smartair_registration_form .letter {
    width: 23px;
    margin: 1px;
    padding: 1px 4px;
}
