* { border: none; margin: 0px; padding: 0px;  }

:root {
  --lightgrey: #f7f8fa;
  --grey: #e6e7e8;
  --darkgrey: #d2d3d6;
  --darkgrey2: #595f69;
  --gold: #b4966b;
  --darkgold: #a38253;
  --txt: #4d4d4d;
  --red: #b50000;
}

body {
	width: 100%;
	max-width: 100vw;
	height: 100%;
	font-family: "Source Sans 3", sans-serif;
	font-size: 16px;
	font-weight: 400;
	color: var(--txt);
	line-height: 1.8;
	background-color: var(--grey);
	overflow: auto;
	overflow-x: hidden;
}

body.overflow {
	overflow: hidden;
}

div:focus,
a:focus,
input:focus,
textarea:focus,
button:focus {
	outline: 0;
}

a {
	color: var(--txt);
	font-weight: 400;
	text-decoration: none;
	cursor: pointer;
	
	transition: all .2s ease-in-out;
	-webkit-transition: all .2s ease-in-out;
}

	a:hover {
		color: var(--lightblue);
		text-decoration: none;
		
		transition: all .2s ease-in-out;
		-webkit-transition: all .2s ease-in-out;
	}

h1 {
	color: var(--txt);
	font-size: clamp(26px, 3vw, 40px);
	font-weight: 300;
	line-height: 1.1;
}

h2 {
	color: var(--txt);
	font-size: clamp(24px, 3vw, 36px);
	font-weight: 300;
	line-height: 1.2;
}

h3 {
	color: var(--txt);
	font-size: 22px;
	font-weight: 300;
	line-height: 1.2;
}

h1 em,
h2 em,
h3 em {
	color: var(--blue);
	font-style: normal;
}

.wp-block-buttons {
	gap: 20px;
}
	
a.btn,
button.wp-block-button__link,
button.submit,
button#submit,
.button a,
a.wp-block-button__link {
	font-family: inherit;
	display: block;
	padding: 8px 15px;
	text-align: center;
	font-weight: 500;
	text-decoration: none;
	color: #fff;
	font-size: 16px;
	cursor: pointer;
	
	background: var(--gold);
	border-radius: 0;
	outline: 0;
	border: 0;
	box-shadow: unset;
	
	position: relative;
	transition: all .2s ease-in-out;
}

a.red,
button.red {
	background: transparent;
	outline: 2px solid var(--red);
	outline-offset: -2px;
	color: var(--red);
}

	a.red:hover,
	button.red:hover {
		color: #fff;
		outline: 2px solid var(--darkgold);
		background: var(--darkgold);
	}

.border a {
	background: transparent;
	border: 1px solid var(--gold);
	color: var(--gold);
}

.grey a {
	background: var(--darkgrey);
	border: 1px solid var(--darkgrey);
	color: var(--txt);
}

	a.btn:hover,
	button.wp-block-button__link:hover,
	button.submit:hover,
	button#submit:hover,
	.button a:hover,
	a.wp-block-button__link:hover {
		background: #a38253;
		color: #fff;
	}

.fit,
.is-style-fit {
	position: relative;
	width: 100%;
	max-width: 1400px !important;
	margin: 0 auto;
	padding: 0 3%;
	box-sizing: border-box;
}	


header {
	background: #000;
	display: flex;
	align-items: stretch;
	padding: 0 0 0 3% !important;
}

	header #switch {
		order: 3;
		
		flex-basis: 60px;
		border-left: 1px solid rgba(255 255 255 / 0.2);
		
		padding: 10px 10px;
		box-sizing: border-box;
		
		display: flex;
		align-items: center;
		justify-content: center;
	}
	
		header #switch a {
			width: 100%;
			display: flex;
			gap: 5px;
			padding: 10px;
			box-sizing: border-box;
			flex-direction: column;
			align-items: center;
			justify-content: center;
		}
			
		header #switch a.on {
			box-sizing: border-box;
		}
			
			header #switch a span {
				display: block;
				width: 100%;
				height: 1px;
				background: rgba(255 255 255 / 0.7);
			}
		
	header #logo {
		order: 1;
		
		display: flex;
		align-items: center;
		padding: 20px 10px;
	}
	
		header #logo img {
			display: block;
			width: 130px;
			height: auto;
		}
		
	header #user {
		order: 2;
		margin-left: auto;
		padding: 10px 0 10px 10px;
		box-sizing: border-box;
		border-left: 1px solid rgba(255 255 255 / 0.2);
		
		display: flex;
		align-items: center;
		cursor: pointer;
	}
	
		header #user .user_name {
			color: #bbb;
			display: flex;
			align-items: center;
			gap: 10px;
		}
		
			header #user .user_name i {
				font-size: 12px;
				transition: all 0.2s ease;
			}
			
			
			header #user.on .user_name i {
				transform: rotate(180deg);
				transition: all 0.2s ease;
			}
			
			header #user .user_name a.login {
				color: #fff;
			}
			
			header #user .user_name a.login:hover {
				color: var(--gold);
			}
			
		header #user .menu_inner {
			position: fixed;
			z-index: 99;
			left: 100%;
			top: 0;
			height: 100vh;
			
			background: rgba(0 0 0 / 0.5);
			
			display: flex;
			justify-content: flex-end;
			align-items: stretch;
			
			visibility: hidden;
			transition: all 0.2s ease;
		}
		
		header #user.on .menu_inner {
			left: 0;
			width: 100%;
			visibility: visible;
			transition: all 0.2s ease;
		}
			
		header #user.on .menu_inner {
			visibility: visible;
			opacity: 1;
			transition: all 0.3s ease;
		}
		
		header #user.on .menu_inner #close_menu {
			position: absolute;
			z-index: 10;
			right: 22px;
			top: 22px;
			display: inline-block;
			width: 20px;
			height: 20px;
		}
			
			header #user.on .menu_inner #close_menu .line1 {
				position: absolute;
				left: 0;
				top: 10px;

				display: block;
				width: 100%;
				height: 1px;
				background: #000;
				transform: rotate(45deg)
			}
			
			header #user.on .menu_inner #close_menu .line2 {
				position: absolute;
				left: 0;
				top: 10px;

				display: block;
				width: 100%;
				height: 1px;
				background: #000;
				transform: rotate(-45deg)
			}

			header #user .menu_inner ul {
				list-style: none;
				padding: 60px 0 10px 0;
				background: var(--grey);
				width: 90%;
			}
			
			header #user .menu_inner ul li {
				padding: 10px 0;
				border-bottom: 1px solid var(--darkgrey);	
				display: block;
				text-align: left;
			}
				
				header #user .menu_inner ul li a {
					position: relative;
					display: block;
					padding: 10px 40px 10px 15px;
				}
			
				header #user .menu_inner ul li a:before {
					position: absolute;
					right: 15px;
					font-family: "FontAwesome";
					font-size: 16px;
				}
				
				header #user .menu_inner ul li.edytuj a:before {
					content: "\f044";
				}
				
				header #user .menu_inner ul li.panel a:before {
					content: "\f085";
				}
				
				header #user .menu_inner ul li.wyloguj a:before {
					content: "\f08b";
				}
					
				header #user .menu_inner ul li a:hover {
					background: var(--grey);
				}
			
		
		
