@font-face {
    font-family: 'PT Sans';
    src: url('i/fonts/PT_Sans/PTSans-Regular.ttf');
}

@font-face {
    font-family: 'PT Sans';
    src: url('i/fonts/PT_Sans/PTSans-Bold.ttf');
    font-weight: bold;
}

* {
	box-sizing: border-box;
}

html, body {
	height: 100%;
	margin: 0;
	padding: 0;
	font-family: 'PT Sans', sans-serif;
}

body {
	font-weight: 300;
	transition: 1s ease;
}

button, .searchsubmit, #authsubmit {
	background-color: #3cf;
	background-image: linear-gradient(#9cf, #0cf);
	color: white;
	font-family: Bahnschrift, Roboto, 'Segoe UI', sans-serif;
	text-shadow: 0 2px 3px #0168;
}

input, button, select, .searchsubmit {
	border: 1px solid #999;
	border-radius: 7px;
	font-family: Bahnschrift, Roboto, 'Segoe UI', sans-serif;
}

input, select {
	padding: 3px 5px;
}

button, .searchsubmit {
	padding: 3px 13px;
}

button:hover, .searchsubmit:hover, #authsubmit:hover {
	border: 1px solid #0af;
	cursor: pointer;
	box-shadow: 0 0 5px #0af;
	text-shadow: 0 3px 5px #000c;
}

button:disabled, .searchsubmit:disabled {
	border: 1px solid #ccc;
	cursor: wait;
}

h1,
h2 {
	font-family: Bahnschrift, Roboto, 'Segoe UI', sans-serif;
}

#mask {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000c;
	z-index: 55555;
}

#mask section {
	display: flex;
	top: 0;
	left: 0;
	min-width: 100%;
	min-height: 100%;
	align-items: center;
	justify-content: center;
}

.overlay {
	pointer-events: none;
	opacity: .5;
	height: 100%;
}

#overlay {
	cursor: wait;
	position: sticky;
	display: none;
	top: 0;
	left: 0;
	z-index: 2;
}

#overlay section {
	display: flex;
	flex-direction: column;
	text-align: center;
	position: absolute;
	top: 250px;
	left: 50%;
	border: none;
	padding: 20px;
	background-color: #578BB8;
	color: #fff;
	width: 300px;
	transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

.w100 {
	width: 100%;
}

.w95 {
	width: 95%;
}

.w80 {
	width: 80%;
}

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

.tar {
	text-align: right !important;
}

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

.nospace {
	white-space: nowrap;
}

.low {
	color: #171;
	font-weight: bold;
}

.medium {
	color: rgb(61, 61, 61);
}

.critical {
	color : #c00;
	font-weight: bold;
}

.limited {
	max-width: 2000px;
}

tr[data-category='inactive'] {
	color: #009;
}

.ignored {
	pointer-events: none;
	color: grey;
	opacity: 0.8;
}

.clickable {
	color: #07c;
	cursor: pointer;
	font-weight: 600;
}

.clickable:hover {
	color: #03c;
}

.marlft3r {
	margin-left: 3rem;
}

#courtTbodyTable p {
	margin: 0 0 .5rem;
}

#courtTbodyTable b {
	display: inline;
	text-transform: capitalize;
	font-weight: bold;
}

#courtTbodyTable tr {
	cursor: pointer;
}

#courtTbodyTable tr:hover {
	background-color: rgb(200, 200, 200);
}

#mCourt_table p {
	margin: 0 0 .8rem;
}

.bigform {
	max-width: 100%;
}

.bigform input,
.bigform button,
.bigform select {
	font-size: 150%;
	outline: 0;
}

input.numberForm {
	width: 4rem;
    font-size: 80%;
    outline: 0;
    text-align: right;
}

#pagination-button {
	vertical-align: middle;
}

input[type='number']::-webkit-outer-spin-button,
input[type='number']::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

