:root {
	--color-warm-red: #7f1439;
	--color-soft-green: #aec5b2;
	--color-soft-yellow: #f4ead5;
	--color-yellow: #f7be32;
	--color-pink: #eb008b;
	--color-pink-darker: #b3006e;
	--color-green: #00833b;
	--color-green-lighter: #d5e6d4;
	--color-lightgreen: #94c11a;
}

/** BOOTSTRAP ADDONS **/

form.form-condensed div.control-group {
	margin-bottom: 10px;
}

form.form-condensed legend + div.control-group {
	margin-top: 0;
}

.form-horizontal .text-only {
	padding-top: 5px;
	line-height: 18px;
}

/** HEADER **/

#header {
	background: url(../images/pattern.png);
	background-color: var(--color-warm-red);
	color: white;
	padding: 10px 0 0 0;
}

#header #logo {
	font: 19pt Helvetica, Arial, Verdana;
	padding: 6px 0 0;
}

#main-menu UL {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	position: relative;
	/* The following rules force hasLayout so the UL contains the floating elements */
	overflow: hidden;
	height: 1%;
}
#main-menu LI {
	float: left;
	margin: 0;
	padding: 0;
	margin-right: 2px;
}
#main-menu LI.spacer {
	background-color: transparent;
	width: 10px;
	padding-left: 0px;
	padding-right: 0px;
}
#main-menu LI.with-space {
	margin-left: 10px;
}
#main-menu LI A {
	text-decoration: none;
	float: left;
	padding: 5px 10px;
	color: white;
	/*background-color: #E44C90; /*purple*/
	background-color: var(--color-warm-red);
	border-radius: 5px 5px 0 0;
}
#main-menu li a:hover {
	background-color: var(--color-yellow);
	color: black;
}
#main-menu LI A.current, #main-menu LI A:hover.current {
	font-weight: bold;
	background-color: var(--color-yellow);
	color: black;
}
#main-menu LI.feedback A {
	background-color: var(--color-lightgreen);
}
#main-menu LI.feedback A:hover {
	filter: brightness(1.2);
}

#system-menu {
	text-align: right;
	font-size: 10px;
	line-height: 15px;
}
#system-menu A {
	color: white;
	text-decoration: underline;
}
#system-menu A:hover {
	color: white;
	background-color: black;
	text-decoration: none;
}
#system-menu A.current {
	color: white;
	text-decoration: none;
	font-weight: bold;
	font-size: 110%;
}
#system-menu A:hover.current {
	background-color: transparent;
}

/** BODY **/

#body {
	padding-top: 20px;
	padding-bottom: 20px;
}

#body #main {
	border: 1px solid #D7D7D7;
	background-color: white;
	border-radius: 6px;
}

#body #main .header {
	padding: 12px 20px;
	padding-right: 27px;
	background-color: var(--color-soft-yellow);
	border-bottom: 1px solid var(--color-soft-yellow);
	border-radius: 6px 6px 0 0;
}
#body #main .header.tabs {
	padding: 0;
	border-bottom: 0;
}
#body #main .header.tabs .inner {
	padding: 12px 20px;
}
#body #main .header h1 {
	font: 12pt Helvetica, Verdana, Arial;
	font-weight: bold;
}
#body #main .header h2 {
	font-size: 12px;
	line-height: 12px;
}
#body #main .header h3 {
	margin: 0px;
	margin-top: 5px;
	font: 10pt Helvetica, Verdana, Arial;
	font-weight: bold;
}
#main .header .details {
	margin-top: 7px;
}
#body #main .content {
	padding: 15px 30px 20px 20px;
}
#body #main .content form .form-actions {
	margin-left: -20px;
	margin-right: -30px;
	margin-bottom: -20px;
	border-radius: 0 0 6px 6px;
}
#body #main .tabs form .form-actions {
	margin-right: -20px;
	margin-bottom: -15px;
}
#body #main .content h2, .w_content h2 {
	font-weight: bold;
	/*color: #0554B0; /* blue */
	color: var(--color-warm-red);
	padding: 0px;
	margin: 5px 0;
	font-size: 16px;
}
#body #main .content H3 {
	font: 11pt Helvetica, Verdana, Arial;
	font-weight: bold;
}

#body #main .header .menu {
	font-size: 10px;
}

/* Small screens */
@media (max-width: 1023px) {
	#body #main .content {
		padding-right: 30px;
	}
	#body #main .content h2 {
		font-size: 14px;
	}
}