#container {
	display: flex;
	flex-direction: column;
	padding: 0;
	min-height: calc(100vh - 150px);
}

	#container nav#menu {
		position: fixed;
		z-index: 99;
		left: 100%;
		top: 0;
		height: 100vh;
		
		background: rgba(0 0 0 / 0.5);
		
		display: flex;
		justify-content: flex-end;
		align-items: stretch;
		
		visibility: hidden;
		transition: all 0.2s ease;
	}
	
	#container nav#menu.on {
		left: 0;
		width: 100%;
		visibility: visible;
		transition: all 0.2s ease;
	}
		
	#container nav#menu #close_menu {
		position: absolute;
		z-index: 5;
		right: 22px;
		top: 22px;
		display: inline-block;
		width: 20px;
		height: 20px;
	}
		
		#container #close_menu .line1 {
			position: absolute;
			left: 0;
			top: 10px;

			display: block;
			width: 100%;
			height: 1px;
			background: #000;
			transform: rotate(45deg)
		}
		
		#container #close_menu .line2 {
			position: absolute;
			left: 0;
			top: 10px;

			display: block;
			width: 100%;
			height: 1px;
			background: #000;
			transform: rotate(-45deg)
		}
		
		#container nav#menu > ul {
			list-style: none;
			padding: 60px 0 10px 0;
			background: var(--grey);
			width: 90%;
		}
		
		#container nav#menu > ul > li {
			padding: 10px 0;
			border-bottom: 1px solid var(--darkgrey);	
		}
		
		#container nav#menu ul a {
			padding: 8px 35px 8px 20px;
			display: flex;
			box-sizing: border-box;
			align-items: center;
			gap: 8px;
			white-space: nowrap;
			transition: all 0.2s ease;
		}
	
			
			#container nav#menu ul a i {
				margin: 0;
				transition: all 0.1s ease;
			}
			
			#container nav#menu ul a span {
				display: flex;
				align-items: center;
				justify-content: flex-start;
				opacity: 1;
				visibility: visible;
				transition: all 0.1s ease;
			}
			
			
			#container nav#menu ul a span.count {
				align-self: center;
				flex-grow: unset;
				display: inline-block;
				font-size: 14px;
				margin-left: 15px;
				border-radius: 5px;
				line-height: 1;
				font-weight: 500;
				padding: 2px 7px;
				box-sizing: border-box;
				background: var(--gold);
				color: #fff;
			}
			
			#container nav#menu > ul > li.menu-item-has-children a {
				position: relative;
			}
				
				#container nav#menu > ul > li.menu-item-has-children > a:after {
					content: "\f0da";
					font-family: "FontAwesome";
					color: var(--darkgrey2);
					font-size: 12px;
					position: absolute;
					right: 25px;
					top: 12px;
					transform: rotate(90deg);
					transition: all 0.1s ease;
				}

				#container nav#menu ul li.menu-item-has-children.on > a:after {
					transform: rotate(270deg);
				}
					
				#container nav#menu ul li.current-menu-parent > a:after,
				#container nav#menu ul li.menu-item-has-children.on > a:after {
					color: #fff;
					transition: all 0.1s ease;
				}
				
				#container nav#menu > ul > li.menu-item-has-children li.current-menu-item > a {
					background: var(--darkgrey);
					color: var(--txt);
					font-weight: 600;
					transition: all 0.1s ease;
				}
				
						
			#container nav#menu ul li.menu-item-has-children > ul {
				max-height: 0;
				overflow: hidden;
				visibility: hidden;
				background: var(--darkgrey);
				transition: all 0.3s ease;
			}
			
				#container nav#menu ul li.menu-item-has-children > ul li.header {
					display: none;
				}
				
				#container nav#menu ul li.menu-item-has-children > ul li a {
					padding-left: 40px;
				}
				
			#container nav#menu ul li.menu-item-has-children.on > ul {
				max-height: 300px;
				overflow: hidden;
				visibility: visible;
				transition: all 0.3s ease;
			}
			
			#container nav#menu > ul > li.current-menu-item > a,
			#container nav#menu > ul > li.menu-item-has-children.on > a,
			#container nav#menu > ul > li.current-menu-parent > a {
				background: var(--darkgrey2);
				color: #fff;
			}
			
			#container nav#menu > ul > li li.current_page_parent a,
			#container nav#menu > ul > li li.current-menu-item a,
			#container nav#menu > ul > li li.current-menu-parent a {
				font-weight: bold;
			}
				
			#container nav#menu ul li.current-menu-parent > ul {
				
			}
				
			
	#container nav#menu.on {
		transition: all 0.3s ease;
	}
			
		#container nav#menu.on a {
			transition: all 0.3s ease;
		}		
			
			#container nav#menu li {
				position: relative;
			}
			
			#container nav#menu ul.sub-menu {
				top: 0;
				width: 100%;
				max-height: 0;
				overflow: hidden;
				transition: all 0.2s ease;
			}
			
			#container nav#menu li.menu-item-has-children.on ul.sub-menu {
				visibility: visible;
				max-height: 500px;
				transition: all 0.2s ease;
			}
			
				#container nav#menu li.menu-item-has-children ul.sub-menu li.header {
					display: none;
				}
				
					#container nav#menu li.menu-item-has-children ul.sub-menu li.header a {
						color: #fff !important;
						background: var(--darkgrey2) !important;
					}
					
				
				#container nav#menu li.menu-item-has-children ul.sub-menu a {
					display: block;
					width: 100%;
				}
				
				#container nav#menu ul li.menu-item-has-children.on > a {
					background: var(--darkgrey2);
					color: #fff;
				}
				
				
	#container #content {
		flex-basis: 80%;
		flex-grow: 1;
		background: #fff;
		padding: 20px;
		box-sizing: border-box;
		transition: all 0.3s ease;
	}
		
		
