.custom-overlay {
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(0,0,0,0.2);
	z-index: 10000000;
}

.custom-alert, .custom-confirm {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	background: rgba(255, 255, 255, 1);
	padding: 20px;
	border: 1px solid #ccc;
	z-index: 10000001;
	box-shadow: 0 2px 10px rgba(0,0,0,0.2);
	width:100%;
	max-width:600px;
	text-align: center;
	line-height: 1.7em;
	font-size: 1em;
}

.custom-alert ul, .custom-confirm ul {
	text-align: left;
	margin-top: 10px;
	padding-left: 20px;
}

.custom-alert button, .custom-confirm button {
	margin: 10px;
	margin-top: 20px;
}

.custom-ok-button {
	background-color: #4CAF50 !important; /* Green */
	color: white;
	box-shadow: none !important;
}

.extra-content {
	background:white;
	box-shadow:0px 0px 15px #ddd;
	border:solid 1px var(--color-orange);
	border-radius:3px;
	padding:10px;
	display:none;
	min-width:320px;
	width:calc(100% - 20px);
	max-width:600px;
	text-align:left;
	font-size: 0.9em;
	position:absolute;
	font-weight:300;
}

.extra-content input {
	margin-top:10px;
}

.printonly {
	display: none;
}

h1 .extra-content {
	font-weight: 300;
	font-size: 13pt;
}

.tooltip { 
	padding:9px 11px; 
	position:absolute; 
	z-index:9999; 
	border-radius:3px;
	border:solid 1px var(--color-orange-dark);
	background: rgba(255, 255, 255, 0.7);
	overflow-wrap: break-word;
	max-width:360px;
	font-size: 0.8em;
	font-weight: 400;
	}


	.skrzynka,.skrzynka2 {
		margin: auto;
		border-collapse: collapse;
		background: white;
		box-shadow:1px 1px 3px #aaa;
		min-width:50%;
	}
	
	.skrzynka tr:hover {
		background: #f0f0f0 !important;
	}
	
	.skrzynka tr:nth-child(even) {
		background: #fafafa;
	}
	
	.skrzynka td:hover {
		background: #e8e8e8 !important;
	}
	
	.noHover tr:hover, 
	.noHover td:hover {
	background:none !important;
	}
	
	.skrzynka {
		width:100%;
	}
	
	.skrzynka td,.skrzynka2 td {
		border: solid 1px #aaa;
		padding: 4px;
		text-align:left;
	}
	
	.skrzynka th {
		border: solid 1px #aaa;
		background: #eeeeee;
		padding: 4px;
		text-align: center;
		font-weight:normal;
		font-size:1.1em;
		/*
		 position: sticky;
		 z-index: 2;
		 top:0px;
		 box-shadow: 0 1px 0 0 #aaa;
		 */
	}
	
	.skrzynka th a {
		color: black;
		text-decoration: underline;
	}
	
	.skrzynka td.center {
		text-align: center;
	}
	
	.skrzynka td.right {
		text-align: right;
	}
	
	/*
	@media (max-width: 600px) {
		.skrzynka td, .skrzynka tr {
			display:block;
			margin-bottom: -1px;
			text-align: left !important;
		}
	
		.skrzynka td {
			display: flex;
			flex-wrap: wrap;
		}
	
		.skrzynka tr {
			margin-bottom:10px;
		}
	
		.skrzynka td::before {
			content: attr(data-title) ": ";
			font-weight: 400;
			font-size: 0.8em;
			display: block;
			margin-bottom:5px;
			margin-right: 5px;
			text-align: left;
		}
		.skrzynka th, .skrzynka tr:has(th) {
			display: none;
		}
	}
		*/

.mala, .small {
	font-size: 0.9em;
}

.bigger {
	font-size:1.2em;
}

.nowrap {
	white-space:nowrap;
}

.middle {
    vertical-align: middle;
}

.red-count {
	background: red;
	color: white;
	border-radius: 50%;
	padding:5px;
	min-width:24px;
	height: 24px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 0.8em;
}
	
#ajax-window-overlay {
	top: 0px;
	left: 0px;
	position: absolute;
	width: 100%;
	height: 100%;
	background:rgba(255,255,255,0.75);
	display: none;
	z-index: 10000;
}

#ajax-window { 
	margin: auto;
	width:calc(100% - 10px);
	max-width:1000px;
	border:solid 1px #ccc;
	border-radius:6px;
	box-shadow:0px 0px 20px #ccc;
	background:white;
	position:relative;
	transform-origin: top left;
}

#ajax-window-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background:#f5f5f5;
	color:#555;
	font-weight: 400;
	padding:10px;
	border-bottom:solid 1px #eaeaea;
	border-radius: 6px 6px 0px 0px;
}

#ajax-window-close-img {
	cursor:pointer;
	height:32px;
	width:32px;
	margin-left:10px;
}

