﻿.pointer {
	cursor: pointer;
}

.ng-cloak {
	display: none;
}

.ng-submitted .ng-invalid, .ng-touched.ng-invalid {
	border-color: #D44950;
}

.full-width {
	width: 100%;
}

button.pull-right {
	margin-left: 5px;
}

.table-icon {
	height: 18px;
	width: 18px;
}

.form-alert {
	margin-bottom: 10px;
	margin-top: 10px;
}

.upload-file-size {
	display: block;
}

.upload-file-name-container {
	display: inline-block;
	margin-right: 10px;
	width: 30%;
	min-width: 200px;
}

.upload-file-info-container {
	display: inline-block;
	position: relative;
	margin-right: 10px;
	top: 5px;
	width: 30%;
	min-width: 200px;
}

.upload-file-progress-container {
	display: inline-block;
	position: relative;
	top: 10px;
	width: 30%;
	min-width: 200px;
}

.casecomments-textarea {
	max-width: 100%;
	min-width: 100px;
	min-height: 50px;
}

.portal-list-group-item {
	overflow: auto;
}

.text-left-force {
	text-align: left !important;
	display: inline-block
}

.text-metadata-title {
	display: inline-block; 
	vertical-align: top; 
	width: 150px;
}

.text-allow-breaks {
	white-space: pre-wrap;
	word-wrap: break-word;
}

.text-bold {
	font-weight: bold;
}

.break-word {
	word-break: break-word;
}

@media print {
	a[href]:after {
		content: none !important;
	}
}

.error-message {
	font-size: 24px;
	color: red;
	text-align: center;
	margin-top: 30px;
}

.ngdialog-content {
	background-color: white !important;
}

.navigation-button {
	padding-top: 8px !important;
}

.center {
	text-align: center
}

.btn_img {
	padding: 0 !important;
	border: 0 !important
}

.inline-header {
	display: inline-block;
}

.right-button {
	float: right;
}

.filter-input {
	width: 100% !important;
}

img:not([src]) {
	visibility: hidden;
}

.selectpicker {
	-webkit-appearance: menulist;
	color: white;
	border-radius: 3px;
	vertical-align: middle;
	border-color: #28a4c9;
	background-image: linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);
}

.selectpicker > option {
	color: black;
	background-color: white;
	margin: 2px 0 0;
	font-size: 14px;
}

ul.casecomment-documents {
	padding-left: 0;
	padding-bottom: 20px;
}

ul.casecomment-documents li {
	display: inline;
	margin-right: 10px;
}

ul.casecomment-documents li:not(:first-of-type) {
	margin-left: 10px;
}

span.glyphicon {
	margin-right: 0.4em;
}

.portal-button span.svgicon svg, .button-title {
	height: 40px;
	fill: white;
	stroke-width:2px;
	vertical-align: middle;
	margin-right: 5px;
	font-weight:700;
}

.case-comments-buttons-container,
.caselistoverview-buttons-container {
	margin-top: 20px;
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
}
	.caselistoverview-buttons-container {
		flex-direction: row;
		margin-bottom: 5px;
		justify-content: flex-end;

	}
	.case-comments-buttons-container {
		flex-direction: column;
	}

	.case-comments-buttons-container .portal-button-caseoverview:last-child {
		margin-left: 0px;
	}

@media (min-width: 570px) {

	.caselistoverview-buttons-container {
		margin-bottom: 15px;
	}

	.case-comments-buttons-container {
		flex-direction: row;
	}


	.case-comments-buttons-container .portal-button-caseoverview:last-child {
		margin-left: auto;
	}
}

.comment-item {
	margin-top: 10px;
	margin-bottom: 35px;
	padding-left: 10px;
	padding-right: 10px;
	padding-top: 10px;
	padding-bottom: 5px;
	border-top: 1px solid black;
}

.comment-item-label {
	color: #777;
	font: 14px Arial,Helvetica,sans-serif;
}