/*#body #main .header.tabs .inner {
	padding-bottom: 36px;
}*/
#body #main .content.tabs {
	padding: 0;
	position: relative;
}
#body #main .content.tabs .tab-row {
	/*position: absolute;*/
	padding: 0px 20px;
	margin: 0px;
	/*top: -24px;
	left: 0px;*/
	height: 25px;
	border-bottom: 1px solid #DADEE5;
	background-color: var(--color-soft-yellow);
}
#body #main .content.tabs .tab-panel {
	padding: 15px 20px;
}

#body #pagefeedback ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}
#body #pagefeedback li.feedbackPanelINFO, #body #pageflash .info {
	margin: 0;
	padding: 10px;
	background-color: #FFF6BF;
	border: 1px solid #FFD324;
	color: #514721 !important;
	margin-bottom: 10px;
}
#body #pagefeedback li.feedbackPanelERROR, #body #pageflash .error {
	margin: 0;
	padding: 10px;
	background-color: #FBE3E4;
	border: 1px solid #FBC2C4;
	color: #8A1F11 !important;
	margin-bottom: 10px;
}
#body #pagefeedback li.feedbackPanelERROR span {
	color: black;
}

#body #main .content .pager {
	text-align: right;
	padding-top: 10px;
}

fieldset {
	margin: 0 0 20px;
	padding: 10px 0 0;
}
fieldset legend {
	font-size: 1.2em;
	font-weight: bold;
	color: var(--color-warm-red);
	margin-bottom: 0;
}

/** FORMS **/

form {
	margin: 0;
	padding: 0;
}

form label.required:after {
	content: "*";
	padding-left: 5px;
}

input.error, select.error, textarea.error {
	background-color: #F7CECC !important;
}

span.feedbackPanelERROR {
	color: red;
}

input.search {
	border: 1px solid lightgrey;
	background: url('../images/search.svg') 2px 5px no-repeat;
	background-position: 6px 6px;
	background-size: 14px 14px;
	background-color: white;
	padding-left: 25px;
	margin: 0;
}

#main .header .id-search {
	margin-top: -5px;
}

/** TABS **/

div.tab-row ul {
	margin: 0px;
	padding: 0px;
}

div.tab-row li {
	margin: 0;
    padding: 0;
    display: inline;
    list-style-type: none;
}

div.tab-row a {
    float: left;
    background-color: transparent;
    font-size: 12px;
    line-height: 14px;
    font-weight: normal;
    padding: 5px 10px 5px 10px;
    margin-right: 4px;
    border-radius: 3px 3px 0 0;
}

div.tab-row li.selected a, div.tab-row a.active {
    background-color: white;
    border: 1px solid #DADEE5;
    border-bottom: 1px solid white;
    color: black;
    text-decoration: none;
    font-weight: bold;
}

div.tab-row a:hover {
    background-color: #666;
    border-bottom: 1px solid #666;
    color: white;
    text-decoration: none;
}

div.tab-panel {
	clear: both;
}

/** TABLES **/

table.table-details {
	width: 100%;
}
table.table-details th {
	width: 150px;
	text-align: right;
	padding: 5px 10px 5px 0;
	vertical-align: top;
}
table.table-details td {
	text-align: left;
	padding: 5px 0;
	vertical-align: top;
}

.table tr.muted td {
	background-color: #efefef;
}
.table tr.muted a {
	color: grey;
}
.table tr.muted td .btn {
	background-color: lightgrey;
	border-color: lightgrey;
}
td.datetime {
	white-space: nowrap;
}

/** SIDEBAR **/

#sidebar .content {
	padding-left: 12px;
}

#sidebar .sidebar-actions {
	margin: 15px 0px;
	margin-bottom: 25px;
}

#sidebar .sidebar-action + .sidebar-action {
	margin-top: 15px;
}

#sidebar div.add-link,#sidebar div.remove-link {
	margin-bottom: 10px;
}

#sidebar .module {
	background-color: #FCFCFC;
	border: 2px solid #E5E5E5;
	margin-bottom: 8px;
	overflow: hidden;
	padding: 10px 10px;
	border-radius: 6px;
}

#sidebar .module p {
	margin-top: 0px;
}

#sidebar .module h2 {
	background-color: transparent;
	border: medium none;
	color: #333333;
	font-size: 12px;
	line-height: 12px;
	font-weight: bold;
	padding: 0 0 8px;
}