input[type='number'] {
    -moz-appearance: textfield;
}

.href-detailed {
	margin: 0;
	color: #07c;
	border-bottom: 1px dashed;
	font-weight: 600;
}

.href-detailed:hover {
	cursor: pointer;
	color: #03c;
}

.link-person {
	margin: 0;
	color: rgb(108, 39, 235);
	border-bottom: 1px solid;
	font-weight: 600;
}

.link-person:hover {
	color: rgb(71, 0, 204);
	cursor: pointer;
}

input:focus {
	border-color: #0af;
	box-shadow: 0 0 5px #0af;
}

.sideform input:focus {
	border-color: aqua;
}

nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #fff;
	box-shadow: 0 1px 8px #0005;
	left: 0;
	padding: 28px;
	position: fixed;
	right: 1em;
	top: 0;
	transition: all .5s ease;
	z-index: 555;
}

nav img.logo {
	display: none;
	height: 51px;
	transition: all .5s ease;
}

nav.shrink {
	padding: 8px 28px;
}

nav.shrink img.logo {
	height: 32px;
}

#viewport {
	display: flex;
	justify-content: center;
	height: 100%;
	width: 100%;
}

.slide {
	background-color: ghostwhite;
	background-repeat: no-repeat;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	overflow: auto;
	width: 100%;
}

.sideform {
	align-items: center;
	display: flex;
	padding: 9%;
}

.sideform input, .sideform select {
	border-color: #002284;
	margin-bottom: 1rem;
	max-width: 100%;
	padding: 0.3rem 0.8rem;
}
.sideform .selected {
	border-color: #002284;
}

#searchslide {
	align-self: center;
}

.querystring {
	border: 1px solid #999;
	min-width: 20rem;
	padding: 3px 5px;
	width: 28vw;
}
nav .querystring {
	width: 24vw;
}

/* /// select flag start /////////// */
.dropdown {
	cursor: default;
	display: inline-block;
	font-size: 150%;
	position: relative;
	margin: 0.2rem 1rem 0 0;
}

.sideform .dropdown {
	margin: 0.5rem 1rem 1rem 0;
}

.dropdown-content {
	display: none;
	position: absolute;
	flex-direction: column;
	justify-content: center;
	background-color: #fff;
	border: 1px solid #eee;
	color: #000;
	border-radius: 5px;
	box-shadow: 0 1px 8px #0009;
	z-index: 999;
	right: 0;
	top: 2rem;
}

.dropdown-content span {
	padding: 0.3rem 0.8rem;
}

.dropdown-content span:hover{
	background-color: #bbb;
	cursor: pointer;
}

/* .dropdown:hover .dropdown-content */
.dropdown .dropshow {
	display: flex;
}
/* /// select flag end ///////////// */

.dropme {
	cursor: pointer;
}

.querycountry {
	display: inline-flex;
}

.querycountry .dropme {
	height: 2rem;
}

.selected {
	align-items: center;
	background: #fff;
	border: 1px solid #999;
	border-radius: 5px;
	color: #000;
	display: inline-flex;
	height: 2rem;
	margin-left: .5rem;
	padding: 0.3rem 0.8rem;
}

.selectcountry span {
	height: 2.2rem;
}

.dropdown img {
	border-radius: 2px;
	height: 1.5rem;
	outline: 1px solid #999;
}

#resultslide form, #infoslide form {
	display: flex;
	gap: .5rem;
}

.icon-main-blue {
	background: #191645 linear-gradient(151deg, rgba(25,22,69,1) 33%, rgba(34,56,165,1) 88%, rgba(26,44,118,1) 100%);
	color: white;
}

#authslide,
#searchslide {
	display: flex;
	background-size: cover;
}

#resultslide {
	background-size: contain;
	padding: 11% 8%;
}

#infoslide {
	background-size: contain;
	padding: 138px 8%;
}

#authslide {
	background-image: url(i/authbg.jpg);
}