.comment--item-info {
	display: flex;
	justify-content: space-between;
}

/*Task 1260: font family is sometimes strange in the Portal*/
.comment--font-default {
	font-family: 'Microsoft Sans Serif' !important;
}

.header {
	cursor: pointer;
	text-decoration: underline;
}

.header-active {
	font-weight: bold;
}

meter::-webkit-meter-optimum-value {
    background: #2C699E;
}
meter::-moz-meter-bar { /* Firefox Pseudo Class */
    background: #2C699E;
}

.password-strength-meter {
    width: 100%;
    margin-top: 1rem;
}

.language-button {
    padding: 7px 2px 0 2px;
    margin-left: 1px !important;
    outline: none;
}


.language-button-disabled:hover > img {
	filter: grayscale(0);
}

.language-button > img,
.language-button-disabled > img {
	transition-property: filter;
	transition-duration: 0.5s;
}

.language-button-disabled > img {
	filter: grayscale(0.9);
}

.language-button:hover > img {
	transform: scale(0.9);
}

.language-button:active > img {
	transform: scale(0.9) translate(2px,1px);
}

.caseControl .threads-and-comments-wrapper {
	display: flex;
	border: 1px solid #ddd;
	margin-top: 8px;
}

.threads-and-comments-wrapper:not(:has(.case-comments-thread-selector)) {
	border-color: transparent;
}

.caseControl .threads-and-comments-wrapper .case-comments-thread-selector {
	display: flex;
	flex-direction: column;
	padding-left: 8px;
	background: #fdfdfd;
}

	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector .thread-button {
		padding: 8px;
		border-radius: 4px 0 0 4px;
	}

	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector .thread-button a {
		color: #337ab7;
		text-decoration: none;
	}
	
	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector .thread-button:not(.thread-button-selected):hover {
		border-color: #eee #eee #ddd;
		background-color: #eee;
	}

	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector .thread-button:not(.thread-button-selected):hover a {
		color: #555;
		text-decoration: none;
	}

	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector:has(.thread-button:last-child):after,
	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector:has(.thread-button:first-child):before {
		content: '';
		display: block;
		border-right: 1px solid #ddd;
	}

	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector:has(.thread-button:first-child):before {
		height: 42px;
	}

	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector:has(.thread-button:last-child):after {
		flex: 1 1 0px;
	}

	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector .thread-button:not(.thread-button-selected) {
		cursor: pointer;
		border-right: 1px solid #ddd;
	}

	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector .thread-button.thread-button-selected {
		color: #555;
		cursor: default;
		background-color: #fff;
		border: 1px solid #ddd;
		border-right-color: transparent;
	}

	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector .thread-button.thread-button-selected a {
		color: #555;
	}

	.caseControl .threads-and-comments-wrapper .case-comments-thread-selector .thread-button:not(.thread-button-selected):focus-visible:has(a) {
		outline-color: transparent;
		outline-width: 0;
	}
		.caseControl .threads-and-comments-wrapper .case-comments-thread-selector .thread-button:not(.thread-button-selected):focus-visible a {
			outline: 2px solid black;
		}

		/* remove outline on selected thread - should not be tabbable anyway, so this is redundant*/
		.caseControl .threads-and-comments-wrapper .case-comments-thread-selector .thread-button.thread-button-selected:focus-visible:focus-visible:has(a),
		.caseControl .threads-and-comments-wrapper .case-comments-thread-selector .thread-button.thread-button-selected:focus-visible:focus-visible a {
			outline-color: transparent;
			outline-width: 0;
		}


.caseControl .threads-and-comments-wrapper .thread-content-container-empty,
.caseControl .threads-and-comments-wrapper .thread-content-container {
	flex: 1 1 600px;
	padding: 0px 8px;
}

	.caseControl .threads-and-comments-wrapper .thread-content-container-empty {
		display: flex;
		justify-content: center;
		align-items: center;
	}


.caseControl .threads-and-comments-wrapper .thread-content-container .casecomments-textarea {
	resize: none;
}


