/* 
 * redweb.css
 * 
 * (c) Copyright 2008-2011 Mittelrhein Verlag GmbH. All Rights Reserved. 
 */
 
body {
    font: 13px/1.231 'Droid Sans',sans-serif; 
    background-attachment: fixed;
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url('../images/background.png'),
    radial-gradient(at bottom right, #f0f0f0, #fff 70%); }

body.has_sidebar {
    background:             #fff url(../images/sidebarbg.png) right repeat-y; }

a {
    color:                  #0078b7;
    text-decoration:        none; }

a:hover {
    color:                  #23527c; }
    
strong {
    font-weight:            bold; }
    
h1 {
    font-weight:            bold; 
    font-size:              18px; }

h2 {
    font-weight:            bold; 
    font-size:              14px; }
        
table {
    width:                  100%; }
    
*:focus, *:active { 
    -moz-outline:           0px none transparent; 
    outline:                0px none transparent; }
    
ul.dottedlist {
    list-style-type:        circle;
    padding-left:           13px; }

/* HANDY CLASSES -------------------------------------------------------------------------------- */

.float_left {
    float:                  left !important; }
    
.float_right {
    float:                  right !important; }
    
.align_right {
    text-align:             right !important; }

.align_left {
    text-align:             left !important; }

.align_center {
    text-align:             center !important; }

.align_justify {
    text-align:             justify; }
    
.nowrap { 
    white-space:            nowrap; }
    
.smalltext { 
    font-size:              11px; }
    
.smallertext {
    font-size:              12px; }
    
.greytext { 
    color:                  #999; }
    
.greytext strong {
    color:                  #666; }

/* WARNING, ERROR, SUCCESS DIVS (also handy ;) -------------------------------------------------- */

div.warning, div.success, div.error, div.note { 
    padding:                0.5em; 
    text-align:             center; 
    margin-bottom:          1em; 
    border-radius:          5px;
    -moz-border-radius:     5px; 
    -webkit-border-radius:  5px; }
    
div.error { 
    background-color:       #fdd; }
    
div.warning { 
    background-color:       #ffc; }
    
div.success { 
    background-color:       #bbffb6; }

div.note { 
    background-color:       #FFC060; }

/* HEADER & FOOTER ------------------------------------------------------------------------------ */

header, footer {
    z-index:                1000;
    position:               fixed;
    left:                   0;
    right:                  0;
    box-shadow:             0px 0px 5px #aaa;
    -moz-box-shadow:        0px 0px 5px #aaa;
    -webkit-box-shadow:     0px 0px 5px #aaa; }

header {
    top:                    0; 
    color: white; }

footer {
    bottom:                 0; 
    padding:                6px 26px; 
    background:             #f0f0f0;
    border-top:             1px solid #e0e0e0; }

/* NAVIGATION & MENUS --------------------------------------------------------------------------- */

.menu {
    position:               relative; }
    
.menubutton {
    display:                inline-block; }

.submenu {
    display:                none; 
    position:               absolute;
    margin-left:            -1px; 
    z-index:                1100;
    background:             white;
    border:                 1px solid #d3d3d3; 
    border-top:             none;
    padding:                6px 0;
    box-shadow:             0px 0px 5px #aaa; 
    -moz-box-shadow:        0px 0px 5px #aaa; 
    -webkit-box-shadow:     0px 0px 5px #aaa; }

.submenu a {
    display:                block; 
    padding:                4px 32px;
    white-space:            nowrap; 
    background-repeat:      no-repeat; 
    background-position:    10px 50%; }
    
.submenu a.noicon {
    padding:                4px 16px; }
    
.submenu a:hover {
    background-color:       #399FD4; 
    color: white; }
    
.submenu hr {
    border:                 none; 
    border-top:             1px solid #f1f1f1; }

.menu:hover .submenu {
    display: block; }

header nav {
    height:                 50px;
    background:             #2686BB;
	  color:                  #fff;  }

header nav .logo {
	float: 					left;
	width: 					105px;
	margin:					2.5px 15px 0;
  	height: 				50px;
    background:     		#2686BB url(../images/logo_2019_transparent.png) no-repeat;
    background-size: 		95px;
}

header .menu {
    float:                  left; }

header .menubutton {
    color:                  white;
    display:                inline-block;
    line-height:            50px; 
    padding:                0 26px; 
    font-size:              16px; }

header .menubutton.current {
	  background:             #399FD4; }

header .menu:hover .menubutton, header .menubutton:hover {
    background:             #2b8dc2; }
    
header .menubutton .counter {
    display:                inline-block; 
    position:               relative; 
    top:                    -1px; 
    padding:                3px 4px; 
    margin-left:            3px;
    text-align:             center; 
    font-size:              12px; 
    line-height:            1; 
    min-width:              1.5em;
    background:             #64AAD0; 
    border-radius:          3px;
    -moz-border-radius:     3px; 
    -webkit-border-radius:  3px; }
    
header .menubutton .counter.overdue {
    background:             #1f6e99; }

header .profile_menu {
    float:                  right !important; }
    
header .profile_menu .submenu {
    right:                  0; }
    
header .profile_menu img {
    height:                 20px;
    width:                  20px;
    vertical-align:         middle;
    margin-right:           6px; }

footer .menubutton {
    line-height:            20px;
    font-size:              12px;
    padding:                0 13px 0 13px;
    border:                 1px solid #DDDDDD; }

footer .submenu {
    bottom:                 22px; }

/* PROFILE -------------------------------------------------------------------------------------- */

#profile { 
    float:                  right;
    margin:                 9px 26px 0 0;
    color:                  #fff;}
                                                        
#profile a {                
    color:                  #fff; }
        
#profile img { 
    width:                  32px; 
    height:                 32px; 
    margin:                 0 6px 0 0; 
    float:                  left;
    display:                block; }

/* INFOBAR -------------------------------------------------------------------------------------- */

#infobar {
    position:               relative;
    background:             #399FD4;
    padding:                6px 26px 6px 26px;
    z-index:                100; }

#infobar .logo {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 180px;
	height: 100%;
}

#infobar h1 {
    font-size:              16px;
    line-height:            24px;
    font-weight:            normal; }
    
#infobar a {
    color:                  #FFFFFF; }

/* CONTENT -------------------------------------------------------------------------------------- */

#content {
    padding:                106px 26px 58px; }
    
#content .sidebar { 
    width:                  240px; 
    padding:                106px 13px 0;
    position:               absolute; 
    top:                    0;
    right:                  0; }
    
#content .center { 
    margin-right:           267px; 
    position:               relative; }

/* DATATABLE ------------------------------------------------------------------------------------ */

.datatable {
    width:                  100%; 
    margin-bottom:          39px; }
    
.datatable.fixed_layout {
    table-layout:           fixed; }
    
.datatable tr:hover {
    background:             #edf6fc; }

.datatable tr.nohover:hover {
    background:             transparent; }

.datatable th, .datatable td {
    padding:                6px 9px; 
    text-align:             left; 
    vertical-align:         top; 
    line-height:            16px; }
    
.datatable th.compact, .datatable td.compact {
    padding:                6px 6px; }

.datatable.fixed_layout th, .datatable.fixed_layout td {
    word-wrap:              break-word; }
    
.datatable.compact td {
    padding:                4px 9px; }

.datatable th {
    border-bottom:          1px solid #f1f1f1;
    white-space:            nowrap;
    vertical-align:         bottom;
    color:                  #999; }

.datatable th:first-child {
    font-weight:            bold; 
    text-transform:         uppercase; 
    color:                  #000; }

.datatable td {
    border-bottom:          1px solid #f1f1f1; }

.datatable td:first-child {
    text-align:             left; }

.datatable td.noborder {
    border-bottom:          none; }

.datatable td.nohpadding {
    padding-left:           0;
    padding-right:          0; }

.datatable td.novpadding {
    padding-top:            0; 
    padding-bottom:         0; }

.datatable tr.sectionheader:first-child td, .datatable tr.sectionheader:first-child th {
    padding-top:            0px; } 

.datatable tr.sectionheader td, .datatable tr.sectionheader th {
    padding-top:            39px; } 

/* DIALOG --------------------------------------------------------------------------------------- */

.dialog_body {              
    padding:                13px; }
    
.dialog_footer {            
    background-color:       #f2f2f2; 
    border-top:             1px solid #ccc; 
    padding:                0.5em 1em; 
    text-align:             right;
    border-bottom-left-radius:  3px;
    border-bottom-right-radius: 3px; }

.dialog_body h1 {
    margin:                 13px 0; }

.dialog_body h1:first-child {
    margin:                 0 0 13px; }

.dialog_body h2, .dialog_body h5 {
    margin:                 6px 0; }

.dialog_body h2:first-child, .dialog_body h5:first-child {
    margin:                 0 0 6px; }

.dialog_body p {
    margin:                 0 0 13; }

.dialog_body.has_tabs, .dialog_body.has_tabs.has_form {
    padding:                            0; }
    
.dialog_body.has_form, .dialog_body.has_form .ui-tabs-panel {
    padding:                            10px; }
    
/* FORMS ---------------------------------------------------------------------------------------- */

form .error { 
    padding:                6px;
    text-align:             center;
    background-color:       #ff8080; 
    margin-bottom:          6px; }

form .error p {
    margin:                 0; }

form .errorlist {            
    margin:                 0; 
    float:                  right; }                           
                            
form .errorlist li {             
    list-style-type:        none; 
    font-size:              14px; 
    color:                  #ad0000; 
    margin:                 0; }                           
                            
form p {                    
    margin-bottom:          6px; }                           
                                
label {                     
    font-size:              14px; 
    font-weight:            bold; 
    white-space:            nowrap; }

input, select, textarea, button {
    box-sizing:             border-box;
    -moz-box-sizing:        border-box;
    -webkit-box-sizing:     border-box;
}

input[type=text], input[type=password], textarea, select { 
    border-radius:          3px; 
    -moz-border-radius:     3px; 
    -webkit-border-radius:  3px;}

input[type=text], input[type=password], textarea { 
    width:                  100%; 
    border:                 1px solid #ccc; 
    padding:                4px 6px; }
    
select {
    width:                  100%; 
    border:                 1px solid #ccc; 
    padding:                3px 6px; }

form table {
    width:                  100%; }
    
form table td {
    padding:                3px 3px; }
    
textarea {
    font:                   13px/1.231 arial,helvetica,clean,sans-serif; }
    
/* BUTTONS -------------------------------------------------------------------------------------- */

/*
    Adapted from http://yayinternets.com/articles/emulating-google-style-buttons/ and 
    http://stopdesign.com/eg/buttons/3.0/code.html.
*/

button::-moz-focus-inner { 
    border:                 0;
    padding:                0; }

button, a.button {
    margin:                 0;
    padding:                5px 9px 6px;
    border:                 1px solid; 
    border-color:           #bbb #aaa #aaa #bbb;
    background:             #c4c4c4;
    background:             -moz-linear-gradient(0% 170% 90deg, #c4c4c4, white);
    background:             -webkit-gradient(linear, 0% 0%, 0% 170%, from(white), to(#c4c4c4));
    border-radius:          3px;
    font-size:              13px;
    color:                  #404040;
    text-shadow:            1px 1px 0 white; }

button:hover, a.button:hover {
    background:             #b8b8b8;
    background:             -moz-linear-gradient(0% 170% 90deg, #b8b8b8, white);
    background:             -webkit-gradient(linear, 0% 0%, 0% 170%, from(white), to(#b8b8b8));
    border-color:           #99ccff;
    color:                  #333333; }

button:active, a.button:active {
    position:               relative;
    top:                    1px; }

button:active, button:focus, a.button:focus, a.button:active {
    background-position:    0 -25px;
    background:             white;
    background:             -moz-linear-gradient(0% 170% 90deg, white, #dedede);
    background:             -webkit-gradient(linear, 0% 0%, 0% 170%, from(#dedede), to(white));
    border-color:           #8fc7ff #94c9ff #94c9ff #8fc7ff;
    color:                  #1a1a1a;
    text-shadow:            1px -1px 0 rgba(255, 255, 255, 0.5); }
    
button.default, a.button.default {
    font-weight:            bold; }

button.small {
    padding:                2px 9px 2px; 
    font-size:              11px; }
        
/* LOGIN FORM ----------------------------------------------------------------------------------- */

#login_form .logo {
    background: 			#2686BB url(../images/logo_2019_transparent.png) no-repeat 20px;
    background-size: 		120px;
    height: 				44px;
    color: 					white;
    font-size: 				18px;
    padding-left: 			280px;
    padding-top: 			30px;
}

#login_form {
    position:               absolute;
    top:                    10%;
    left:                   50%;
    margin-left:            -200px;
    width:                  400px; }

#login_form .dialog_header {
    height:                 40px;
    padding:                0;
    background:             #399FD4 url(../images/redweb.png) no-repeat 13px 6px;
    background:             url(../images/redweb.png) no-repeat 13px 6px, 
                            -moz-linear-gradient(top, #399FD4, #2686BB);
    background:             url(../images/redweb.png) no-repeat 13px 6px, 
                            -webkit-gradient(linear, left top, left bottom, from(#399FD4), to(#2686BB)); }

/* PAGINATION ----------------------------------------------------------------------------------- */
    
.pagination { 
    text-align:             center; }
    
.pagination a, .pagination span { 
    display:                inline-block; 
    text-align:             center;
    line-height:            20px;
    width:                  20px;
    font-size:              12px; }
    
.pagination a { 
    border:                 1px solid #9AAFE5; }
    
.pagination .current { 
    border:                 1px solid #2E6AB1; 
    color:                  #FFFFFF; 
    background:             #2E6AB1; 
    font-weight:            bold; }
    
.pagination .disabled       { 
    border:                 1px solid #DDDDDD; 
    color:                  #999999; }