#searchslide {
	background-image: url(i/authbg.jpg);
}

.slide .col{
	flex: 1;
	padding-right: 1em;
}

.rescard, .perscard, .dossier {
	background-color: #fff;
	border: 1px solid #ddd;
	display: flex;
	flex-wrap: wrap;
	margin-top: 3em;
	padding: 1em;
}

.rescard, .perscard {
	border-radius: 7px;
}

.rescard h2,
.rescard h3 {
	flex-basis: 100%;
	margin: 0 0 .5em 0;
}

.perscard h2, .perscard h3 {
	flex-basis: 50%;
	margin: 0;
}

.rescard:hover,
.perscard:hover,
.nav-data:hover,
.modal-data:hover {
	cursor: pointer;
	border-color: #0af;
	box-shadow: 0 3px 8px #ccc;
}

.closed {
	opacity: 0.7;
}

.closed h2 {
	color: #933;
}

.closed:hover {
	border-color: #f88;
}

.dossier {
	font-size: 90%;
	line-height: 130%;
}

.dossier h2,
.dossier h3 {
	flex-basis: 100%;
	margin: 1.2em 0 .6em 0;
}

.dossier h2:nth-child(1) {
	margin: 0 0 .6em 0;
}

/* Полная информация +++++++++ ----------------------------------------------------------------------------------- */

table {
	border-collapse: collapse;
}

th {
	text-align: left;
}

th,
td {
	padding: 3px;
	vertical-align: top;
}

/* .dossier tr:hover {
	box-shadow: 0 1px 0 #ccc;
}*/

td b {
	display: block;
	width: 2.4rem;
	height: 1.2rem;
}

dt {
	font-weight: bold;
}

dl,
dd {
	margin: 0;
}

dt,
dd {
	display: block;
	float: left;
}

dt {
	font-weight: bold;
	clear: both;
}

ul {
	list-style-type: none;
}

dd {
	margin: 0;
	padding: 0 0 0.68ex 0.68ex;
}

#Contacts {
	margin-bottom: 0.5em;
}

.addcontact {
	display: none;
	font-size: inherit;
	padding: 0 8px;
}

.form {
	background: #f0f0f0;
	border: 1px solid #999;
	border-radius: 6px;
	margin-top: 5px;
	padding: 9px;
	position: relative;
}

.detailform {
	background: #f5f5f5;
	border: 1px solid #999;
	border-radius: 4px;
	display: none;
	height: auto;
	margin: .8em 0;
	min-width: 15rem;
	max-width: 22rem;
	padding: 5px;
	position: relative;
}

.detailform p {
	margin: 5px;
	color: #000 !important;
}

.detailform .closeme {
	position: absolute;
	top: 0;
	right: 0;
	color: #555;
	font-size: 160%;
	line-height: 100%;
	height: 1em;
	width: 1em;
}

.quickform {
	display: none;
}

.quickform .closeme {
	color: #555;
	font-size: 160%;
	height: 1em;
	line-height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	width: 1em;
}

.closeme {
	cursor: pointer;
	text-align: center;
}

.closeme:hover {
	color: #0af;
}

.errfield {
	outline: 2px solid red;
}

#taxPaymentsByYear p {
	margin: 0;
}

#taxPaymentsByYear tfoot {
	border-top: 1px solid #333;
	font-weight: bold;
}

#taxPaymentsByYear td,
#taxPaymentsByYear th {
	padding: .5rem;
	text-align: right;
}

#taxPaymentsByYear th:nth-child(1),
#taxPaymentsByYear th:nth-child(2),
#taxPaymentsByYear td:nth-child(1),
#taxPaymentsByYear td:nth-child(2) {
	text-align: left;
}

.details {
	display: none;
	position: relative;
}

/* NOTIFICATION ----------------------------------------------------------------------------------- */

.warning-class {
	color: #C00;
}

.warning-bold {
	color: #C00;
	font-weight: bold;
}