#sidebar .module h2 .actions {
	color: #999999;
	float: right;
	font-size: 11px;
	font-weight: normal;
	text-align: right;
	width: 90px;
}

#sidebar .module table.table-details {
	width: 100%;
}

#sidebar .module table.table-details td {
	padding: 0px 0px 7px 6px;
}

#sidebar .module table.table-details td p {
	margin: 0px;
	padding: 0px; 
}

#sidebar .module table.table-details th {
	width: 45px;
	text-align: right;
	font-size: 10px;
	font-weight: normal;
	vertical-align: top;
	padding-top: 2px;
}

/** CENTERED OBJECTS (both horizontally and vertically) **/

/* Inspired by https://build-your-own.org/blog/20240813_css_vertical_center/ */

html, body {
	height: 100%;
}
.centered-container {
	height: 100%;
	align-content: center;
}
.centered {
	margin: 0 auto;
}

/** MODAL **/

.modal-container {
	background-color: white;
	border: 1px solid #D7D7D7;
	border-radius: 6px;
	
	width: 480px;
}
.modal-container .login-header {
	border-radius: 6px 6px 0 0;
}

.modal-container div.inner {
	padding: 15px 20px;
}

.modal-container #main .header h1 {
	margin: 0px;
	font: 14pt Helvetica, Verdana, Arial;
	font-weight: bold;
}
.modal-container #main .content {
	padding-top: 10px;
}

div.login-header {
	background: url(../images/pattern.png);
	background-color: var(--color-warm-red);
}

/** LOCAL STYLES **/

body {
	font: 12px Verdana, Arial;
	background-color: #F3F1EC;
	margin: 0px;
	padding: 0px;
}
p {
	font: 12px Verdana, Arial;	
}

a.action, a.delete {
	color: red;
}
a:hover.action, a:hover.delete {
	color: white;
	background-color: red;
	text-decoration: none;
}

div.wicket-aa ul {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	border: 1px solid #888;
}
div.wicket-aa li {
	margin: 0px;
	padding: 3px;
	background-color: #fff;
}
div.wicket-aa li.selected {
	background-color: #ffb;
}

#sidebar .module.feedback {
	background-color: var(--color-soft-green) !important;
	border: none;
}
#sidebar .module.feedback a {
	color: white !important;
}
#sidebar .module.feedback a:hover {
	background-color: white !important;
	color: black !important;
}

div.w_content_3 {
	padding: 10px !important;
}

/* Fix datepicker in modal (see WICKET-3579) */
div.wicket-modal div.w_content_container { 
	position: static !important; 
}
.wicket-modal .w_caption h3 {
	font-size: 14px;
	line-height: 14px;
}

.btn {
	background: none;
	background-color: #f8f9fa;
	border: 1px solid #ccc;
	border-radius: 15px;
	box-shadow: none;
	text-shadow: none;
	color: #999;
}
.btn:hover, .btn:visited, .btn:active, .btn:focus {
	background: none;
	background-color: #f8f9fa;
	border: 1px solid #ccc;
	border-radius: 15px;
	box-shadow: none;
	text-shadow: none;
	color: #333;
}

.btn-primary {
	background: none;
	background-color: var(--color-warm-red);
	box-shadow: none;
	text-shadow: none;
	border: none;
	border-radius: 50px;
	color: white;
	padding: 10px 25px;
	font-size: 1.1rem;
}
.btn-primary:hover, .btn-primary:visited, .btn-primary:active, .btn-primary:focus {
	background: none;
	background-color: var(--color-warm-red);
	filter: brightness(1.2);
	border: none;
	border-radius: 50px;
	color: white;
}

.table .norecords-td {
	padding: 0;
}
.table .norecords-td .alert {
	margin: 0;
	padding: 8px;
	text-align: center;
	border: 0;
	border-radius: 0;
}

/** BOOTSTRAP FIXES AFTER UPGRADE FROM 2.0.2 to 2.3.2 */
h1, h2, h3, h4, h5, h6 {
	margin: 0px;
}
.row-fluid div[class*="span"] {
	min-height: 0;
}
.form-horizontal .help-block {
	margin-top: 9px;
}
.text-right {
	text-align: right !important;
}
.text-nowrap {
	white-space: nowrap;
}
.btn-xs {
	padding: 0 6px;
	font-size: 10.5px;
	border-radius: 3px;
}

/** Responsive classes (missing in bootstrap 2) */
.img-responsive {
	display: block;
	max-width: 100%;
	height: auto;
}