*,h1,h2,h3,h4,a {font-family: "PT Sans", arial}

h2 {
	font-size:50px;
	font-weight:normal;
	color:#bbb;
}

#menu {
	-webkit-box-shadow:0 8px 17px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19) !important;
	box-shadow:0 8px 17px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19) !important;
	background-image:linear-gradient(to bottom,#354c82 0,#688fe8 100%);
}
#menu a {display:block; float:left; padding:0 12px; font-size:16px; line-height: 36px; color:rgba(255, 255, 255, 0.75); text-decoration: none;}
#menu a.active {color:#fff}
#menu a:hover {color:rgba(255, 255, 255, 0.9); text-decoration: none;}
#menu a.nav-brand {color:#eee; font-size: 24px; padding:0 32px 0 12px;}
@media (min-width: 992px) {
	#menu a { line-height: 56px; }
}
#pathway {padding:0 9px}

.card {min-width: 300px;}
.card-body {padding:1rem}

#action {text-align:right; position:relative; top:-2px; z-index:4000; height:5px; padding-right: 5px}
#action a, #action span {background-color: #688fe8; padding:0 7px; margin:0 0 0 7px; color:rgba(255, 255, 255, 0.75);
	-webkit-box-shadow:0 4px 8px 0 rgba(0,0,0,0.2);
	box-shadow:0 4px 8px 0 rgba(0,0,0,0.2);}
#action a:hover {color:rgba(255, 255, 255, 0.9); text-decoration:none;}

#second>div {
	float:right; clear:right;
	max-width:350px;
	margin:5px;
	z-index:3000; position:relative;
	width:100%;
}

.modal {
	z-index: 5000;
}

@media (max-width:600px) {
	h2 {
		font-size:35px;
	}
	.card-body {
		padding:0.5rem
	}
	#second>div {
		max-width:95%;
	}
	.container-fluid {
		padding:0 1px;
	}
}

@media (max-width:1199px) {
	#page {clear:both}
}
@media (min-width:1200px) {
	#page {margin-right:360px;}
}

#page #body {
	background-color:#fff;
	padding:12px 15px;
	box-shadow:0 8px 17px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19) !important;
}
#page .container {
	max-width:900px;
}

#foot {
	background-color:#688fe8;
	text-align:center;
	clear:both;
	color:#fff;
	padding:17px 0;
	margin-top:12px;
}
#foot a, #foot a:hover, #foot a:visited {color:#fff}

#drawer {position: absolute; right:0;}
.alert {z-index: 2000;}