.caseControl .threads-and-comments-wrapper .thread-button-line {
	display: flex;
	flex-direction: row-reverse;
}

	.caseControl .threads-and-comments-wrapper .thread-button-line div:last-of-type {
		margin-right: auto;
	}

.caseControl .threads-and-comments-wrapper .thread-content-tabs {
	display: flex;
    gap: 10px;
    height: 42px;
    padding: 0 8px;
}

	.caseControl .threads-and-comments-wrapper .thread-content-tabs .thread-content-tab {
		padding:4px;
	}

		.caseControl .threads-and-comments-wrapper .thread-content-tabs .thread-content-tab :is(a, a:visited) {
			cursor: default;
			text-decoration: none;
			color: #555;

			/*do not allow marking text*/
			-webkit-user-select: none;
			-moz-user-select: none;
			-ms-user-select: none;
			user-select: none;
		}

		.caseControl .threads-and-comments-wrapper .thread-content-tabs .thread-content-tab :is(a:focus, a:focus-visible, a:hover) {
			cursor: pointer;
			outline-color: transparent;
			outline-width: 0;
			color: #23527c;
		}

		.caseControl .threads-and-comments-wrapper .thread-content-tabs .thread-content-tab :is(a:focus-visible, a:hover):not(a:active) {
			opacity: 0.6;
		}

		.caseControl .threads-and-comments-wrapper .thread-content-tabs .thread-content-tab a:active {
			color: black;
		}

		.caseControl .threads-and-comments-wrapper .thread-content-tabs .thread-content-tab.selected a {
			text-shadow: 0px 0px 1px #555;
			font-weight: bolder;
			color: #555;
		}

			.caseControl .threads-and-comments-wrapper .thread-content-tabs .thread-content-tab a:after {
				content: '';
				display: flex;
				transition: background 0.5s ease, width 0.2s ease;
				background: transparent;
				width: 0px;
			}
			.caseControl .threads-and-comments-wrapper .thread-content-tabs .thread-content-tab.selected a:after {
				margin-top: 3px;
				height: 5px;
				background: #337ab7;
				width: 100%;
				margin-left: auto;
				margin-right: auto;
			}

			/*prefers reduced motion*/
			@media (prefers-reduced-motion: reduce) {
				.caseControl .threads-and-comments-wrapper .thread-content-tabs .thread-content-tab a:after {
					transition: none;
				}
			}

.itemContainer {
	position: relative;
}

	.itemContainer .templateContainer {
		transition: max-height 0.3s ease-in; /* css hack (because max-height hack is used) to focus transition curve on the beginning (slow at first) */
		max-height: 5000px; /* css hack to make transition height work */
	}

		.itemContainer .templateContainer::after {
			content: '';
			position: absolute;
			left: 0;
			right: 0;
			bottom: 0;
			height: 12px; /* Adjust the height as needed */
			background: linear-gradient(to bottom, #ffffff00, #b7b7b7);
			opacity: 0;
			transition: opacity 0.3s ease;
		}

		.itemContainer .templateContainer.collapsed {
			transition: max-height 0.3s cubic-bezier(0, 0.80, 0, 1); /* css hack (because max-height hack is used) to focus transition curve on the last 20% (from max-height 5000 -> 95) (slow at end) */
			max-height: 95px;
			overflow: hidden;
		}

			.itemContainer .templateContainer.collapsed::after {
				opacity: 1;
			}

	.itemContainer .clickable-div {
		position: absolute;
		right: 0;
		bottom: 0;
		width: 90px;
		height: 78px;
		margin-bottom: 12px;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;
	}

		.itemContainer .clickable-div svg {
			transition: all 0.3s ease;
		}

			.itemContainer .clickable-div svg.expanded {
				transform: rotate(180deg);
			}

		.itemContainer .clickable-div:hover {
			background-color: rgba(0, 0, 0, 0.1);
			border-radius: 5px;
		}