.warning-class a {
	margin: 0;
	cursor: pointer;
	border-bottom: 1px dashed;
	font-weight: 600;
}

.warning-class p a {
	color: #C00;
	text-decoration: none;
}

.warning-class a:hover {
	color: #900;
}

/* TABLE ----------------------------------------------------------------------------------- */

.lined tr {
	border-bottom: 1px solid #ccc;
}

.table-wrap td:first-child {
	max-width: 50rem;
}

.table-wrap td:not(:first-child) {
	text-align: right !important;
	padding-left: 5rem;
}

.zebra tr:nth-child(odd) {
	background-color: #f5f5f5;
}

#fnos_tbody tr {
	cursor: pointer;
}

#fnos_tbody tr:hover {
	background-color: rgb(200, 200, 200);
}

#tw tr:nth-child(2) td:nth-child(2) {
	white-space: nowrap;
}

/* MODAL ----------------------------------------------------------------------------------- */
.modal {
	display: none;
	position: fixed;
	z-index: 1;
	padding-top: 200px;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.4);
}

.modal-content1 {
	color: black;
	background-color: #fefefe;
	margin: auto;
	padding: 10px 20px;
	width: 30%;
	max-height: 80%;
	border-radius: 8px;
	box-shadow: 0 0 28px #0003;
}

.modal-content2 {
	background-color: #fefefe;
	margin: auto;
	padding: 20px;
	border: 1px solid #888;
	width: 50%;
	max-height: 80%;
	overflow-y: scroll;
}

#court_modal .closeme, #modal-cont .closeme, #modal-signup .closeme{
	position: relative;
	width: 1em;
	height: 1em;
    font-size: 300%;
	top: 3%;
    left: 74.7%;
	color: white;
	text-shadow: 0 0 13px black, 0 0 13px black, 0 0 13px black, 0 0 13px black;
}

.modal-data {
	border: 1px solid #888;
	border-radius: 5px;
	padding: 1em;
	margin-bottom: 2em;
	line-height: 125%;
	text-align: justify;
}

.nav-data {
	border: 1px solid #ddd;
	border-radius: 5px;
	padding: 1em;
	margin-bottom: 1em;
	line-height: 125%;
	text-align: justify;
}

.simple-nav {
	cursor: pointer;
	border-bottom: 1px dashed;
	font-weight: 400;
}

/* GRAPH D3.JS ----------------------------------------------------------------------------------- */

svg {
	font: 10px sans-serif;
	shape-rendering: crispEdges;
}

.axis path,
.axis line {
	fill: none;
	stroke: #000;
}

path.domain {
	stroke: none;
}

.y .tick line {
	stroke: #ddd;
}


/* LOADERS ----------------------------------------------------------------------------------- */

.loader {
	display: block;
	animation: rotation 1s infinite linear;
	-webkit-animation: rotation 1s infinite linear;
	height: 88px;
	width: 88px;
	border-color: #0af transparent #0af transparent;
	border-radius: 50%;
	border-style: solid;
	border-width: 6px;
}