.table {width:auto;}
.table tr {background-color:#fff;}

div.block {float:right; opacity:0.3; z-index:1000;}
a.block {position:absolute; opacity:0.2; z-index:1000;}
a.block:hover {opacity:1}

a.anchor {color:#000}

.text-red {color:#f00}
.text-green {color:#0f0}

.form {min-width:60%}
.form th, .form td {padding:3px; vertical-align:middle}
.form tr.invalid th { color:#b94a48 }
.form th {text-align:right; width:170px; font-weight:normal}
.form th .help, .form td .help {font-size:80%; color:#555}
.form th label {margin:0}
.form td input, .form td select, .form td label, .form td textarea, .form td span {margin-bottom:0px}
.form textarea {width:100%}
/* .form td input[type="text"] {width:350px} */
.form td input.input-dt {width:100px}
.form td input.form-control-file {width:auto; display:inline}
.form small {font-size:80%; color:#666}
.form-group {margin:0}
.form .btn {vertical-align: initial;}
.form-check {padding-left:0; line-height: 38px}

.form-inline {display:flex; flex-flow:row wrap; align-items: center;}
.form-inline .form-control {display: inline-block; width: auto; vertical-align: middle;}

@media (max-width:600px) {
	.form th {width: auto}
}

input.invalid, .invalid input,
textarea.invalid, .invalid textarea,
select.invalid, .invalid select {
	color: #b94a48;
	border-color: #ee5f5b;
	box-shadow: 0 0 8px rgba(185,74,72,.6)
}

.close { position:absolute; top:0; right:5px; }


table.graph {width:750px; border-spacing:10px; border-collapse:separate; margin-right: 18px}
table.graph td {vertical-align:middle; border-right:1px solid black;}
table.graph td div {clear:left}
table.graph td a, table.graph td span {float:left; display:block; text-align:right; color:#000; text-decoration:none;}
table.graph td span.label {color:#000}
table.graph td a.total {padding:0 3px}
table.graph th {width:450px; text-align:right; font-weight:normal}
table.graph td.scale span {
	float:right; color:black; text-align:right;
	border-left:1px solid black; border-bottom:1px solid black
}

table.graph-report {width:750px; border-spacing:0; border-collapse:separate}
table.graph-report th hr {margin:0}
table.graph-report td {vertical-align:middle; border-right:1px solid black;}
table.graph-report td a,
table.graph-report td span {float:left; display:block; text-align:right; color:#000; text-decoration:none;}
table.graph-report th {width:450px; text-align:right; font-weight:normal}

/* wave */

.table-wave th { font-weight:normal }
.table-wave tr.head { background-color:#60666d; color:#f7f5f7 }

/* colors */

.red {background-color:#fee !important}
.yellow {background-color:#ffe !important}
.blue {background-color:#eef !important}
.white {background-color:#fff !important}
.gray {background-color:#fafafa !important}
.reddy {background-color:#f2ebde !important}
.lime {background-color:#eef2d7 !important}
.birusa {background-color:#b5deec !important}
.purple {background-color:#c0d1f6 !important}
.green {background-color:#c5f3c9 !important}
.error {background-color:#f2dede !important}
.warning {background-color:#fcf8e3 !important}
.info {background-color:#d9edf7 !important}
.success {background-color:#dff0d8 !important}

.bold {font-weight:bold}
.black * {color:#000 !important}

.table-red {--bs-table-bg: #fee}
.table-yellow {--bs-table-bg:#ffe}
.table-blue {--bs-table-bg:#eef}
.table-gray {--bs-table-bg:#fafafa}
.table-reddy {--bs-table-bg:#f2ebde}
.table-lime {--bs-table-bg:#eef2d7}
.table-birusa {--bs-table-bg:#b5deec}
.table-purple {--bs-table-bg:#c0d1f6}
.table-green {--bs-table-bg:#c5f3c9}
.table-error {--bs-table-bg:#f2dede}
.table-warning {--bs-table-bg:#fcf8e3}
.table-info {--bs-table-bg:#d9edf7}
.table-success {--bs-table-bg:#dff0d8}


/* formbuild */

#fb {border:1px solid #888; background-color:#fff; padding:2px; list-style-type:none}
#fb li {border:1px solid #aaa; background-color:#f8f9fa; padding:2px; margin:5px}
#fb li .top-left {float:left; width:71px; line-height:38px; text-align:right}
#fb li .top-right {float:right; width:200px}
#fb li .top-center {margin-left:75px; margin-right:202px}
#fb li .mid {margin:2px 0}
#fb li .mid-right {width:70px; float:right}
#fb li .mid-right button {margin:1px 0}
#fb li .mid-left {margin-right:72px}
#fb li .mid-left textarea {line-height:15px; height:65px}
#fb li .bot-left {float:left; width:365px; line-height:38px}
#fb li .bot-right {margin-left:365px}
#fb li .bot-right select {width:33%; float:left}
#fb li .bot-right select:last-child {float:none}

/* user color */

.ul- {color:#888; text-decoration:line-through;}
.ul0 {color:#777}
.ul1 {color:#0a0}
.ul2 {color:#da0}
.ul3 {color:#a00}

/* win */

.win {
	border:1px solid rgba(0,0,0,.125);
	border-radius:0.25rem;
	background-clip:border-box;
	background-color:#fff;
	-webkit-box-shadow:0 8px 17px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19) !important;
	box-shadow:0 8px 17px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19) !important;
}
.win-ctrl {float:right; top:2px; right:2px; position:relative}
.win h4 {
	border-radius:0.25rem;
	margin:0;
	line-height:1.5;
	color:#fff;
	background-image:linear-gradient(to bottom,#354c82 0,#688fe8 100%);
	padding-left:7px;
	font-weight:initial;
}
.win-body {padding:0;}


/* отчёты */

.report .right {float:right; clear:right; color:#770; font-size:100%; width:125px; border-left:1px solid #eee; padding-left:5px}
.report h3 {font-size:28px; line-height:1.4; padding:7px 7px 7px 12px; margin:2px; border-bottom:3px double #777; border-left:3px double #777;}
.report h4 {font-size:25px; padding:4px 4px 4px 8px; margin:2px; border-bottom:1px dashed #777; border-left:1px dashed #777;}
.report div.quest {margin:12px 0 5px 0; font-size:110%;}
.report div.quest a {float:left;}
.report div.answer {margin:0 0 12px 0; border-bottom:1px solid #eee; padding-bottom:12px;}
.report div.answer textarea {width:95%}
.report .comment, .report .comment * {font-size:12px; color:#555}
.report audio {float:right; z-index:1000}

.report .claim {border:1px dashed #aaa; margin:20px 0; padding:12px; border-radius:5px}
.report .claim p {margin:0}
.report .claim th {font-weight:normal; text-align: right; vertical-align:middle}
.report .claim h5 {font-weight:normal; margin:12px}
.report .claim.unresolved {border-color:#a00; box-shadow:0 5px 17px 0 rgba(220,0,0,0.3) !important}

/* calendar */

#calendar {position:absolute; border:1px solid #806e59; z-index:1000;
border-collapse:collapse; top:0; left:0; background-color:#fff;}
#calendar th, #calendar tr.first td {background-color:#ebf4ff; color:#000}
#calendar td {text-align:center; cursor:pointer; padding:1px 9px;}
#calendar td.gray {color:#999;}
#calendar tr.first th {padding:0; font-weight:normal;}
#calendar td.today {background-color:#cce;}
#calendar td.here {font-weight:bold;}

/* buttons */

.btn-link {
	border:0;
	background-color:#fff;
	text-align: left;
}
.btn-link:hover {
	text-decoration: none;
}
.btn-default {
	text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
	background-color: #f5f5f5;
	background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
	background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
	background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
	background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
	background-repeat: repeat-x;
	border: 1px solid #cccccc;
	border-color: #e6e6e6 #e6e6e6 #bfbfbf;
	border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
	border-bottom-color: #b3b3b3;
	-webkit-border-radius: 4px;
		 -moz-border-radius: 4px;
					border-radius: 4px;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
		 -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
					box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
}
.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-default.active, .btn-default.disabled, .btn-default[disabled] { color: #333333; background-color: #e6e6e6; }
.btn-default:hover, .btn-default:focus { color: #333333; text-decoration: none; background-position: 0 -30px;
	-webkit-transition: background-position 0.1s linear; -moz-transition: background-position 0.1s linear;
	-o-transition: background-position 0.1s linear; transition: background-position 0.1s linear; }
.btn-default:focus { outline: thin dotted #333; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; }
.btn-default.active, .btn-default:active { background-image: none; outline: 0;
	-webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
	-moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
	box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); }
.btn-default.disabled, .btn-default[disabled] { cursor: default; background-image: none; opacity: 0.65; filter: alpha(opacity=65);
	-webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; }

.btn-primary.active,
.btn-warning.active,
.btn-danger.active,
.btn-success.active,
.btn-info.active {
	color: rgba(255, 255, 255, 0.75);
}

.btn-primary {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #006dcc;
	background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
	background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
	background-image: -o-linear-gradient(top, #0088cc, #0044cc);
	background-image: linear-gradient(to bottom, #0088cc, #0044cc);
	background-repeat: repeat-x;
	border-color: #0044cc #0044cc #002a80;
	border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.btn-primary.disabled,
.btn-primary[disabled] {
	color: #ffffff;
	background-color: #0044cc;
}

.btn-primary:active,
.btn-primary.active {
	background-color: #003399 \9;
}

.btn-warning {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #faa732;
	background-image: -moz-linear-gradient(top, #fbb450, #f89406);
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
	background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
	background-image: -o-linear-gradient(top, #fbb450, #f89406);
	background-image: linear-gradient(to bottom, #fbb450, #f89406);
	background-repeat: repeat-x;
	border-color: #f89406 #f89406 #ad6704;
	border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
}

.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active,
.btn-warning.active,
.btn-warning.disabled,
.btn-warning[disabled] {
	color: #ffffff;
	background-color: #f89406;
}

.btn-warning:active,
.btn-warning.active {
	background-color: #c67605 \9;
}

.btn-danger {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #da4f49;
	background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f);
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
	background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
	background-image: -o-linear-gradient(top, #ee5f5b, #bd362f);
	background-image: linear-gradient(to bottom, #ee5f5b, #bd362f);
	background-repeat: repeat-x;
	border-color: #bd362f #bd362f #802420;
	border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
}

.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active,
.btn-danger.active,
.btn-danger.disabled,
.btn-danger[disabled] {
	color: #ffffff;
	background-color: #bd362f;
}

.btn-danger:active,
.btn-danger.active {
	background-color: #942a25 \9;
}

.btn-success {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #5bb75b;
	background-image: -moz-linear-gradient(top, #62c462, #51a351);
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));
	background-image: -webkit-linear-gradient(top, #62c462, #51a351);
	background-image: -o-linear-gradient(top, #62c462, #51a351);
	background-image: linear-gradient(to bottom, #62c462, #51a351);
	background-repeat: repeat-x;
	border-color: #51a351 #51a351 #387038;
	border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff51a351', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
}

.btn-success:hover,
.btn-success:focus,
.btn-success:active,
.btn-success.active,
.btn-success.disabled,
.btn-success[disabled] {
	color: #ffffff;
	background-color: #51a351;
}

.btn-success:active,
.btn-success.active {
	background-color: #408140 \9;
}

.btn-info {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #49afcd;
	background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4);
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));
	background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4);
	background-image: -o-linear-gradient(top, #5bc0de, #2f96b4);
	background-image: linear-gradient(to bottom, #5bc0de, #2f96b4);
	background-repeat: repeat-x;
	border-color: #2f96b4 #2f96b4 #1f6377;
	border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2f96b4', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
}

.btn-info:hover,
.btn-info:focus,
.btn-info:active,
.btn-info.active,
.btn-info.disabled,
.btn-info[disabled] {
	color: #ffffff;
	background-color: #2f96b4;
}

.btn-info:active,
.btn-info.active {
	background-color: #24748c \9;
}

/* checkbox */

.checkbox {
	vertical-align: top;
	width: 13px;
	height: 13px;
	margin: 0 3px 0 0;
}
.checkbox + label {
	cursor: pointer;
	vertical-align:middle;
	display:flex;
	align-items:center;
	margin-bottom:0;
	position:relative;
}
.checkbox:not(checked) {
	position: absolute;
	opacity: 0;
}
.checkbox:not(checked) + label {
	padding: 0 0 0 53px;
}
.checkbox:not(checked) + label:before {
	content: '';
	position: absolute;
	left: 0;
	width: 48px;
	height: 20px;
	border-radius: 13px;
	background: #CDD1DA;
	box-shadow: inset 0 2px 3px rgba(0,0,0,.2);
}
.checkbox:not(checked) + label:after {
	content: '';
	position: absolute;
	left: 2px;
	width: 16px;
	height: 16px;
	border-radius: 9px;
	background: #FFF;
	box-shadow: 0 2px 5px rgba(0,0,0,.3);
	transition: all .2s;
}
.checkbox:checked + label:before {
	background: #9FD468;
}
.checkbox:checked + label:after {
	left: 29px;
}
.checkbox:focus + label:before {
	box-shadow: 0 0 0 3px rgba(255,255,0,.5);
}



/* radio */

.radio {
	vertical-align: top;
	width: 13px;
	height: 13px;
	margin: 0 3px 0 0;
}
.radio + label {
	cursor: pointer;
	margin:0;
}
.radio:not(checked) {
	position: absolute;
	opacity: 0;
}
.radio:not(checked) + label {
	position: relative;
	padding: 0 0 0 25px;
}
.radio:not(checked) + label:before {
	content: '';
	position: absolute;
	top: 3px;
	left: 0;
	width: 18px;
	height: 18px;
	border: 1px solid #CDD1DA;
	border-radius: 50%;
	background: #FFF;
}
.radio:not(checked) + label:after {
	content: '';
	position: absolute;
	top: 6px;
	left: 3px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #9FD468;
	box-shadow: inset 0 1px 1px rgba(0,0,0,.5);
	opacity: 0;
	transition: all .2s;
}
.radio:checked + label:after {
	opacity: 1;
}
.radio:focus + label:before {
	box-shadow: 0 0 0 3px rgba(255,255,0,.5);
}

.invalid .radio + label:before {
	color: #b94a48;
    border-color: #ee5f5b;
    box-shadow: 0 0 8px rgba(185,74,72,.6);
}

/* badge */

.badge {
    display: inline-block;
    padding: 0.35em 0.65em;
    font-size: 0.75em;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.375rem;
}

.text-bg-primary {
    color: #fff!important;
    background-color: #0d6efd!important;
}

.text-bg-secondary {
    color: #fff!important;
    background-color: #6c757d!important;
}

.text-bg-success {
    color: #fff!important;
    background-color: #198754!important;
}

.text-bg-danger {
    color: #fff!important;
    background-color: #dc3545!important;
}

.text-bg-warning {
    color: #000!important;
    background-color: #ffc107!important;
}

.text-bg-info {
    color: #000!important;
    background-color: #0dcaf0!important;
}

.text-bg-light {
    color: #000!important;
    background-color: #f8f9fa!important;
}

.text-bg-dark {
    color: #fff!important;
    background-color: #212529!important;
}