#content {
	
}

	#content h1 {
		padding: 20px 0;
	}
		
		
	#witaj {
		border: 1px solid var(--grey);
	}
	
		#witaj h3 {
			background: var(--gold);
			color: #fff;
			padding: 8px 15px;
			font-weight: 400;
		}
		
		#witaj p {
			padding: 10px 15px;
		}
		
		#witaj a {
			color: var(--gold);
		}
		
		#witaj a:hover {
			color: var(--txt);
			text-decoration: underline;
		}
		



/* FORMULARZE DODAWANIA I EDYCJI */
		
	form.form {
		border: 1px solid var(--grey);
	}	
	
		form.form h3 {
			background: var(--gold);
			color: #fff;
			padding: 8px 15px;
			font-weight: 400;
		}
			
		form.form #konto #message_container {
			
		}
		
		form.form #konto #alert {
			padding: 15px;
			box-sizing: border-box;
		}
		
			form.form #konto #alert.fail {
				background: var(--red);
				color: #fff;
			}
				
				form.form #konto #alert.fail a {
					color: #fff;
					text-decoration: underline;
				}
				
				form.form #konto #alert.fail a:hover {
					color: var(--gold);
				}
				
			
			form.form #konto #alert.success {
				background: #1e9209;
				color: #fff;
			}
		
		form.form #konto #msg_details {
			padding: 10px 15px;
		}
			
			form.form #konto #msg_details hr {
				margin: 20px auto;
				display: block;
				width: 100%;
				height: 1px;
				background: var(--grey);
			}
			
			form.form #konto #msg_details .row {
				display: flex;
				flex-direction: column;
				align-items: flex-start;
				width: 100%;
				gap: 0;
				padding: 15px 0;
			}
			
				form.form #konto #msg_details .row > span {
					flex-basis: 100%;
					line-height: 1.2;
					font-size: 15px;
					padding-bottom: 5px;
				}
				
				form.form #konto #msg_details .row > div {
					flex-basis: 100%;
					width: 100%;
				}
				
				form.form #konto #msg_details .row > div.flex {
					display: flex;
					width: 100%;
					align-items: center;
					gap: 1%;
				}
				
					form.form #konto #msg_details .row > div.flex a.btn {
						width: 12%;
						min-width: 100px;
						text-align: center;
						margin: 0;
					}
					
				@media screen and (max-width: 600px) {
					form.form #konto #msg_details .row > div.flex {
						flex-direction: column;
						gap: 15px;
					}
				}
					
				form.form #konto #msg_details .row > div.wyswig {
					flex-basis: 100%;
				}
					
				form.form #konto #msg_details .row > div.button a {
					width: 80%;
					box-sizing: border-box;
				}
					
				form.form #konto #msg_details .row > div:not(.wyswig) input {
					font-family: "Source Sans 3", sans-serif;
					font-size: 15px;
					border: 1px solid var(--grey);
					width: 100%;
					display: block;
					padding: 14px 15px;
					box-sizing: border-box;
				}
				
				form.form #konto #msg_details .row > div:not(.wyswig) input[readonly] {
					opacity: 1;
					background: #fafafa;
				}
				
				form.form #konto #msg_details .row > div:not(.wyswig) textarea {
				    font-family: Inter, sans-serif;
					border: 1px solid var(--grey);
					width: 80%;
					height: 150px;
					display: block;
					padding: 10px 15px;
					box-sizing: border-box;
					resize: none;
				}
				
			form.form #konto #msg_details .row .radio {
				display: flex;
				flex-direction: column;
				gap: 8px;
				width: 100%;
				align-items: flex-start;
			}
				form.form #konto #msg_details .row .radio label {
					white-space: nowrap;
					width: 100%;
					flex-basis: 100%;
					max-width: 250px;
					display: flex;
					gap: 5px;
					align-items: center;
				}
				
				form.form #konto #msg_details .row .radio label input {
					position: absolute;
					opacity: 0;
					visibility: hidden;
				}
				
					
				form.form #konto #msg_details .row .radio label .radiolabel {
					display: block;
					width: 100%;
					position: relative;
					padding: 8px 15px 8px 35px;
					border: 1px solid var(--grey);
					cursor: pointer;
					transition: all 0.2s ease;
				}
					
				form.form #konto #msg_details .row .radio label .radiolabel:hover {
					border: 1px solid var(--gold);
					transition: all 0.2s ease;					
				}
					
				form.form #konto #msg_details .row .radio label .radiolabel:before {
					content: "";
					display: block;
					width: 12px;
					height: 12px;
					
					border: 1px solid var(--darkgrey);
					
					position: absolute;
					left: 10px;
					top: 50%;
					transform: translateY(-50%);
					transition: all 0.2s ease;
				}
				
				form.form #konto #msg_details .row .radio label input:checked + .radiolabel:before {
					background: var(--gold);
					border: 1px solid var(--gold);
					transition: all 0.2s ease;
				}

				
				form.form #konto #msg_details .row .radio label input[disabled] + .radiolabel {
					opacity: 0.7;
					filter: grayscale(0.4);
				}
				
					form.form #konto #msg_details .row .radio label input[disabled] + .radiolabel {
						border: 1px solid var(--darkgrey) !important;
						cursor: default;
					}
					
				

			form.form #konto #msg_details .row .select2-container {
				width: 100% !important;
				flex-basis: 100% !important;

				display: block;
				text-align: left;
			}
			
			
				form.form #konto #msg_details .row > div.flex .select2-container {
					width: 100% !important;
					flex-basis: 100% !important;
					max-width: 100%;
				}
				
				form.form #konto #msg_details .row .select2-container .select2-selection {
					display: block;
					width: 100% !important;
					border: 1px solid var(--grey);
					padding: 10px 15px;
					box-sizing: border-box;
				}
				
				form.form #konto #msg_details .row .select2-container .select2-selection .select2-selection__rendered {
					padding: 0;
				}
					
				form.form #konto #msg_details .row .select2-container .select2-selection .select2-selection__arrow {
					top: 13px;
					right: 10px;
				}
				
				form.form #konto #msg_details .row .select2-container .select2-selection--multiple {
					height: auto;
					min-height: unset;
				}
				
					form.form #konto #msg_details .row .select2-container .select2-selection--multiple .select2-search--inline {
						padding: 0;
					}
						
						form.form #konto #msg_details .row .select2-container .select2-selection--multiple ul {
							display: flex;
							gap: 8px;
							align-items: center;	
						}
						
						form.form #konto #msg_details .row .select2-container .select2-selection--multiple ul li.select2-selection__choice {
							margin: 0;
							padding: 1px 7px;
							background: var(--grey);
							border: 0;
						}
							
						form.form #konto #msg_details .row .select2-container .select2-selection--multiple .select2-search--inline input {
							width: 100% !important;
							padding: 0;
							border: 0;
							margin: 0;
						}
						
		form.form #konto .sprawdzKosztyBox {
			text-align: center;
			margin: 15px 0 5px 0;
		}
		
		form.form #konto .sprawdzKosztyBox a#rozliczenie_sprawdz_koszty {
			display: inline-block;
			padding: 3px 12px;
			background: #fff;
			color: #a38253;
			border: 1px solid #a38253;
		}
		
			form.form #konto .sprawdzKosztyBox a#rozliczenie_sprawdz_koszty:hover {
				background: #a38253;
				color: #fff;
			}

					
		.form_footer .edit_button,
		form.form #konto .edit_button {
			padding: 15px 15px;
			border-top: 1px solid var(--grey);
			background: var(--lightgrey);
			display: flex;
			justify-content: center;
			
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 20px;
		}
		
		.form_footer .edit_button a {
			width: 100%;
			max-width: 300px;
			box-sizing: border-box;
		}
			
		.form_footer .edit_button form,
		.form_footer .edit_button button {
			line-height: 1.8;
			width: 100%;
			max-width: 300px;
			box-sizing: border-box;
		}
		
		@media screen and (max-width: 650px) {
			.form_footer .edit_button,
			form.form #konto .edit_button {
				flex-direction: column;
				gap: 15px;
			}
			
			.form_footer .edit_button a,
			form.form #konto .edit_button a {
				order: 2;
			}
			
			.form_footer .edit_button button,
			form.form #konto .edit_button button {
				order: 1;
				line-height: 1.8;
				padding: 12px 15px;
			}
		}
		
		.form_footer .edit_button.rows,
		form.form #konto .edit_button.rows {
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 20px;
		}
		
		form.form #konto .missings {
			padding: 20px 15px 30px 15px;
		}
		
			form.form #konto .missings ul {
				padding-left: 15px;
			}
			
				form.form #konto .missings ul li {
					padding: 3px 0;
				}
				
			