.loader_radar {
	display: flex;
	align-items: center;
	justify-content: center;
	animation: rotation 3s infinite linear;
	-webkit-animation: rotation 3s infinite linear;
	height: 98px;
	width: 98px;
	border-radius: 50%;
	background: conic-gradient(#fff0 68%, #0af6 98%, #0af);
}

.loader_photon {
	display: flex;
	align-items: center;
	justify-content: center;
	animation: rotation 1s infinite linear;
	-webkit-animation: rotation 1s infinite linear;
	height: 86px;
	width: 86px;
	border-radius: 50%;
}
.loader_photon:after {
	content: '';
	border-radius: 50%;
	height: 82px;
	width: 82px;
}
.loader_photon_white,
.loader_photon_blue {
	background: repeating-conic-gradient(#fff0 0%, #fff0 8%, #0af 22%, #0af 28%, #fff0 42%, #fff0 50%);
}
.loader_photon_court {
	background: repeating-conic-gradient(#fff0 0%, #fff0 8%, #fff 22%, #fff 28%, #fff0 42%, #fff0 50%);
}
.loader_photon_white:after {
	background-color: #ffffff;
}
.loader_photon_blue:after {
	background-color: #00071a;
}
.loader_photon_court:after {
	background-color: #578BB8;
}

.loader_old {
	color: #999;
	display: block;
	font-size: 6rem;
	animation: rotation 2s infinite linear;
	-webkit-animation: rotation 2s infinite linear;
	height: 5rem;
	width: 5rem;
	line-height: 76%;
	text-align: center;
	border-radius: 50%;
	font-family: 'Lucida Sans Unicode';
}

.court-loader {
	align-self: center;
	margin-bottom: 1em;
	animation: rotation 3s infinite linear;
	-webkit-animation: rotation 3s infinite linear;
}
.court-loader-border {
	border-color: #fff transparent #fff transparent;
}

.loader_mini_border {
	display: inline-block;
	width: 0;
	height: 0;
	vertical-align: text-bottom;
	border-radius: 50%;
	border-color: #0af transparent #0af transparent;
	border-style: solid;
	border-width: .5rem;
	-webkit-animation: rotation 1s linear infinite;
	animation: rotation 1s linear infinite;
}
.loader_mini {
	display: inline-block;
	width: 1.1rem;
	height: 1.1rem;
	vertical-align: text-bottom;
	background: repeating-conic-gradient(#fff0 0%, #fff0 15%, #0af 50%);
	border-radius: 50%;
	-webkit-animation: rotation 1s linear infinite;
	animation: rotation 1s linear infinite;
}
.mini-loader {
	display: inline-block;
	width: 1rem;
	height: 1rem;
	vertical-align: text-bottom;
	border: .5rem dashed currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	-webkit-animation: rotation 1.5s linear infinite;
	animation: rotation 1.5s linear infinite;
	border-left-color: transparent;
}


/* Print ----------------------------------------------------------------------------------- */
* {
	-webkit-print-color-adjust: exact !important; /*Chrome, Safari*/
	color-adjust: exact !important; /*Firefox*/
}

@keyframes rotation {
	from {
		transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
	}

	to {
		transform: rotate(359deg);
		-webkit-transform: rotate(360deg);
	}
}

/* Mobile ----------------------------------------------------------------------------------- */
@media screen and (orientation: portrait) {
	nav {
		align-items: start;
		right: 0;
		transition: all .3s ease;
	}
	nav * {
		transition: all .3s ease;
	}
	nav img, #printButton {
		display: none;
	}
	.icon-main-blue form {
		width: 100%;
	}
	.icon-main-blue form {
		width: 100%;
	}
	.shrink {
		padding: 0.5em 1em;
	}
	.shrink input,
	.shrink button,
	.shrink select,
	#infoslide nav input,
	#infoslide nav button,
	#infoslide nav select {
		font-size: 110%;
	}
	.querystring {
		min-width: 100%;
		width: 100%;
	}
	#resultslide {
		padding: 10% 3%;
	}
	#resultslide nav, #infoslide nav {
		padding: 1em;
	}
	#resultslide .bigform .querystring, #infoslide .bigform .querystring {
		margin: 0 0 0.3em 0;
	}
	#resultslide #exitBtn, #infoslide #exitBtn {
		margin: 0 0 0 1em;
	}
	#infoslide {
		padding: 7em 3%;
	}
	#backtores span {
		display: none;
	}
	#infoslide div {
		order: 1;
	}
	#infoslide form {
		margin: 0 0.5em;
		order: 2;
	}
	#infoslide #exitBtn2 {
		order: 3;
	}
	#infoslide .dossier h2:nth-child(1) {
		margin: 1em 0 .6em 0;
	}
}