#ajax-window-title {
	word-break: break-all;
	overflow: hidden;

}

#ajax-window-content {
	padding:10px;
	position:relative;
	margin: auto;
	transform-origin: top left;
}

#scansLeftArrow, #scansRightArrow {
	cursor:pointer;
	opacity:0.5;
	position:absolute;
	top:40vh;
	left:-100px;
	z-index:10005;
}

#scansRightArrow {
	left:auto;
	right:-100px;
}

@media (max-width: 800px) {
	#scansLeftArrow {
		left:5px;
	}
	#scansRightArrow {
		right:5px;
	}

	#ajax-window {
		width: 100%;
		max-width: 100%;
		padding-bottom:60px;
	}

	#ajax-window-title {
		font-size:0.9em;
		font-weight: 400;
	}
}

#scansBrowseProgress {
	position:absolute;
	top:0px;
	left:0px;
	height:5px;
	background:#de6c00;
}

.scan-preview {
    width: 100%;            /* albo np. 400px */
    overflow: hidden;       /* ważne: nadmiar obrazu ma być ucięty */
    position: relative;
}

.scan-preview img {
    max-width: 100%;
    max-height: 100%;
    display: block;
    margin: 0 auto;

    transform-origin: center center; /* skala od środka */
    touch-action: none;              /* pozwala na własną obsługę gestów */
}

#session-info-span {
	cursor:pointer;
}

#session-info-span:hover {
	background:#FC8D33;
	color:white;
	border-radius:3px;
	padding:2px;
}

#end-of-session-bg {
	position: absolute;
	z-index: 1000000;
	width: 100%;
	height: 100%;
	background: #fff;
	opacity: 0.2;
	filter: alpha(opacity=20);
	display: none;
	top: 0px;
	left: 0px;
}

#end-of-session {
	display:none;
	position:absolute;
	text-align:center;
	border:solid 1px orange;
	border-width:1px 0px 1px 0px;
	background:white;
	min-width:280px;
	width:100%;
	padding:90px 5px;
	box-shadow:1px 0px 3px #aaa;
	font-size:1.3em;
	z-index:1000001;
}

#end-of-session input {
	width:275px;
	text-align:center;
	padding:10px;
	margin-top:15px;
	cursor:pointer;
	font-size:0.75em;
}

.blur {
	filter:blur(10px);
	-webkit-filter: blur(10px);
	-moz-filter: blur(10px);
	-o-filter: blur(10px);
	-ms-filter: blur(10px);
}

.center {
	margin-left:auto;
	margin-right: auto;
	text-align: center;
}

.notes-unread {
	font-weight: 400;
}

.notes-panel {
	position:relative;
}

.notes-panel textarea {
	width:100%;
	min-height: 100px;
	margin-bottom:10px;
}

.notes-wrapper {
	z-index:900;
	display:none;
	position:absolute;
	border:solid 1px #bfbfbf;
	border-radius:2px;
	width:100%;
	width:500px;
	max-height:600px;
	overflow-y: auto;
	background: #fefefe;
	padding:8px;
	text-align: left;
	box-shadow:0px 0px 15px #ddd;
}

.notes-button {
	border-radius:1px;
	cursor:pointer;
	padding:10px;
	font-size: 10pt;
	width:190px;
	text-align:center;
	margin:auto;
	display:flex;
	justify-content:space-around;
	align-items:center;
}

.notes-compact .notes-button {
	width:auto;
	padding:0px;
	margin-top: 2px;
}

.notes-compact .notes-button img{
	max-width: 36px;
	padding:8px;
}

.notes-compact .notes-button span {
	display: none;
}

.notes-close {
	float:right;
}

.notes-add {
	float:left;
}

.notes-red, .notes-green {
	display:block;
	position: absolute;
	top:-8px;
	right:-8px;
	background-color: red;
	color: white;
	font-weight: bold;
	padding:5px;
	border-radius: 50%;
	width:26px;
}

.notes-green {
	background-color: #2b9102;
}

#rating-main {
display:flex;
justify-content:center;	
flex-wrap:wrap;
}


.rating-section {
	display: flex;
	flex-wrap:wrap;
}

#rating-main textarea {
	width:100%;  
	height:100px;
	margin-top:10px;
}

.rating-header {
	font-size: 1.9em;
	margin-left:20px;
}

.rating-question {
	padding:20px;
	border:solid 1px #efefef;
	margin:10px;
}

.rating-question:hover {
	background:#f0f0f0;
}

.rating {
font-size:3em;
}

.rate-base-layer {
    color: gray;
}
.rate-hover-layer {
    color: #fc8d33;
}
.rate-select-layer {
    color: #fc8d33;
}

.chart-div {
	position: relative;
	width: 100%;
	min-height: 300px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	margin-bottom: 15px;
	border: solid 1px #ddd;
	border-radius: 3px;
	padding: 10px;;
}