/* KOMUNIKATY */

.komunikat {
	border: 1px solid var(--grey);
}	

	.komunikat h3 {
		background: var(--gold);
		color: #fff;
		padding: 8px 15px;
		font-weight: 400;
	}
	
	.komunikat .komunikat_inner {
		padding: 10px 15px 35px 15px;
		box-sizing: border-box;
	}
		
		.komunikat .komunikat_inner .date {
			color: var(--darkgrey2);
			padding-bottom: 10px;
			margin-bottom: 10px;
			border-bottom: 1px solid var(--grey);
		}
		
		.komunikat .komunikat_inner p {
			padding: 5px 0;
		}
		
		.komunikat .komunikat_inner .button {
			text-align: center;
			margin: 20px 0;
		}
		
			.komunikat .komunikat_inner .button a {
				display: inline-block;
				margin: 0 auto;
			}
			
	.komunikat .back_button {
		padding: 15px 15px;
		border-top: 1px solid var(--grey);
		background: var(--lightgrey);
		display: flex;
		justify-content: center;
		
		displat: flex;
		gap: 20px;
	}
	
/* PANELE */

.panel {
	border: 1px solid var(--grey);
}	

	.panel h3 {
		background: var(--gold);
		color: #fff;
		padding: 8px 15px;
		font-weight: 400;
	}
	
	.panel .panel_inner {
		padding: 10px 15px;
		box-sizing: border-box;
	}
		
		.panel .panel_inner p {
			padding: 5px 0;
		}
		
		.panel .panel_inner .button {
			text-align: center;
			margin: 20px 0;
		}
		
			.panel .panel_inner .button a {
				display: inline-block;
				margin: 0 auto;
			}
				
.user_panel {
	display: flex;
	flex-direction: column;
	gap: 30px;
	margin-top: 30px;
}

	.user_panel h3 {
		background: var(--gold);
		color: #fff;
		padding: 8px 15px;
		font-weight: 400;
	}
	
		.user_panel .user_rozliczenia {
			flex-basis: 65%;
			border: 1px solid var(--grey);
		}
	
		.user_panel .user_informacje {
			flex-basis: 35%;
			border: 1px solid var(--grey);
		}
			
			.user_panel .user_informacje ul {
				list-style: none;
				padding: 10px 15px;
				box-sizing: border-box;
			}
			
				.user_panel .user_informacje ul li {
					padding: 5px 0;
					margin: 5px 0;
					line-height: 1.3;
				}
				
				.user_panel .user_informacje ul li:not(:last-child) {
					border-bottom: 1px solid var(--grey);
				}
				
					.user_panel .user_informacje ul li a {
						color: var(--gold);
					}
				
					.user_panel .user_informacje ul li a:hover {
						color: var(--darkgold);
					}
						
					.user_panel .user_informacje ul li .date {
						color: var(--darkgrey2);
						font-size: 14px;
					}
		
footer {
	text-align: right;
}

	footer #footer_copyrights {
		padding: 10px 20px;
		font-size: 14px;
		text-align: center;
	}
	
	
	


.select2-container {
	
}

	.select2-container .select2-search {
		padding: 5px 10px;
	}

		.select2-container .select2-search input {
			padding: 10px 10px;
			font-size: 14px;
		}
		
	.select2-container .select2-dropdown.select2-dropdown--above {
		border: 1px solid var(--grey);
		border-bottom: 1px solid transparent;
		border-radius: 8px 8px 0 0;
		box-sizing: border-box;
		margin-top: 2px;
		overflow: hidden;
	}

	.select2-container .select2-dropdown.select2-dropdown--below {
		border: 1px solid var(--grey);
		border-top: 1px solid transparent;
		border-radius: 0 0 8px 8px;
		box-sizing: border-box;
		overflow: hidden;
	}
	
		.select2-container .select2-dropdown ul li {
			padding: 6px 15px;
			color: var(--txt);
		}
		
		.select2-container .select2-dropdown ul li:hover,
		.select2-container .select2-dropdown ul li.select2-results__option--highlighted {
			background: var(--grey);
			color: var(--txt);
		}	

		.select2-container .select2-dropdown ul li.select2-results__option[aria-selected='true'] {
			background: transparent;
			color: var(--blue);
			font-weight: bold;
		}
	
/* PODSTRONY - TABELA */


.table {
	position: relative;
	min-height: 30px;
}

	.table > * {
		opacity: 1;
		transition: all 0.2s ease;
	}
	
	.table.loading > * {
		opacity: 0.3;
		transition: all 0.2s ease;
	}
	
	.table:before {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		
		position: absolute;
		z-index: 10;
		left: 0;
		top: 0;
		
		background-image: url(../graf/gold-dots.svg);
		background-repeat: no-repeat;
		background-position: 50% 50%;
		background-size: 80px auto;
		
		visibility: hidden;
		opacity: 0;
		transition: all 0.2s ease;
	}
	
	.table.loading:before {
		visibility: visible;
		opacity: 1;
		
		transition: all 0.2s ease;
	}

	.table_filter {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		align-items: center;
		gap: 15px;
		padding: 10px;
		margin-bottom: 20px;
		
		font-size: 14px;
	}

		.table_filter .filtering {
			order: 2;
			width: 100%;
			padding: 10px;
			box-sizing: border-box;
			justify-content: center;
			flex-grow: 1;
			display: flex;
			flex-wrap: wrap;
			gap: 10px;
			align-items: center;
			background: var(--lightgrey);
		}
		
		.table_filter .select2-container {
			width: 170px !important;
			flex-basis: 170px !important;

			display: block;
			text-align: left;
		}
			
			.table_filter .select2-container .select2-selection {
				display: block;
				width: 100% !important;
				border: 1px solid var(--grey);
				padding: 5px 15px;
				box-sizing: border-box;
			}
			
			.table_filter .select2-selection .select2-selection__rendered {
				padding: 0 !important;
			}
			
				
			.table_filter .select2-selection .select2-selection__arrow {
				top: 7px !important;
				right: 5px !important;
			}

	
		.table_filter a.btn {
			order: 1;
		}
			
		.table_filter#lokal_details {
			font-size: 16px;
		}
		
			.table_filter#lokal_details span {
				display: inline-block;
				margin: 0 10px;
			}
			
			.table_filter#lokal_details a.btn {
				margin-left: unset;
			}

			.table_filter#lokal_details .details {
				margin-left: auto;
			}

	.table_action_button {
		padding: 20px 0;
		display: flex;
		justify-content: center;
	}
		
		.table_action_button input#pdf_upload {
			margin-right: 25px;
			border: 1px solid var(--gold);
			padding: 12px;
			box-sizing: border-box;
		}
		
		.table_action_button a#upload_btn {
			margin-left: unset;
		}
		
	@media screen and (max-width: 600px) {
		.table_action_button {
			flex-direction: column;
			align-items: center;
			gap: 15px;
		}
		
		.table_action_button input#pdf_upload { 
			margin-right: 0;
		}
	}
	
	.buttons_top {
		display: flex;
		padding: 0 0 25px 0;
		justify-content: flex-end;
		gap: 15px;
		border-bottom: 1px solid #ddd;
		margin-bottom: 20px;
	}
	
	@media screen and (max-width: 600px) {
		.buttons_top {
			flex-direction: column;
			align-items: center;
		}
	}
	
		
	.table_top {
		display: block;
		width: 100%;
		padding-bottom: 10px;
		
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	
	.table_top > form {
		width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	
		.table_top select.select_perpage {
			padding: 5px 10px;
			margin-right: 10px;
			border: 1px solid var(--darkgrey);
		}
		
		.table_top .table_search {
			display: flex;
			gap: 25px;
		}
		
			.table_top .table_search input {
				border: 1px solid var(--grey);
				padding: 10px 15px;
				height: 50px;
				box-sizing: border-box;
				font-size: 14px;
			}
			
			.table_top .table_search .select2-container {
				width: 200px !important;
				flex-basis: 200px !important;

				display: block;
				text-align: left;
			}
				
				.table_top .table_search .select2-container .select2-selection {
					display: block;
					width: 100% !important;
					border: 1px solid var(--grey);
					padding: 10px 15px;
					box-sizing: border-box;
				}
				
				.table_top .table_search .select2-selection .select2-selection__rendered {
					padding: 0;
				}
					
				.table_top .table_search .select2-selection .select2-selection__arrow {
					top: 13px;
					right: 10px;
				}
				
		.table_top a.btn {
			
		}
				
		.table_top .wlasciciel {
			margin-left: auto;
			font-size: 20px;
			font-weight: 600;
		}
		
	
	@media screen and (max-width: 600px) {
		.table_top {
			flex-direction: column;
			gap: 15px;
		}
		
		.table_top .table_perpage {
			order: 2;
		}
		
		.table_top .table_search {
			order: 1;
			width: 100%;
		}
		
			.table_top .table_search input {
				width: 100%;
			}
	}
	

	.table_content {
		position: relative;
		display: block;
		box-sizing: border-box;
		width: calc(100% + 40px);
		left: -20px;
	}
	
		.table_content:before {
			content: "";
			display: block;
			height: 100%;
			width: 25px;
			background: linear-gradient(90deg, rgba(255,255,255,1) 20%, rgba(255,255,255,0) 100%);
			
			position: absolute;
			z-index: 5;
			left: 0;
			top: 0;
		}
	
		.table_content:after {
			content: "";
			display: block;
			height: 100%;
			width: 25px;
			background: linear-gradient(270deg, rgba(255,255,255,1) 20%, rgba(255,255,255,0) 100%);
			
			position: absolute;
			z-index: 5;
			right: 0;
			top: 0;
		}
		
	.table_content_inner {
		position: relative;
		display: block;
		overflow: auto;
		width: 100%;
		padding: 10px 20px;
		box-sizing: border-box;
	}
		

			
	table.table_table {
		width: 100%;
		min-width: 600px;
		border-spacing: 0;
		border: 1px solid var(--grey);
	}
	
	table.table_table[data-view-type="simple"] {
		width: 95%;
		margin: 20px auto;
	}
	
		table.table_table thead th {
			position: relative;
			border-bottom: 2px solid var(--grey);
			border-right: 1px solid var(--grey);
			padding: 5px 25px 5px 10px;
			box-sizing: border-box;
			background: #fff;
			text-align: left;
			line-height: 1.3;
			font-weight: bold;
			
		}
		
		table.table_table thead th a {
			font-weight: bold;
		}
		
		
		table.table_table#rozliczenia_wlasciciele_lista-list-table thead th:nth-child(1) {
			width: 25%;
		}
		
		table.table_table#rozliczenia_wlasciciele_lista-list-table thead th:nth-child(2) {
			width: 25%;
		}
		
		table.table_table#rozliczenia_wlasciciele_lista-list-table thead th:nth-child(3) {
			width: 35%;
		}
		
		table.table_table#rozliczenia_wlasciciele_lista-list-table thead th:nth-child(4) {
			width: 15%;
			min-width: 160px;
			border-right: 0;
		}
		
		
		table.table_table#users-list-table thead th:nth-child(1) {
			width: 20%;
		}
		
		table.table_table#users-list-table thead th:nth-child(2) {
			width: 20%;
		}
		
		table.table_table#users-list-table thead th:nth-child(3) {
			width: 40%;
		}
		
		table.table_table#users-list-table thead th:nth-child(4) {
			width: 20%;
			min-width: 270px;
			border-right: 0;
		}
		
		
		table.table_table#komunikaty-list-table thead th:nth-child(1) {
			width: 10%;
		}
		
		table.table_table#komunikaty-list-table thead th:nth-child(2) {
			width: 45%;
		}
		
		table.table_table#komunikaty-list-table thead th:nth-child(3) {
			width: 15%;
		}
		
		table.table_table#komunikaty-list-table thead th:nth-child(4) {
			width: 25%;
		}
		
		table.table_table#komunikaty-list-table thead th:nth-child(5) {
			width: 5%;
			min-width: 90px;
			border-right: 0;
		}
		
		
		table.table_table#user-komunikaty-list-table thead th:nth-child(1) {
			width: 15%;
		}
		
		table.table_table#user-komunikaty-list-table thead th:nth-child(2) {
			width: 75%;
		}
		
		table.table_table#user-komunikaty-list-table thead th:nth-child(3) {
			width: 10%;
		}
		
		
		
		table.table_table#pliki-list-table thead th:nth-child(1) {
			width: 85%;
		}
		
		table.table_table#pliki-list-table thead th:nth-child(2) {
			width: 15%;
		}
		

		
		table.table_table#apartamenty-list-table thead th:nth-child(1) {
			width: 15%;
		}
		
		table.table_table#apartamenty-list-table thead th:nth-child(2) {
			width: 25%;
		}
		
		table.table_table#apartamenty-list-table thead th:nth-child(3) {
			width: 35%;
		}
		
		table.table_table#apartamenty-list-table thead th:nth-child(4) {
			width: 15%;
		}
		
		table.table_table#apartamenty-list-table thead th:nth-child(5) {
			width: 10%;
		}
		
		
		table.table_table#koszty-list-table thead th:nth-child(1) {
			width: 3%;
		}
		
		table.table_table#koszty-list-table thead th:nth-child(2) {
			width: 15%;
		}
		
		table.table_table#koszty-list-table thead th:nth-child(3) {
			width: 28%;
		}
		
		table.table_table#koszty-list-table thead th:nth-child(4) {
			width: 22%;
		}
		
		table.table_table#koszty-list-table thead th:nth-child(5) {
			width: 8%;
		}
		
		table.table_table#koszty-list-table thead th:nth-child(6) {
			width: 12%;
		}
		
		table.table_table#koszty-list-table thead th:nth-child(7) {
			width: 12%;
		}
		
		
		table.table_table#aktualne_apartamenty-list-table thead th:nth-child(1) {
			width: 4%;
		}
		
		table.table_table#aktualne_apartamenty-list-table thead th:nth-child(2) {
			width: 16%;
		}
		
		table.table_table#aktualne_apartamenty-list-table thead th:nth-child(3) {
			width: 30%;
		}
		
		table.table_table#aktualne_apartamenty-list-table thead th:nth-child(4) {
			width: 18%;
		}
		
		table.table_table#aktualne_apartamenty-list-table thead th:nth-child(5) {
			width: 8%;
		}
		

		
		table.table_table#rozliczkoszty-list-table thead th:nth-child(1) {
			width: 50%;
		}
		
		table.table_table#rozliczkoszty-list-table thead th:nth-child(2) {
			width: 35%;
		}
		
		table.table_table#rozliczkoszty-list-table thead th:nth-child(3) {
			width: 15%;
		}
		
		
			table.table_table thead th .sort {
				position: absolute;
				right: 10px;
				top: 50%;
				transform: translateY(-50%);
				
				display: flex;
				flex-direction: column;
				align-items: center;
				justify-content: center;
				gap: 0;
			}
			
				table.table_table thead th .sort span {
					display: inline-block;
					width: 10px;
					height: 8px;
				}
			
					table.table_table thead th .sort span i {
						display: block;
						width: 10px;
						height: 8px;
						font-size: 12px;
						opacity: 0.3;
					}
					
					table.table_table thead th.sorting-desc .sort span.desc i {
						opacity: 1;
					}
					
					table.table_table thead th.sorting-asc .sort span.asc i {
						opacity: 1;
					}
						
		table.table_table tbody tr {
			background: #fff;
		}
		
		table.table_table tbody tr:nth-child(odd) {
			background: var(--lightgrey);
		}
		
		table.table_table tbody tr.sum-row,
		table.table_table tbody tr.wlasciciel-row {
			background: var(--lightgrey);
		}
		
		table.table_table tbody tr.separator-row {
			background: #fff;
		}
		
		table.table_table tbody tr.wlasciciel-row td {
			font-weight: bold;
			padding: 15px 10px;
		}
			
		table.table_table tbody tr.details-row {
			background: #fff;
		}
		
		table.table_table tbody tr td {
			padding: 10px;
			border-bottom: 1px solid var(--grey);
			border-right: 1px solid var(--grey);
			font-size: 14px;
			line-height: 1.2;
		}
			
		table.table_table tbody tr td a {
			color: var(--gold);
		}
		
		table.table_table tbody tr td a:hover {
			color: var(--txt);
		}
			
		table.table_table tbody tr td a.downloadPDF {
			display: flex;
			justify-content: center;
			margin: 0 auto;
			text-align: center;
		}
			
			table.table_table tbody tr td a.downloadPDF img {
				display: inline-block;
				width: 30px;
				height: auto;
			}
			
			
		table.table_table tbody tr:last-child td {
			border-bottom: 0;
		}
		
		table.table_table tbody tr td .nazwa_klienta {
			display: block;
			margin-bottom: 5px;
		}
		
		table.table_table tbody tr td .odbiorca  {
			padding: 2px 7px;
			display: inline-block;
			box-sizing: border-box;
		}
			
			table.table_table tbody tr td .odbiorca.user {
				background: var(--darkgrey2);
				color: #fff;
			}
			
			table.table_table tbody tr td .odbiorca.all {
				background: var(--darkgrey);
				color: #fff;
			}
			
			table.table_table tbody tr td .odbiorca.location {
				background: var(--gold);
				color: #fff;
			}
				
			
		table.table_table tbody tr td:last-child {
			border-right: 0;
			display: flex;
			align-items: center;
		}			
			
			
		table.table_table tbody tr.wlasciciel-row td:last-child,
		table.table_table tbody tr.separator-row td:last-child,
		table.table_table tbody tr.category-row td:last-child {
			display: table-cell;
		}
		
			table.table_table tbody tr td a.btn {
				display: inline-block;
				background: var(--gold);
				color: #fff;
				font-size: 13px;
				padding: 5px 5px;
				white-space: nowrap;
				margin: 2px 4px;
				height: 28px;
				box-sizing: border-box;
				display: inline-flex;
				align-items: center;
				justify-content: center;
			}
			
			table.table_table tbody tr td a.btn.border {
				background: transparent;
				color: var(--txt);
				border: 1px solid var(--gold);
			}
			
			table.table_table tbody tr td a.btn:hover {
				color: #fff;
				background: var(--darkgold);
			}
			
			table.table_table tbody tr td a.btn.remove {
				background: transparent;
				color: var(--red);
				border: 1px solid var(--red);
				padding: 2px 3px;
			}
				
				table.table_table tbody tr td a.btn.remove img {
					display: block;
					width: 16px;
					height: auto;
					transition: all 0.1s ease;
				}
			
				table.table_table tbody tr td a.btn.remove:hover {
					background: var(--red);
				}
				
					table.table_table tbody tr td a.btn.remove:hover img {
						filter: brightness(0) invert(1);
						transition: all 0.1s ease;
					}
			
		table.table_table#komunikaty-list-table tbody tr td:last-child a.btn {
			display: block;
			width: 100%;
			text-align: center;
			box-sizing: border-box;
			margin: 4px 0;
		}
			
			
	.table_bottom {
		display: flex;
		align-items: center;
		padding-top: 15px;
		justify-content: space-between;
	}
	
		.table_bottom .table_pagination {
			display: flex;
		}
		
			.table_bottom .table_pagination button {
				border: 1px solid var(--darkgrey);
				padding: 10px 15px;
				background: #fff;
				transition: all 0.2s ease;
			}
			
			.table_bottom .table_pagination button span {
				display: none;
			}
			
			.table_bottom .table_pagination button:not(:disabled):hover {
				cursor: pointer;
				background: var(--grey);
				color: #000;
				transition: all 0.2s ease;
			}
			
			.table_bottom .table_pagination button:first-child {
				border-right: 0;
			}
			
			.table_bottom .table_pagination .pagination-numbers button {
				border-right: 0;
				width: 35px;
				padding: 10px 5px;
			}
			
			.table_bottom .table_pagination .pagination-numbers button.active {
				background: var(--gold);
				color: #fff;
			}
			
	
	@media screen and (max-width: 600px) {
		.table_bottom {
			flex-direction: column;
			gap: 15px;
		}
		
		.table_bottom .table_pagination {
			order: 1;
		}
		
		.table_bottom .table_results {
			order: 2;
		}
	}
	
			.table_bottom .table_pagination .page-numbers {
				display: flex;
				list-style: none;
			}
				
				.table_bottom .table_pagination .page-numbers a {
					display: flex;
					align-items: center;
					justify-content: center;
					font-size: 15px;
					width: 35px;
					height: 37px;
					box-sizing: border-box;
					border: 1px solid var(--darkgrey);
					padding: 2px 5px;
					background: #fff;
					transition: all 0.2s ease;
				}
				
				.table_bottom .table_pagination .page-numbers a.next,
				.table_bottom .table_pagination .page-numbers a.prev {
					width: auto;
					padding: 2px 10px;
				}
				
				.table_bottom .table_pagination .page-numbers span.current {
					display: flex;
					align-items: center;
					justify-content: center;
					width: 35px;
					height: 37px;
					font-size: 15px;
					box-sizing: border-box;
					background: var(--gold);
					color: #fff;
					border: 1px solid var(--darkgrey);
					padding: 2px 5px;
					transition: all 0.2s ease;
				}
		
			
				.table_bottom .table_pagination .page-numbers a:hover {
					background: var(--gold);
					color: #fff;
				}
			
	
	
			
			
			
.aktualny_plik {
	text-align: center;
	padding-top: 15px;
	padding-bottom: 15px;
	margin-top: 15px;
	margin-bottom: 15px;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
}

	.aktualny_plik a {
		color: var(--red);
	}

	.aktualny_plik a:hover {
		color: var(--darkgold);
	}
	
	
#rozliczenie_dodaj_koszt {
	background: #f5f5f5;
	padding: 0 20px;
	box-sizing: border-box;
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transition: all 0.2s ease;
}

#rozliczenie_dodaj_koszt.on {
	max-height: 500px;
	opacity: 1;
	padding: 20px 20px;
	margin-bottom: 30px;
	transition: all 0.2s ease;
}
	
	form.form #konto #msg_details #rozliczenie_dodaj_koszt .row > div.flex .select2-container {
		width: 100% !important;
		flex-basis: 100% !important;
		max-width: 100% !important;
	}


	#rozliczenie_dodaj_koszt a.btn {
		display: inline-block;
		margin: 0 auto;
		width: auto;
	}
	
.home_stats {
	display: grid; 
	grid-template-columns: repeat(2, 1fr); 
	gap: 0px 0px; 
	gap: 10px;
	padding: 20px 0;
}

	.home_stats .box {
		border: 1px solid var(--grey);
		padding: 8px 12px;
		box-sizing: border-box;
		background: var(--lightgrey);
	}
	
@media screen and (max-width: 550px) {
	.home_stats {
		grid-template-columns: repeat(1, 1fr); 
	}
}

.zbiorczy_bilans {
	display: flex;
	justify-content: center;
	padding: 20px 0 0 0;
}

				
.page_txt {
	padding: 0;
}

	.page_txt ul,
	.page_txt ol {
		padding: 5px 0 5px 20px;
	}
	
		.page_txt ul li,
		.page_txt ol li {
			padding: 3px 0;
		}
		
	.page_txt h2 {
		font-size: 24px;
		display: block;
		padding: 25px 0 10px 0;
	}