* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

/* Fonts */
/* Instrument Sans */
/* Regular 400 */
@font-face {
	font-family: "Instrument Sans";
	font-style: normal;
	font-weight: 400;
	src: url(/css/fonts/InstrumentSans/InstrumentSans-Regular.ttf) format("truetype");
}

/* Regular 400 Italic */
@font-face {
	font-family: "Instrument Sans";
	font-style: italic;
	font-weight: 400;
	src: url(/css/fonts/InstrumentSans/InstrumentSans-Italic.ttf) format("truetype");
}

/* Medium 500 */
@font-face {
	font-family: "Instrument Sans";
	font-style: normal;
	font-weight: 500;
	src: url(/css/fonts/InstrumentSans/InstrumentSans-Medium.ttf) format("truetype");
}

/* Medium 500 Italic */
@font-face {
	font-family: "Instrument Sans";
	font-style: italic;
	font-weight: 500;
	src: url(/css/fonts/InstrumentSans/InstrumentSans-MediumItalic.ttf) format("truetype");
}

/* SemiBold 600 */
@font-face {
	font-family: "Instrument Sans";
	font-style: normal;
	font-weight: 600;
	src: url(/css/fonts/InstrumentSans/InstrumentSans-SemiBold.ttf) format("truetype");
}

/* SemiBold 600 Italic */
@font-face {
	font-family: "Instrument Sans";
	font-style: italic;
	font-weight: 600;
	src: url(/css/fonts/InstrumentSans/InstrumentSans-SemiBoldItalic.ttf) format("truetype");
}

/* Bold 700 */
@font-face {
	font-family: "Instrument Sans";
	font-style: normal;
	font-weight: 700;
	src: url(/css/fonts/InstrumentSans/InstrumentSans-Bold.ttf) format("truetype");
}

/* Bold 700 Italic */
@font-face {
	font-family: "Instrument Sans";
	font-style: italic;
	font-weight: 700;
	src: url(/css/fonts/InstrumentSans/InstrumentSans-BoldItalic.ttf) format("truetype");
}

/* Inter */
/* Medium 500 */
@font-face {
	font-family: "Inter";
	font-style: normal;
	font-weight: 500;
	src: url(/css/fonts/Inter/Inter_18pt-Medium.ttf) format("truetype");
}

/* Medium 500 Italic*/
@font-face {
	font-family: "Inter";
	font-style: italic;
	font-weight: 500;
	src: url(/css/fonts/Inter/Inter_18pt-MediumItalic.ttf) format("truetype");
}

/* SemiBold 600*/
@font-face {
	font-family: "Inter";
	font-style: normal;
	font-weight: 600;
	src: url(/css/fonts/Inter/Inter_18pt-SemiBold.ttf) format("truetype");
}

/* SemiBold 600 Italic*/
@font-face {
	font-family: "Inter";
	font-style: italic;
	font-weight: 600;
	src: url(/css/fonts/Inter/Inter_18pt-SemiBoldItalic.ttf) format("truetype");
}

@font-face {
	font-family: "Inter";
	font-style: normal;
	font-weight: 700;
	src: url(/css/fonts/Inter/Inter_18pt-SemiBold.ttf) format("truetype");
}

/********************************************************************************************************/
/********************************************************************************************************/

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead {
	/* vertical-align: baseline; */
	background: transparent;
	font-size: 100%;
	outline: 0;
	padding: 0;
	margin: 0;
	border: 0;
}

html,
body {
	height: 100%;
}

body {
	display: flex;
	flex-direction: column;
	font-family: "Inter", sans-serif;
	background-color: var(--white);
	font-weight: normal;
	line-height: 20px;
	font-size: 14px;
	padding: 0;
	margin: 0;
	min-height: 100vh;
}

a:link,
a:visited {
	text-decoration: none;
	/* color: var(--black); */
}

a {
	text-decoration: none;
	color: var(--black);
	width: fit-content;
}

a:hover {
	/* text-decoration: underline; */
	color: var(--light-blue);
}

.a-link {
	color: var(--lighter-black);
	display: flex;
	align-items: center;
}

img {
	border: 0;
}

h1 {
	font-family: "Inter", "Poppins", sans-serif;
	font-weight: normal;
	color: #333333;
	font-size: 1.6rem;
	line-height: 34px;
	padding: 0.3rem 0;
	margin-bottom: 0.5rem;
}

h2 {
	font-family: "Inter", "Poppins", sans-serif;
	font-weight: normal;
	color: #333333;
	font-size: 1.3rem;
	display: flex;
	line-height: 24px;
	margin-bottom: 1rem;
	gap: 0.5rem;
}

h3 {
	font-family: "Inter", "Poppins", sans-serif;
	font-weight: normal;
	line-height: 1.1rem;
	font-size: 20px;
	color: #333333;
}

h4 {
	font-family: "Inter", "Poppins", sans-serif;
	font-weight: normal;
	line-height: 27px;
	font-size: 0.8rem;
	color: #333333;
}

h1 a:link,
h1 a:visited,
h2 a:link,
h2 a:visited {
	color: #333333;
}

h1 img,
h2 img {
	vertical-align: middle;
}

.bold {
	font-weight: 700;
}

hr {
	border-bottom: 1px solid #e5e5e5;
	border-right: 1px solid #ffffff;
	border-left: 1px solid #ffffff;
	border-top: 1px solid #ffffff;
	margin: 10px 0;
}

table {
	border-collapse: collapse;
	width: 100%;
	overflow-x: auto;
}

table,
tr,
th,
td {
	font-family: "Instrument Sans", "Inter", "Poppins", sans-serif;
	font-size: 14px;
	color: #000000;
	padding: 5px 7px;
	min-width: 3.8rem;
}

table.responsive tbody tr:hover {
	background-color: #ececec;
}

thead td {
	font-weight: bold;
}

thead tr {
	border-bottom: 2px solid rgb(182, 182, 182);
	text-align: left;
}

tbody tr {
	border-bottom: 1px solid rgb(182, 182, 182);
}

tr.bold {
	font-weight: bold;
}

tr.underline {
	text-decoration: underline;
}

/* Hover effect for clickable table rows */
tr.clickable-row:hover {
	background-color: #f5f5f5;
}

.clickable-row {
	cursor: pointer;
}

article.clickable-row:hover {
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.2);
}

p {
	padding: 0px;

	margin: 0px;
}

label {
	font-weight: bold;
}

.form-wrapper {
	padding: 0.5rem 0;
	border-radius: 0.5rem;
}

form {
	width: 100%;
	margin: auto;
}

form.w100 {
	width: 100%;
	margin: 0;
}

/* css for <small> tag */
small {
	font-size: 12px;
}

form small {
	font-size: 12px;
}

.link-style {
	text-decoration: none;
	color: var(--blue);
}

.link-style:hover {
	text-decoration: underline;
	cursor: pointer;
}

input,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="radio"],
textarea,
select {
	font-family: "Instrument Sans", "Inter", "Poppins", sans-serif;
	margin-bottom: 3px;
	font-size: 100%;
	padding: 0.6rem;
	width: 100%;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	background-color: #e5e5e5;
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#f0f0f0));
	background: -webkit-linear-gradient(top, #ffffff, #f0f0f0);
	background: -moz-linear-gradient(top, #ffffff, #f0f0f0);
	background: -ms-linear-gradient(top, #ffffff, #f0f0f0);
	background: -o-linear-gradient(top, #ffffff, #f0f0f0);
	background: linear-gradient(top, #ffffff, #f0f0f0);
	text-shadow: -1px -1px 0px #ffffff;
	border: 1px solid #cccccc;
	max-width: 500px;
	min-width: 125px;
}

input[type="checkbox"] {
	min-width: unset;
}

input[type="date"] {
	padding: 0.5rem 1rem;
	font-family: "Instrument Sans", "Inter", "Poppins";
	border-radius: 5px;
	width: 50%;
}

select {
	cursor: pointer;
	width: 100%;
}

.modal-viewer select {
	max-width: unset !important;
}

/* Validation Styles  */
.input-error {
	border: 2px solid #e74c3c !important;
}

@keyframes wiggle {
	0% {
		transform: translateX(0);
	}

	20% {
		transform: translateX(-5px);
	}

	40% {
		transform: translateX(5px);
	}

	60% {
		transform: translateX(-5px);
	}

	80% {
		transform: translateX(5px);
	}

	100% {
		transform: translateX(0);
	}
}

.wiggle {
	animation: wiggle 0.8s;
}

/* END Validation Styles */

table input,
table textarea,
table select {
	margin-bottom: 0px;
}

textarea.h100 {
	height: 100px;
}

textarea.h200 {
	height: 200px;
}

textarea.h300 {
	height: 300px;
}

.comment-section {
	display: flex;
	flex-direction: column;
	margin-bottom: 1rem;
}

a.submit,
.submit,
input.submit {
	background: var(--light-blue);
	border: none;
	color: #ffffff !important;
	width: 100%;
	margin: 10px 10px 10px 0;
	cursor: pointer;
	font-size: 14px;
	padding: 0.714rem 1.071rem;
	width: 200px;
	min-width: -webkit-fill-available;
	min-width: fit-content;
	border-radius: 0.7rem;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	text-align: center;
	text-shadow: none;
	font-weight: bold;
}

a.submit-grey,
.submit-grey,
input.submit-grey {
	background: none;
	background-color: #999;
	border: none;
	color: #fff !important;
	width: 100%;
	margin: 10px 10px 10px 0;
	cursor: pointer;
	font-size: 14px;
	padding: 10px 15px;
	min-width: -webkit-fill-available;
	min-width: fit-content;
	border-radius: 0.7rem;
	-webkit-appearance: none;
	appearance: none;
	text-align: center;
	text-shadow: none;
	font-weight: bold;
}

a.submit:hover,
.submit:hover,
input.submit:hover,
a.submit-grey:hover,
.submit-grey:hover,
input.submit-grey:hover,
a.cancel:hover,
.cancel:hover,
input.cancel:hover,
button.cancel:hover {
	text-decoration: none;
	opacity: 0.7;
}

a.cancel,
.cancel,
input.cancel,
button.cancel {
	background: var(--white);
	border: solid 1px var(--blue);
	color: var(--blue) !important;
	width: 100%;
	margin: 10px 10px 10px 0;
	cursor: pointer;
	font-size: 14px;
	padding: 10px 15px;
	width: 200px;
	min-width: -webkit-fill-available;
	min-width: fit-content;
	border-radius: 0.7rem;
	appearance: none;
	text-align: center;
	text-shadow: none;
	font-weight: bold;
}

/* css to get style as inputfield*/
.style-input {
	font-family: "Instrument Sans", "Inter", "Poppins", sans-serif;
	margin-bottom: 3px;
	font-size: 100%;
	padding: 8px;
	width: 100%;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	background-color: #e5e5e5;
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#f0f0f0));
	background: -webkit-linear-gradient(top, #ffffff, #f0f0f0);
	background: -moz-linear-gradient(top, #ffffff, #f0f0f0);
	background: -ms-linear-gradient(top, #ffffff, #f0f0f0);
	background: -o-linear-gradient(top, #ffffff, #f0f0f0);
	background: linear-gradient(top, #ffffff, #f0f0f0);
	text-shadow: -1px -1px 0px #ffffff;
	border: 1px solid #cccccc;
	margin: 10px 0;
	margin-top: 5px;
	max-width: 500px;
	min-width: 125px;
}

/* delete disabled */

.delete-disabled {
	cursor: not-allowed;
	opacity: 0.2 !important;
	background-color: #666 !important;
}

.delete-disabled:hover {
	cursor: not-allowed !important;
	opacity: 0.2 !important;
	background-color: #666 !important;
}

/* Knappar för borttagning (Röd) */

input.delete {
	background-color: #a80000;
	background: -webkit-gradient(linear, left top, left bottom, from(#f52e2e), to(#a80000));
	background: -webkit-linear-gradient(top, var(--light-blue), var(--blue));
	background: -moz-linear-gradient(top, var(--light-blue), var(--blue));
	background: -ms-linear-gradient(top, var(--light-blue), var(--blue));
	background: -o-linear-gradient(top, var(--light-blue), var(--blue));
	background: linear-gradient(top, var(--light-blue), var(--blue));
	-webkit-box-shadow: 0px 1px 0px 0px #ff9b9b inset;
	-moz-box-shadow: 0px 1px 0px 0px #ff9b9b inset;
	-ms-box-shadow: 0px 1px 0px0px #ff9b9b inset;
	-o-box-shadow: 0px 1px 0px 0px #ff9b9b inset;
	box-shadow: inset 0px 1px 0px 0px #ff9b9b;
	text-shadow: -1px -1px 0px var(--blue);
	border: 1px solid #a80000;
	font-weight: bold;
	color: #ffffff;
}

input.delete:hover {
	background-color: #a80000;
	border: 1px solid #a80000;
	-webkit-box-shadow: 0 0 10px 5px #a80000 inset;
	-moz-box-shadow: 0 0 10px 5px #a80000 inset;
	-ms-box-shadow: 0 0 10px 5px #a80000 inset;
	-o-box-shadow: 0 0 10px 5px #a80000 inset;
	box-shadow: 0 0 10px 5px #a80000 inset;
}

input[type="checkbox"] {
	background: none;
	padding: 0;
	width: 30px;
	border: 0;
}

input[type="radio"] {
	background: none;
	padding: 0;
	width: 1rem;
	border: 0;
}

:invalid {
	box-shadow: none;
}

:-moz-submit-invalid {
	box-shadow: none;
}

:-moz-ui-invalid {
	box-shadow: none;
}

.logo {
	display: flex;
	align-items: center;
	height: 100%;
	/* Fyll hela headern */
	max-height: 50px;
	/* Ge lite margin */
}

.logo-img {
	height: 100%;
	width: auto;
	max-height: 50px;
	max-width: 250px;
	object-fit: contain;
}

.logo-inline {
	max-height: 2rem;
}

/* Logo image props for the changing mobile logo */
@media (max-width: 960px) {
	.logo-img {
		width: 45px;
		height: auto;
		/* Keep aspect ratio */
	}
}

.readonly-input {
	background: transparent !important;
	background-color: transparent !important;
	border: none !important;
	padding-left: 0 !important;
}

/* Input */

.Input {
	margin-top: 20px;
}

.Input input {
	width: 100%;

	max-width: 400px;
}

.Input label {
	display: block;
}

.Input__checkbox {
	padding: 10px 0;
}

input:focus {
	outline: none;

	border: 1px solid #888888;
}

label {
	font-size: 15px;
	margin-bottom: 0.5rem;
}

/**** Selects ****/
.select-group {
	display: flex;
	justify-content: center;
	/* align-items: center; */
	gap: 1rem;
	padding: 0 1rem;
	/* reduce large horizontal padding so it can shrink inside a card */
	border-right: 1px solid lightgray;
	border-left: 1px solid lightgray;
	box-sizing: border-box;
	flex-wrap: wrap;
	min-width: 0;
	/* important for children to be able to shrink inside a flex container */
	max-width: 100%;
}

/* Smaller screens: reduce gaps/padding and allow wrapping */
@media (max-width: 1800px) {
	.select-group {
		/* justify-content: flex-start; */
		padding: 0 0.5rem;
		/* gap: 0; */
	}
}

/* Very small screens: stack vertically, remove side borders to save space */
@media (max-width: 480px) {
	.select-group {
		flex-direction: column;
		align-items: stretch;
		padding: 0.5rem;
		gap: 0.5rem;
		border-right: none;
		border-left: none;
		width: 100%;
	}
}

/******* style for checkboxes ****************/
.chbx-container {
	display: block;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	font-size: 18px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	width: fit-content;
}

.chbx-container p {
	padding-top: 4px;
}

.chbx-container input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #eee;
	border-radius: 5px;
}

.chbx-container:hover input~.checkmark {
	background-color: #ccc;
}

.chbx-container input:checked~.checkmark {
	background-color: var(--light-blue);
}

.checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

.chbx-container input:checked~.checkmark:after {
	display: block;
}

.chbx-container .checkmark:after {
	left: 9px;
	top: 5px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.chbx-item {
	/* display: flex; */
	/* flex-direction: column; */
	/* justify-content: center; */
	margin: 15px;
	width: calc(100% - 30px);
	padding: 0px;
}

/****** checkbox in table **********/
.chbx-container-table {
	display: block;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	font-size: 14px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	/* width: fit-content; */
	width: 20px;
}

.chbx-container-table p {
	padding-top: 4px;
}

.chbx-container-table input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.chbx-container-table .checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #eee;
	border-radius: 5px;
	border-color: var(--light-blue);
	border-width: 1px;
	border-style: solid;
}

.chbx-container-table:hover input~.checkmark {
	background-color: #ccc;
}

.chbx-container-table input:checked~.checkmark {
	background-color: var(--light-blue);
}

.chbx-container-table input:checked~.checkmark:after {
	display: block;
}

.chbx-container-table .checkmark:after {
	left: 9px;
	top: 5px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/****** end checkbox in table **********/

/*****************  end chbx styling ****************/

/* Button */

.Button__holder {
	display: flex;

	justify-content: space-between;

	margin-top: 20px;
}

.Button {
	display: inline-block;

	padding: 5px 15px;

	background-color: #ffe479;

	color: #000;

	border: 0;

	cursor: pointer;

	font-size: 13px;

	margin-top: 20px;

	border-radius: 10px;
}

.Button--success {
	background-color: #005ea8;
	color: #fff;
}

.Button--danger {
	background-color: #921b1b;
	color: #fff;
}

/***********************************************************************************/
/***********************************************************************************/
/* Login */

.outer-wrapper-login-form {
	background-image: linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.25)),
		url(../images/whc_backgr_051.jpg);
	background-size: cover;
	background-position: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
	background-color: #ffffff;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}

.Login__holder {
	width: 100%;
	height: 100%;
	display: flex;
	margin: 0;
}

.Login__box {
	display: flex;
	margin: auto;
	flex-direction: column;
	flex-direction: column;
	width: 400px;
	background-color: #ffffff;
	margin: auto;
	border: 1px solid #d4d4d4;
	border-radius: 10px;
	padding: 3rem 1rem;
}

.Login {
	width: 100%;
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 0 1.563rem;
}

.login-whc-logo-wrapper {
	padding: 2rem 0 0 0;
	width: 100%;
	display: flex;
	justify-content: center;
}

.login-whc-logo-wrapper img {
	/* width: 219px; */
	width: 64%;
	height: auto;
}

.input-password {
	position: relative;
}

.input-password .password-toggle-icon {
	position: absolute;
	top: 50%;
	right: 2%;
	transform: translate(0%, -50%);
	cursor: pointer;
}

.form-login-footer {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	padding: 1rem;
}

.Login__Header {
	/* height: 100px; */
	height: 100%;
	width: 100%;

	margin-bottom: 20px;

	background-position: center;

	background-size: contain;

	background-repeat: no-repeat;
}

.Login__Header img {
	max-width: 100%;
}

.Login__footer {
	text-align: center;

	margin-top: 10px;

	font-size: 14px;
}

.Login__h1 {
	/* color: var(--blue); */
	color: var(--black);

	text-align: center;
}

.Login .Login__button {
	width: 100%;
	display: flex !important;
	justify-content: center;
	border-radius: 8px !important;
	padding: 1rem 2rem !important;
}

.btn-login-text {
	font-family: "Inter";
	font-weight: 700;
	font-size: 20px;
}

/* Modal */

/* new */
.modal {
	max-width: 100%;
	width: auto;
	padding: 5rem;
	height: auto;
	min-height: 20rem;
	min-width: 30rem;
	background-color: var(--white);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 0.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	box-shadow: 0 7px 14px rgba(48, 48, 48, 0.1), 0 5px 5px rgba(90, 90, 90, 0.1);
	margin: 10rem 0;
}

.modal-layer {
	display: none;
	position: fixed;
	overflow-y: scroll;
	overflow-x: hidden;
	top: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.747);
	z-index: 9999;
}

.spinner {
	display: none;
	margin: 100px auto;
	width: 8rem;
	height: 8rem;
	position: relative;
	text-align: center;
	-webkit-animation: sk-rotate 2s infinite linear;
	animation: sk-rotate 2s infinite linear;
}

.dot1,
.dot2 {
	width: 60%;
	height: 60%;
	display: inline-block;
	position: absolute;
	top: 0;
	/* background-color: var(--darkPink); */
	background-image: linear-gradient(to bottom right, var(--blue), var(--light-blue));
	border-radius: 100%;
	-webkit-animation: sk-bounce 2s infinite ease-in-out;
	animation: sk-bounce 2s infinite ease-in-out;
}

.dot2 {
	top: auto;
	bottom: 0;
	-webkit-animation-delay: -1s;
	animation-delay: -1s;
}

.spinner-small.show {
	display: block;
	margin: 4px auto;
	width: 1.4rem;
	height: 1.4rem;
	position: relative;
	text-align: center;
	-webkit-animation: sk-rotate 2s infinite linear;
	animation: sk-rotate 2s infinite linear;
}

@-webkit-keyframes sk-rotate {
	100% {
		-webkit-transform: rotate(360deg);
	}
}

@keyframes sk-rotate {
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@-webkit-keyframes sk-bounce {

	0%,
	100% {
		-webkit-transform: scale(0);
	}

	50% {
		-webkit-transform: scale(1);
	}
}

@keyframes sk-bounce {

	0%,
	100% {
		-webkit-transform: scale(0);
		transform: scale(0);
	}

	50% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}

/* end new */

.Modal__holder {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	display: none;
	z-index: 10000;
	justify-content: center;
	align-items: center;
}

.Modal__headline {
	font-size: 26px;
	line-height: 34px;
	margin-bottom: 10px;
}

.Modal {
	max-width: 700px;
	min-height: 100px;
	background: #ffffff;
	border: 1px solid #d4d4d4;
	z-index: 100;
	padding: 25px;
	border-radius: 10px;
}

.Modal__buttons {
	display: flex;
}

.Modal__buttons .btn {
	margin-right: 10px;
}

.Modal ul {
	list-style-type: none;
}

/* Loader */

.Loader {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10000;
}

.Fader {
	width: 100%;
	height: 100%;
	background: black;
	position: fixed;
	top: 0;
	left: 0;
	opacity: 0.5;
}

.Loader__Holder {
	width: 100%;
	height: 100%;
	display: flex;
	position: fixed;
	top: 0;
	left: 0;
}

.Loader__spinner {
	width: 400px;
	height: 200px;
	background: #ffffff;
	border: 1px solid #ededed;
	margin: auto;
	display: flex;
}

/* Header */

.Header {
	width: 100%;
	height: 74px;
	display: flex;
	flex: 0 0 auto;
	justify-content: flex-end;
	position: fixed;
	top: 0;
	left: 0;
	border-bottom: 3px solid var(--light-blue);
}

/* Usermenu */

.Usermenu__holder {
	height: 100%;
	display: flex;
	align-items: center;
	padding: 0 20px;
	color: #ffffff;
	cursor: pointer;
}

.Usermenu__icon {
	width: 40px;
	height: 40px;
	display: flex;
}

.Usermenu__icon i {
	margin: auto;
}

.Usermenu__button {
	margin-left: 10px;
}

.Usermenu {
	display: none;
	width: 320px;
	background-color: #ffffff;
	position: absolute;
	right: 0;
	top: 72px;
	padding: 25px 0;
	border: 1px solid #ededed;
	z-index: 100;
}

.Usermenu li {
	color: #000;
	background: #fff;
	margin-top: 10px;
	text-align: center;
	list-style-type: none;
}

.Usermenu li a {
	padding: 10px 10px;
	display: block;
	color: #000;
	text-decoration: none;
	transition: all 0.4s ease;
}

.Usermenu li a:hover {
	background-color: #005ea8;
	color: #ffffff;
	transition: all 0.4s ease;
}

.Usermenu li a.active {
	background-color: var(--light-blue);
	color: #ffffff;
}

/* Table */

.Table {
	border-collapse: collapse;
	width: 100%;
}

.Table tbody td,
.Table tbody th {
	padding: 8px;
}

.Table tbody tr:nth-child(even) {
	background-color: #f2f2f2;
}

.Table tbody tr:hover {
	background-color: #ddd;
}

.Table tbody td.folder a {
	font-weight: bold;
}

.Table tbody a:hover {
	text-decoration: none;
	opacity: 0.7;
}

.Table tbody td a {
	display: flex;
	align-items: center;
	width: 100%;
}

.Table tbody td a .icon {
	margin-right: 10px;
	justify-content: center;
	display: flex;
	width: 60px;
}

.Table tbody td a .icon img {
	border-radius: 3px;
	width: 48px;
}

.Table tbody tr {
	vertical-align: middle;
}

.Table tbody,
.Table tbody img {
	vertical-align: middle;
}

.User__confirm-delete,
.User__edit {
	cursor: pointer;
}

#User__change-password-holder {
	display: none;
}

/* Messages */

.Message__error {
	background-color: #f65d5d;
	color: #fff;
	/*text-align: center; */
	padding: 25px;
	margin: 40px 0;
	font-size: 16px;
}

.Message__success {
	background-color: #31c864;
	color: #fff;
	/*text-align: center; */
	font-weight: bold;
	padding: 25px;
	margin: 40px 0;
	font-size: 16px;
}

/********************************************************************/
/**** ALERTS form errors / success *******/

.alert {
	border: 1px solid;
	padding: 0.5rem;
	width: fit-content;
	padding: 1.5rem;
	margin-bottom: 2rem;
}

.alert-success {
	border-color: #c8ffce;
}

.alert-error {
	border-color: var(--alert-red);
}

.alert-error ul {
	list-style: none;
}

/*********************************************/

/* DASHBOARD & BOXES */

.dashboard {
	display: flex;
	width: 100%;
	gap: 2rem;
}

.primary-box {
	flex: 1 1 328px;
	/* responsive but min 250px */
	max-width: 328px;
}

.boxes {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(3, 250px);
	gap: 2rem;
	flex: 1;
}

.btn-big,
a.btn-big:link,
a.btn-big:visited {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 250px;
	height: 165px;
	flex-direction: column;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 0.4rem;
	font-size: 18px;
	text-align: center;
	color: var(--light-black);
	transition: transform 0.2s, box-shadow 0.2s;
	gap: 1rem;
	padding: 20px;
	background-color: #fff;
	-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	-ms-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	-o-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	position: relative;
}

.btn-big i.la,
.btn-big i.las {
	font-size: 35px;

	padding-bottom: 10px;
}

.btn-big:hover,
a.btn-big:hover {
	background-color: var(--hoverColor);
	color: #000;
	text-decoration: none;
	transform: translateY(-2px);
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

/* END DASHBOARD & BOXES */

.btn,
a.btn:link,
a.btn:visited {
	background-color: var(--light-blue);
	width: max-content;
	padding: 0.7rem 1.271rem;
	color: #ffffff;
	border-radius: 0.7rem;
	cursor: pointer;
	display: inline-block;
	margin: 0.3222rem 0;
	position: relative;
	border: 0;
	line-height: 20px;
	-webkit-appearance: none;
	appearance: none;
	transition: opacity 0.2s ease, visibility 0.2s ease;
	height: fit-content;
}

.btn-hidden {
	opacity: 0;
	visibility: hidden;
	display: none !important;
}

.btn-small {
	padding: 5px 10px !important;
}

.btn-medium {
	padding: 0.5rem 1.271rem !important;
}

.btn-disabled {
	cursor: not-allowed;
	opacity: 0.2 !important;
	background-color: #666 !important;
}

.btn-disabled:hover {
	cursor: not-allowed !important;
	opacity: 0.2 !important;
	background-color: #666 !important;
}

.btn-delete,
.js-delete,
.btn-remove {
	/* background-color: #cc0000 !important;
	color: white; */
	background-color: #ffffff !important;
	border: 1px solid #cc0000 !important;
	color: #000000 !important;
}

#btn-delete-protocol {
	width: unset !important;
}

.js-edit {
	border: 1px solid #404aff !important;
}

.btn-delete:hover,
.js-delete:hover,
.btn-remove:hover {
	background-color: #f53030 !important;
	opacity: 1 !important;
	color: var(--white);
}

.btn-cancel {
	background-color: var(--black);
	color: var(--white);
}

.btn-cancel:hover {
	background-color: #222222;
}

.btn-edit {
	background-color: var(--light-blue) !important;
	color: white;
}

.btn-edit:hover {
	background-color: var(--blue) !important;
}

.btn-tiny {
	padding: 2px 8px !important;
	font-size: 10px;
}

.btn-blue,
a.btn-blue:link,
a.btn-blue:visited {
	background-color: var(--blue);

	color: #fff;
}

.btn-blue:hover,
a.btn-blue:link:hover,
a.btn-blue:visited:hover {
	color: #fff;
}

.btn-blueGreen,
a.btn-blueGreen:link,
a.btn-blueGreen:visited {
	background-color: var(--blueGreen);
	color: #fff;
}

.btn-blueGreen:hover,
a.btn-blueGreen:link:hover,
a.btn-blueGreen:visited:hover {
	color: #fff;
}

.btn-black,
a.btn-black:link,
a.btn-black:visited {
	background-color: var(--black);
	color: #fff;
}

.btn-black:hover,
a.btn-black:link:hover,
a.btn-black:visited:hover {
	color: #fff;
}

.btn-lightBlack,
a.btn-lightBlack:link,
a.btn-lightBlack:visited {
	background-color: var(--lighter-black);
	color: #fff;
}

.btn-lightBlack:hover,
a.btn-lightBlack:link:hover,
a.btn-lightBlack:visited:hover {
	color: #fff;
}

.btn-gray,
a.btn-gray:link,
a.btn-gray:visited {
	background: var(--gray);
	color: white;
	cursor: no-drop;
}

.btn-gray-back,
a.btn-gray-back:link,
a.btn-gray-back:visited {
	background: #ededed;
	color: #000;
}

.btn-gray {
	cursor: pointer !important;
}

.btn-red,
a.btn-red:link,
a.btn-red:visited {
	background: #f65d5d;
	color: #fff;
	cursor: pointer;
	text-shadow: none;
	font-weight: bold;
}

a.btn-gray-enabled {
	background-color: #ededed !important;
	color: #000;
}

.btn.f-left span.las,
.btn.f-left i.las {
	margin: 0 10px 0 0;
}

.btn:hover,
a.btn:hover {
	text-decoration: none;
	opacity: 0.7;
}

.btn-actions {
	width: 100%;
	/* display: flex; */
}

.btn-group {
	display: flex;
	gap: 0.5rem;
}

.icon-text-wrapper {
	display: flex;
	align-items: center;
}

/* .button-bgcolor-green {
	border: none;
	background-image: none !important;
	background-color: #31c864 !important;
	color: var(--white);
	border-radius: 10px;
	margin-top: 0;
	padding: 10px 30px;
	cursor: pointer;
	transition: all 0.4s ease;
}

.button-bgcolor-yellow {
	background-image: none !important;
	background-color: #ffe479 !important;
	border-radius: 10px;
	padding: 10px 30px;
	cursor: pointer;
	transition: all 0.4s ease;
}

.button-bgcolor-orange {
	background-image: none !important;
	background-color: #ffb039 !important;
	border-radius: 10px;
	padding: 10px 30px;
	cursor: pointer;
	transition: all 0.4s ease;
}

.button-bgcolor-gray {
	background-image: none !important;
	background-color: #686868 !important;
	border-radius: 10px;
	padding: 10px 30px;
	cursor: pointer;
	transition: all 0.4s ease;
} */

.alert-circle {
	position: absolute;
	top: 10px;
	right: 10px;
	border-radius: 50%;
	background-color: #f65d5d;
	color: #fff;
	height: 30px;
	width: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.no-margin {
	margin: 0;
}

.no-padding {
	padding: 0;
}

iframe {
	width: 100%;

	margin: 0;
}

ul.tree,
ul.tree ul {
	list-style-type: none !important;
}

ul.tree>li {
	font-weight: bold;
}

ul.tree>li>ul {
	font-weight: normal;
}

/* Klasser */

.clear {
	text-indent: -4000px;

	line-height: 0;

	display: block;

	font-size: 0;

	clear: both;

	height: 0;
}

.round {
	-webkit-border-top-right-radius: 15px;

	-moz-border-radius-topright: 15px;

	-ms-border-top-right-radius: 15px;

	-o-border-top-right-radius: 15px;

	border-top-right-radius: 15px;
}

.shadow {
	-webkit-box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.5);

	-moz-box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.5);

	-ms-box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.5);

	-o-box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.5);

	box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.5);
}

.loading {
	width: 100%;

	text-align: center;
}

.hide {
	display: none;
}

.center {
	text-align: center;
}

.left {
	text-align: left;
}

.right {
	text-align: right;
}

.fa-icon-medium {
	font-size: 30px;
}

.fa-icon-large {
	font-size: 80px;
}

.icon {
	display: inline-block;
	color: var(--black);
	width: 60px;
	height: 60px;
}

.icon svg {
	fill: var(--black);
	color: var(--black);
	width: 100%;
	height: 100%;
}

.small {
	font-size: 12px;
}

.hint {
	color: #666;
}

.active {
	color: var(--blue);
	font-weight: bold;
}

.user-active,
.company-active,
.user-inactive,
.company-inactive {
	display: flex;
	justify-content: center;
}

.user-active,
.company-active {
	background: var(--light-green);
	color: var(--green);
}

.user-inactive,
.company-inactive {
	display: flex;
	background-color: var(--light-red);
	color: var(--red);
}

header {
	height: 70px;
	display: flex;
	justify-content: space-between;
	padding: 2.5rem 2rem;
	background-color: var(--white);
	text-align: center;
	border-bottom: 2px solid var(--light-blue);
	margin-bottom: 2rem;
}

.header-login {
	position: fixed;
}

header .profile-menu-action {
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 20px;
	color: var(--black);
	cursor: pointer;
	position: relative;
	gap: 0.6rem;
}

header .profile-menu-action:hover {
	text-decoration: none;

	opacity: 0.7;
}

header .profile-menu-action div {
	display: flex;
}

header .profile-menu-action .user-image {
	padding-right: 10px;
}

header .profile-menu {
	display: none;
}

section {
	display: flex;
	flex-direction: column;
	flex: 1 0 auto;
	margin: 0;
	padding: 0.5rem 2.2rem 8.5rem 2.2rem;
	position: relative;
	/* needed for ::before spacing context */
}

section .content {
	max-width: 1600px;
	margin: 0 auto;
	padding: 20px;
	background-color: #fff;
	-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	-ms-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	-o-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
}

.w100 {
	width: 100%;
	margin: 0 0 2% 0;
	display: flex;
	justify-content: space-between;
}

.w50 {
	width: 48%;
	margin: 0 0 2% 2%;
}

.w33 {
	width: 31.3%;
	margin: 0;
}

.w25 {
	width: 23%;
	margin: 0 0 2% 2%;
}

.w100-nopm {
	width: 100%;
	margin: 0;
	padding: 0;
}

.w50-nopm {
	width: 50%;
	margin: 0;
	padding: 0;
}

.w50-keep-nopm {
	width: 50%;
	margin: 0;
	padding: 0;
}

.w33-nopm {
	width: 33.33%;
	margin: 0;
	padding: 0;
}

.w25-nopm {
	width: 25%;
	margin: 0;
	padding: 0;
}

.mobile {
	display: none;
}

.desktop {
	display: inline-block;
}

td.desktop,
th.desktop {
	display: table-cell;
}

/* Desktop - show text, hide icons */
.contact-text {
	display: inline;
}

.contact-icon {
	display: none;
}

.flex-column {
	flex-direction: column;
}

.flex-row {
	flex-direction: row;
}

.space-between {
	justify-content: space-between;
}

.justify-left {
	justify-content: flex-start;
}

.text-center {
	text-align: center;
}

.display-hidden {
	display: none !important;
}

.colorbox-table {
	width: 100%;

	text-align: left;

	margin-bottom: 60px;
}

.colorbox-table tbody tr:nth-child(odd) {
	background-color: #f7f7f7;
}

.colorbox-table td {
	vertical-align: middle;
}

.colorbox-table tbody tr:hover {
	background-color: #ececec;
}

#update_user_errors,
#add_user_errors {
	padding: 40px 20px;

	margin: 20px 0;

	list-style-type: none;

	background-color: #f65d5d;

	color: #ffffff;
}

.not-valid {
	color: #f65d5d;
}

.to-remedy {
	background-color: var(--light-red) !important;
}

.to-remedy:hover {
	background-color: #e48c8c !important;
}

.to-add {
	flex-direction: row !important;
	gap: 1rem;
	width: 328px !important;
	max-width: 328px !important;
	background-color: var(--blue) !important;
	color: white !important;
	flex-direction: row !important;
	background-color: var(--blue) !important;
	color: white !important;
}

.to-add:hover {
	background-color: #3385ff !important;
	/* a tad lighter than var(--blue) */
}

.to-add .icon svg {
	color: white !important;
	fill: var(--white) !important;
}

.status-box {
	width: 18px;
	height: 18px;
	margin-right: 10px;
	top: 3px;
	position: relative;
	display: inline-block;
}

.status-box {
	width: 18px;
	height: 18px;
	margin-right: 10px;
	top: 3px;
	position: relative;
}

.status-box.good {
	background-color: #3b9617;
}

.status-box.bad {
	background: #cc0000;
}

.status-green {
	background: #d4edda !important;
}

.status-red {
	background: #f8d7da !important;
}

.status-yellow {
	background: #fff3cd !important;
}

.status-blue {
	background: #cce5ff !important;
}

.status-grey {
	background: #e2e3e5 !important;
}

a.app-menu:link,
a.app-menu:visited {
	margin: 15px 0 0 0;
	color: #fff;
}

.delete-confirm {
	width: 300px;
	height: 200px;
	padding: 20px;
	text-align: center;
	z-index: 999999;
	background-color: rgb(255, 255, 255);
	color: #000;
	display: none;
	border-radius: 5px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	box-shadow: 0 7px 14px rgba(171, 171, 171, 0.25), 0 5px 5px rgba(171, 171, 171, 0.22);
	border: 2px solid rgb(233, 233, 233);
	flex-flow: column;
	justify-content: center;
}

/* Loader */

.Loader {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10000;
}

.Fader {
	width: 100%;
	height: 100%;
	background: black;
	position: fixed;
	top: 0;
	left: 0;
	opacity: 0.5;
}

.Loader__Holder {
	width: 100%;
	height: 100%;
	display: flex;
	position: fixed;
	top: 0;
	left: 0;
}

.Loader__spinner {
	width: 400px;
	height: 200px;
	background: #ffffff;
	border: 1px solid #ededed;
	margin: auto;
	display: flex;
}

/* Usermenu */

.Usermenu__holder {
	height: 100%;
	display: flex;
	align-items: center;
	padding: 0 20px;
	color: #ffffff;
	cursor: pointer;
}

.Usermenu__icon {
	width: 40px;
	height: 40px;
	display: flex;
}

.Usermenu__icon i {
	margin: auto;
}

/* user-info-wrapper */
.user-info-wrapper {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.Usermenu__button {
	margin-left: 10px;
}

.Usermenu {
	display: none;
	width: 320px;
	background-color: #ffffff;
	position: absolute;
	right: 5px;
	top: 83px;
	padding: 1.2rem 0;
	border: 1px solid #ededed;
	z-index: 100;
}

.Usermenu li {
	color: #000;
	background: #fff;
	text-align: center;
	list-style-type: none;
}

.Usermenu li a {
	width: auto;
	padding: 10px 10px;
	display: block;
	color: #000;
	text-decoration: none;
	transition: all 0.4s ease;
}

.Usermenu li a:hover {
	background-color: var(--light-blue);
	color: #ffffff;
	transition: all 0.4s ease;
}

.Usermenu li a.active {
	background-color: var(--blue);
	color: #ffffff;
}

.Usermenu__name {
	font-weight: bold;
}

.Usermenu__name,
.Usermenu__company_name {
	font-size: 17px;
	color: var(--black);
}

/*

 * Users

 */

.list-header {
	display: flex;
	flex-direction: column;
	margin-bottom: 1rem;
}

.list-footer-wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 1rem;
}

/* Pagination */
.pagination {
	display: flex;
	gap: 8px;
	align-items: center;
	padding: 1.2rem 0;
}

.pagination-numbers {
	text-align: right;
	font-size: 0.9rem;
	color: #666;
	margin-top: 0.5rem;
}

.list-header__form {
	display: flex;
	gap: 0.8rem;
	align-items: baseline;
	margin-bottom: 1rem;
	flex-wrap: wrap;
}

.list-header__actions {
	padding: 0 0 1rem 0;
}

.list-header__meta {
	margin-left: auto;
}

/*

 * CREATE PROTOCOL

 */

.form-row {
	display: flex;
	flex-direction: column;
	padding: 0.3775rem 0;
}

.detail .form-row {
	gap: 0.5rem;
	padding: 0 0 1rem 0;
}

.form-radio-group {
	display: flex;
	justify-content: flex-start;
	gap: 1.5rem;
}

.form-radio-group>label>input[type="radio"] {
	min-width: unset;
}

.prefill-template-info {
	background-color: aliceblue;
	width: 100%;
	display: flex;
	align-items: center;
	gap: 0.7rem;
}

.grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 1rem;
	margin-top: 1rem;
}

.grid--two-columns {
	grid-template-columns: repeat(2, 1fr);
}

/* Badges */
.badge {
	display: inline-block;
	align-items: center;
	padding: 4px 8px;
	border-radius: 9999px;
	font-size: 12px;
	line-height: 1;
	vertical-align: middle;
	border: 1px solid transparent;
	height: fit-content;
	justify-content: center;
}

.badge-main {
	width: unset !important;
	position: absolute;
	top: 5px;
	right: 10px;
	font-size: unset;
}

.badge--large {
	width: 100%;
	font-size: 16px;
	padding: 0.777rem 3rem;
	text-align: center;
}

.badge--pill {
	padding: 2px 8px;
}

.badge--orange {
	background: #fff4e5;
	border: 1px solid #ffcc9a;
	color: #b35400;
}

.badge--red {
	background: #ffe5e5;
	border: 1px solid #ff9a9a;
	color: #b10000;
}

.badge--blue {
	background: #e5f0ff;
	border: 1px solid #9abfff;
	color: #0047b3;
}

.badge--green {
	background: #e8fbe8;
	border: 1px solid #9dde9d;
	color: #117311;
}

.badge--grey {
	background: #f1f3f5;
	border: 1px solid #d0d5db;
	color: #3f3f46;
}

.badge-text-desktop {
	display: inline;
}

.badge-text-mobile {
	display: none;
	font-size: 1rem;
	line-height: 1;
}

/* Mobile version - Only numbers */
@media (max-width: 768px) {
	.badge-text-desktop {
		display: none;
	}

	.badge-text-mobile {
		font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
		display: inline;
	}
}

@media (max-width: 480px) {
	.badge {
		font-size: 0.75em;
		min-width: 2rem;
		text-align: center;
	}

	.badge--large {
		padding: 1rem 0.5rem;
	}
}

.box-search-holder {
	margin-top: 2rem;
}

input.search-input {
	margin: 0;
}

.search-holder {
	width: 100%;
}

.search-holder form {
	display: flex;
}

.search-holder form input,
.search-holder form .btn {
	margin: 0 0 0 0;
}

.search-holder form .btn {
	margin-left: 15px;
}

.search-and-add-container {
	display: flex;
	flex-direction: column;
	margin: 0 0 1rem 0;
}

.action_show_hide_element {
	margin: 1rem 0;
}

.element_select_company_from_search {
	margin-bottom: 1rem;
}

.action_add_company_to_relation {
	margin: 0 0 2rem 0;
}

.autocomplete-list {
	display: flex;
	flex-direction: column;
	/* margin: 1rem 0; */
}

.autocomplete-items {
	position: absolute;
	z-index: 10;
	background: #fff;
	border: 1px solid #ddd;
	width: 100%;
	max-height: 240px;
	overflow-y: auto;
	border-radius: 4px;
	margin-top: 0.25rem;
}

.autocomplete-item {
	padding: 0.5rem 0.75rem;
	cursor: pointer;
}

.autocomplete-item:hover {
	background: #f5f5f5;
}

.box25 {
	width: 20%;

	display: flex;

	align-items: flex-start;

	flex-direction: column;

	justify-content: center;
}

/* Add customers handling */

#add-customer-button {
	display: inline;
}

#add-customer-button.hidden {
	display: none;
}

#add-customer-form {
	display: none;
}

#add-customer-form.open {
	display: block;
}

/* ANIMATIONS on adding,updating and removing posts */

#jm-added-div {
	/* height: auto; */
	height: 100px;
	width: 100%;
	position: fixed;
	overflow: hidden;
	bottom: -100px;
	z-index: 9999;
	opacity: 0;

	background-color: #31c864;
}

#jm-added-div p {
	text-align: center;

	line-height: 20px;

	font-weight: bold;

	font-size: 120%;

	color: #fafafa;
}

#added-div,
#updated-div,
#deleted-div {
	height: 50px;

	width: 100%;

	overflow: hidden;

	position: fixed;

	bottom: 0;

	z-index: 9999;

	opacity: 0;
}

#added-div p,
#updated-div p,
#deleted-div p {
	text-align: center;

	line-height: 50px;

	font-weight: bold;

	font-size: 120%;

	color: #fafafa;
}

#updated-div p {
	color: #000;
}

#added-div {
	background-color: #31c864;
}

#updated-div {
	background-color: #ffe479;
}

#deleted-div {
	background-color: #f65d5d;
}

.on {
	animation-name: popUp;

	animation-duration: 4s;

	animation-timing-function: linear;

	animation-fill-mode: forwards;
}

.on2 {
	animation-name: popUp2;

	animation-duration: 5s;

	animation-timing-function: linear;

	animation-fill-mode: forwards;
}

/* ORDER LISTNING */

.order-row-wrapper:nth-of-type(odd) {
	background-color: rgb(246, 246, 246);
}

/* SEARCH BOX RESULTS */

.search-box-ajax .result a {
	display: block;

	text-align: center;
}

.red,
a.red {
	color: #f65d5d !important;
}

.green {
	color: #4caf50 !important;
}

.gray {
	color: #4e4e4e !important;
}

.btn-green {
	background-color: #31c864 !important;
	color: #fff !important;
}

.blue,
a.blue {
	color: var(--blue) !important;
}

.yellow {
	color: #ffe479 !important;
}

.pay-button,
.unpay-button {
	color: var(--blue);

	cursor: pointer;
}

.red-background {
	/* background-color: rgb(255, 188, 188)!important; */

	border-left: 10px solid #f65d5d;

	padding: 0 5px;
}

.orange-background {
	/* background-color: rgb(255, 238, 205)!important;*/

	border-left: 10px solid rgb(250, 238, 76);

	padding: 0 5px;
}

.bold {
	font-weight: bold;
}

.bad-status {
	color: #f65d5d !important;
	font-weight: bold;
}

.good-status {
	font-weight: bold;
	color: #31c864 !important;
}

/* ORDER SETTING */

.order-settings {
	margin: 20px 0;
}

.order-settings a,
.order-settings a.btn {
	display: block;

	width: fit-content;
}

.order-settings p,
.order-settings a,
.order-settings a.btn {
	margin: 10px 0;
}

/* Category boxes */

.category-box {
	display: block;

	width: 1000px;

	background-color: #005ea8;

	color: #fff !important;

	padding: 50px 25px;

	text-align: center;

	transition: all 0.4s ease;
}

.category-box:hover {
	background-color: var(--blue);

	text-decoration: none !important;
}

.category-item {
	margin-bottom: 0.6rem;
}

.article-box-wrapper {
	display: flex;

	flex-wrap: wrap;

	width: 1000px;
}

/* Article boxes */

.article-box {
	display: block;

	width: 48%;

	width: calc(50% - 15px);

	margin: 15px 15px 15px 0;

	background-color: #c4168a;

	color: #fff !important;

	padding: 50px 25px;

	text-align: center;

	transition: all 0.4s ease;
}

.article-box:hover {
	background-color: #d140b2;

	text-decoration: none !important;
}

/* Article information boxes */

.article-information-box {
	display: block;

	width: 1000px;

	color: #fff;

	display: flex;
}

.article-information-box .box-image-container {
	background-color: #fff;

	background-position: center;

	background-size: contain;

	background-repeat: no-repeat;

	width: 50%;

	padding-top: 50%;
}

.article-information-box .box-content {
	color: #000 !important;

	width: 50%;

	padding: 25px;

	display: flex;

	align-items: center;

	justify-content: center;

	flex-wrap: wrap;

	flex-flow: column;
}

.stock-error {
	color: #f65d5d;
}

.article-box h2,
.category-box h2 {
	color: #fff !important;
}

input:disabled {
	border: none;

	background: #fff;

	background-color: #fff;
}

/* END OF ORDER LISTNING */

/* jm default style for info modal */
.more-info-modal {
	display: flex;
	flex-wrap: wrap;
	/* padding: 100px; */
	padding: 40px;
}

.more-info-modal .box-25,
.more-info-modal .box-33,
.more-info-modal .box-50,
.more-info-modal .box-100 {
	background-color: #f3f3f3;
}

/* box 33 standard  */
.box-20 {
	/* border: 1px solid red; */
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 15px;
	width: calc(20% - 30px);
	padding: 10px;
}

.box-25 {
	/* border: 1px solid red; */
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 15px;
	width: calc(25% - 30px);
	padding: 10px;
}

.box-33 {
	/* border: 1px solid red; */
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 15px;
	width: calc(33% - 30px);
	padding: 10px;
}

.box-33-mr1p0 {
	width: calc(33% - 10px);
	margin-right: 1rem;
}

.box-50 {
	/* border: 1px solid red; */
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 15px;
	width: calc(50% - 30px);
	padding: 10px;
}

.box-75 {
	border: 1px solid red;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 15px;
	width: calc(75% - 30px);
	padding: 10px;
}

.box-100 {
	/* border: 1px solid red; */
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 15px;
	width: calc(100% - 30px);
	padding: 10px;
}

/* DETAILS (Cards-section) */

.detail-header-and-controls-wrapper {
	display: flex;
	margin-bottom: 0.5rem;
	gap: 4rem;
}

.actions-wrapper {
	display: flex;
	align-items: center;
	margin: 1rem 0 1rem 0;
	max-width: 70%;
	margin-bottom: 8rem;
}

@media (max-width: 1950px) {
	.actions-wrapper {
		max-width: 70%;
		flex-wrap: wrap;
		margin-bottom: 6rem;
	}
}

@media (max-width: 1400px) {
	.actions-wrapper {
		max-width: 100%;
		flex-wrap: wrap;
		margin-bottom: 4rem;
	}
}

.actions-list {
	width: 100%;
	display: flex;
}

.protocol-info {
	display: flex;
	flex-direction: column;
}

.protocol-header {
	width: 100%;
}

.protocol-status {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.protocol-status__text {
	display: flex;
	font-weight: bold;
	color: var(--blue);
	gap: 0.8rem;
	align-items: center;
	padding-top: 0.3rem;
}

.protocol-status__done-info {
	display: flex;
	font-size: 0.9rem;
	color: #3d3d3d;
	gap: 0.5rem;
	align-items: center;
}

/* No deviations section */
.protocol-completion {
	padding: 0.5rem;
	margin: 0 0 1rem 0;
	background: #f8f9fa;
	border-radius: 8px;
	border-left: 4px solid #a2a2a2;
}

.no-deviations-section {
	transition: opacity 0.2s ease;
}

.no-deviations-section.has-actions {
	opacity: 0.5;
}

.no-deviations-section.has-actions .checkbox-text {
	color: #999;
}

.no-deviations-section.has-actions .checkbox-description::after {
	content: " (Inaktiverad - protokollet har åtgärder)";
	color: #999;
	font-style: italic;
}

/* Protocol lock notification */
.lock-notification {
	background: #fff3cd;
	border: 1px solid #ffc107;
	border-radius: 4px;
	padding: 12px 16px;
	margin-bottom: 16px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.lock-notification__content {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	flex-direction: column;
}

.lock-notification i {
	color: #11100f;
	font-size: 18px;
}

.lock-notification span {
	color: #4d4d4d;
	flex: 1;
}

/* Locked protocol styling */
.protocol-locked .card--row {
	opacity: 0.7;
	pointer-events: none;
}

.protocol-locked .js-status-select,
.protocol-locked .js-resp-select {
	background-color: #f8f9fa !important;
	cursor: not-allowed !important;
	opacity: 0.6;
}

.protocol-locked .comment-section textarea {
	background-color: #f8f9fa !important;
	cursor: not-allowed;
	opacity: 0.7;
}

.protocol-locked .no-deviations-section {
	opacity: 0.7;
	pointer-events: none;
}

.protocol-locked .btn-actions {
	display: none !important;
}

/* List lock icons */

.lock-wrapper {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
}

.text-small {
	font-size: 10px;
	color: #666;
}

.la-lock {
	font-size: 16px;
}

.la-lock-open {
	font-size: 16px;
	color: #4e4e4e;
}

/* Lock button styling */
.btn-warning {
	background-color: #ffc107;
	border-color: #ffc107;
	color: #212529;
}

.btn-warning:hover {
	background-color: #e0a800;
	border-color: #d39e00;
	color: #212529;
}

.checkbox-label {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.checkbox-input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.checkbox-custom {
	width: 20px;
	height: 20px;
	border: 2px solid #545454;
	border-radius: 4px;
	position: relative;
	background: white;
	transition: all 0.2s ease;
	flex-shrink: 0;
	margin-top: 2px;
}

.checkbox-input:checked+.checkbox-custom {
	border-color: #28a745;
}

.checkbox-input:checked+.checkbox-custom::after {
	content: "✓";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #3ccf44;
	font-weight: bold;
	font-size: 14px;
}

/* När checkboxen ligger någonstans inuti .protocol-completion (modern browser med :has) */
.protocol-completion:has(.checkbox-input:checked) {
	border-color: #28a745;
}

/* Behåll tidigare varianter ifall strukturen skiljer sig */
.checkbox-input:checked~.protocol-completion {
	border-color: #28a745;
}

.checkbox-label:has(.checkbox-input:checked) .protocol-completion {
	border-color: #28a745;
}

/* Fallback: använd klass som sätts av JS */
.protocol-completion.checked {
	border-color: #28a745;
}

/* ---------- visa röd border när checkboxen är inaktiverad ---------- */
/* Prioritera inaktiverad state över checked (om båda förekommer) */
/* .checkbox-input:disabled + .checkbox-custom,
.checkbox-input:checked:disabled + .checkbox-custom {
	border-color: #b91616 !important;
	cursor: not-allowed;
	opacity: 0.9;
} */

/* Om du vill synliggöra state med lite annan bakgrund */
.checkbox-input:disabled+.checkbox-custom {
	background-color: #fff5f5;
}

/* Fallback-varianter för olika DOM-strukturer */
.checkbox-input:disabled~.protocol-completion,
.checkbox-label:has(.checkbox-input:disabled) .protocol-completion {
	border-color: #b91616 !important;
}

/* Fallback: använd klass som sätts av JS */
.protocol-completion.disabled {
	border-color: #b91616 !important;
}

.checkbox-text {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.checkbox-description {
	color: #666;
	font-size: 0.9rem;
}

.checkbox-label:hover .checkbox-custom {
	border-color: #28a745;
}

.disabled-no-deviations .checkbox-label:hover .checkbox-custom {
	border-color: #b91616;
}

ol {
	margin-left: 30px;
}

/* Mobile responsiveness */
@media (max-width: 767px) {
	.protocol-completion {
		margin: 1.5rem 0;
		padding: 1rem;
	}

	.checkbox-label {
		gap: 0.5rem;
	}
}

.detail {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.detail__header {
	display: flex;
	flex-direction: column;
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 0.5rem;
}

.detail__title {
	flex-shrink: 0;
	margin-bottom: 2rem;
}

.detail__meta {
	display: flex;
	flex-direction: column;
	font-size: 0.9rem;
	color: #3d3d3d;
	margin-bottom: 1rem;
	min-height: 3rem;
	/* Reservera plats */
	transition: min-height 0.2s ease;
	/* Smooth transition */
}

.detail__meta.expanded {
	min-height: 6rem;
	/* Höjd när expanderad */
}

.detail__meta-id {
	color: var(--blue);
	font-size: 1.1rem;
	font-weight: bold;
	padding: 0 0 0.2rem 0;
}

.detail__meta-id>.muted {
	color: #373737 !important;
}

.detail__meta-info {
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
}

.detail__meta .muted {
	color: #797979;
	gap: 0.5rem;
	display: flex;
	font-size: 1rem;
}

.detail__actions {
	display: flex;
	gap: 0.5rem;
}

.controls-actions {
	width: 100%;
	display: flex;
	gap: 0.5rem;
}

/* CARDS */

/* Wrapper for actions/cards */
.cards-wrapper {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	margin-bottom: 1rem;
	padding-inline: 1rem;
}

/* List of actions/cards */
.cards-list {
	display: flex;
	flex-direction: column;
	padding: 0.5rem 3rem;
	gap: 1rem;
}

.cards {
	display: flex;
	flex-direction: column;
}

.cards-heading {
	display: flex;
	gap: 1rem;
	justify-content: space-between;
}

.cards-heading h2 {
	margin-bottom: 0;
	align-items: center;
}

.card {
	display: flex;
	flex-direction: column;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 0.4rem;
	/* padding: 0.8rem; */
	margin-bottom: 1.2rem;
	-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	-moz-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	-ms-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	-o-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
}

.action-view-wrapper .card {
	border: unset;
	box-shadow: unset;
}

.card__topbar {
	display: flex;
	justify-content: space-between;
	background: #ececec;
	padding: 0.2rem;
}

.card__topbar-buttons {
	display: flex;
	gap: 0.5rem;
}

.card__topbar-button {
	font-size: 1.5rem;
	border: 1px solid var(--gray);
	border-radius: 0.5rem;
	cursor: pointer;
	width: 2.5rem;
}

.card.card--row {
	margin-top: 0.5rem;
	flex-direction: column;
}

.card__header {
	display: flex;
	justify-content: space-between;
	font-size: 1.5rem;
	font-weight: bold;
	background: #ececec;
	width: 100%;
	padding: 0.4rem 0.8rem;
}

.card__line {
	font-size: 1.3rem;
}

.detail .card__header {
	margin: 0;
	align-items: center;
}

.card__title {
	font-size: 1rem;
	font-weight: bold;
	margin-bottom: 0.2rem;
}

.card__badges {
	display: flex;
	gap: 0.5rem;
	margin-bottom: 1rem;
}

.card__body {
	display: flex;
	padding: 0.5rem 0.8rem;
	gap: 1rem;
	width: 100%;
}

/* allow children to shrink inside the grid cells (prevents overflow) */
.card__body>* {
	min-width: 0;
}

.detail .card__body {
	margin: 0;
}

.card__content {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem;
	width: 100%;
	padding: 0.4rem 0.2rem;
}

.card__content-edit {
	grid-template-columns: repeat(3, 1fr);
}

.card__info {
	display: flex;
	flex-direction: column;
}

.card__info-group {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
}

.card__info-group.has-files {
	padding: 0 0.8rem;
}

.card__select-container {
	display: flex;
	max-width: max-content;
	gap: 1rem;
}

.card__select {
	padding: 0.3rem;
}

.card__block {
	margin-bottom: 0.5rem;
}

.card__block .muted {
	font-size: 1.1rem;
	font-weight: bold;
	margin-bottom: 0.5rem;
}

.card__files {
	display: flex;
	gap: 0.5rem;
	align-items: center;
	/* justify-content: center; */
	width: 100%;
}

/* Ensure children can shrink (prevents overflow inside grid cells) */
.card__files>* {
	flex: 0 1 auto;
}

.detail .card__files {
	gap: 0.1rem;
}

.detail .card__files .card__file a img {
	height: 50px;
	width: 50px;
	object-fit: cover;
	border-radius: 6px;
}

.action-view-wrapper .card__files .card__file a img {
	height: 300px;
	width: 300px;
}

.action-view-wrapper .card__line {
	font-size: 1.8rem;
	margin-bottom: 0.8rem;
}

.card__file {
	position: relative;
	padding: 0 0.1rem;
}

.card__file>a>img {
	height: 55px;
	width: 55px;
	object-fit: cover;
	border-radius: 6px;
}

.card__images-container {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 0.5rem;
	margin-bottom: 1rem;
}

.card__images-container>a img {
	display: block;
	margin-bottom: 4px;
	width: 70px;
	height: 70px;
	object-fit: cover;
	border-radius: 4px;
}

.card__images-button {
	padding: 3px 8px !important;
	font-size: 10px;
	border-radius: 0.5rem;
}

input.addFile {
	width: 0.1px;
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
}

.card .edit-files-list {
	display: flex;
	padding: 0.7rem 1rem;
	gap: 0.5rem;
}

.card .edit-file-thumb {
	position: relative;
	display: inline-block;
	margin-right: 8px;
	width: 60px;
	height: 60px;
}

.card .edit-file-thumb img {
	cursor: pointer;
	width: 60px;
	height: 60px;
	object-fit: cover;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.card .edit-file-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #1976d2;
	color: #fff;
	border-radius: 50%;
	padding: 5px;
	font-size: 18px;
	opacity: 0.85;
	cursor: pointer;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.18);
	transition: background 0.2s;
}

.card .edit-file-thumb:hover .edit-file-icon {
	background: #1565c0;
	opacity: 1;
}

.card__images-button.js-file-delete {
	position: absolute;
	top: -18px;
	left: -10px;
	background: #e53935;
	color: #fff;
	padding: 6px 8px;
	font-size: 12px;
	opacity: 0.85;
	cursor: pointer;
	border: none;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.18);
	transition: background 0.2s;
}

.card__status-display {
	width: 100%;

	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
}

.status-badge-container {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.status-label {
	font-size: 0.85em;
	color: #666;
	font-weight: 500;
}

.status-badge {
	display: inline-block;
	padding: 0.25rem 0.5rem;
	border-radius: 4px;
	font-size: 0.8em;
	font-weight: 500;
	border: 1px solid #ddd;
	background: #f8f9fa;
	color: #333;
}

/* Status-specifika färger */
.status-badge--emergency_action {
	background: #ffeaea;
	border-color: #ffcdd2;
	color: #c62828;
}

.status-badge--to_be_resolved {
	background: #fff3e0;
	border-color: #ffcc02;
	color: #ef6c00;
}

.status-badge--monitored {
	background: #e8f5e8;
	border-color: #c8e6c9;
	color: #2e7d32;
}

.status-badge--done {
	background: #e8f5e8;
	border-color: #a5d6a7;
	color: #1b5e20;
}

.status-badge--responsible {
	background: #e3f2fd;
	border-color: #bbdefb;
	color: #1565c0;
}

/* Responsiv design */
@media (max-width: 768px) {
	.card__status-display {
		flex-direction: column;
		gap: 0.5rem;
	}

	.status-badge-container {
		justify-content: space-between;
	}
}

/* .card.is-editing .card__topbar {
	padding-bottom: 0;
}

.card.is-editing .card__images-button.js-file-delete {
	top: -32px;
	left: -9px;
}

.card.is-editing .card__images-button {
	bottom: 44px;
}

.card.is-editing .form-row {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 0.2rem;
	align-items: start;
	padding: 0.4rem 0;
}

.card.is-editing .edit-files-list {
	padding: 2rem 1rem;
} */

.edit-form {
	width: 100%;
}

.card .js-edit-file-thumb {
	display: inline-block;
	width: 80px;
	height: 80px;
	object-fit: cover;
	border-radius: 6px;
}

.card__images-button.js-file-delete:hover {
	background: #b71c1c;
	opacity: 1;
}

.tag {
	background-color: #f3f3f3;
	border-radius: 9999px;
	padding: 0.1rem 0.6rem;
	font-size: 0.8rem;
	display: inline-block;
	text-align: center;
	transition: padding 0.15s ease, font-size 0.15s ease;
}

/* Shrink tags on smaller screens */
@media (max-width: 480px) {
	.tag {
		padding: 0.15rem 0.45rem;
		font-size: 0.75rem;
	}
}

@media (max-width: 360px) {
	.tag {
		padding: 0.12rem 0.35rem;
		font-size: 0.7rem;
	}
}

.card__text {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	line-height: 1.5;
	color: #333;
}

.card__footer {
	margin-top: 1rem;
	text-align: right;
}

.card__file img {
	will-change: opacity;
	contain: layout style paint;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.grouper {
	width: 100%;
	display: flex;
	gap: 1rem;
}

/* END CARDS */

/* LAZY LOADING & IMAGE OPTIMIZATION */

.lazy-image {
	transition: opacity 0.3s ease;
	background-color: #f0f0f0;
	min-height: 50px;
	width: 100%;
	height: auto;
	object-fit: cover;
	display: block;
}

.lazy-loading {
	opacity: 0.6;
	background-image: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
	background-size: 200% 100%;
	animation: loading 1.5s infinite;
}

.lazy-loaded {
	opacity: 1;
	background: none;
}

.lazy-error {
	opacity: 0.5;
	background-color: #ffebee;
	position: relative;
	min-height: 80px;
}

.lazy-error::after {
	content: "⚠️ Kunde inte ladda bild";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 12px;
	color: #666;
	white-space: nowrap;
}

@keyframes loading {
	0% {
		background-position: -200% 0;
	}

	100% {
		background-position: 200% 0;
	}
}

/* FILES */
.files {
	display: flex;
}

/* COMMENTS */
/* Expandable comment styles */
.comment-expandable {
	position: relative;
	overflow: hidden;
	max-height: unset;
}

.comment-text {
	display: -webkit-box;
	overflow: hidden;
	max-height: 2.5rem;
	word-break: break-word;
	transition: all 0.3s ease;
}

.comment-text.expanded {
	-webkit-line-clamp: unset;
	line-clamp: unset;
	max-height: none;
}

.comment-toggle {
	color: #007bff;
	cursor: pointer;
	font-size: 0.9em;
	margin-top: 4px;
	text-decoration: underline;
}

.comment-toggle:hover {
	color: #0056b3;
}

/* Fallback older browsers; */
@supports not (-webkit-line-clamp: 2) {
	.comment-text {
		max-height: 2.8em;
		overflow: hidden;
		position: relative;
	}

	.comment-text::after {
		content: "...";
		position: absolute;
		bottom: 0;
		right: 0;
		background: white;
		padding-left: 20px;
		background: linear-gradient(to right, transparent, white 50%);
	}

	.comment-text.expanded::after {
		display: none;
	}
}

/* FOLDERS */
.folder-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 1rem;
	margin-top: 1rem;
}

.folder-card {
	display: flex;
	gap: 0.75rem;
	align-items: center;
	background: #fff;
	border: 1px solid #ddd;
	border-radius: 0.5rem;
	padding: 1rem;
	text-decoration: none;
	color: inherit;
	transition: background-color 0.15s ease, box-shadow 0.15s ease, transform 0.05s ease;
	cursor: pointer;
}

.folder-card:hover {
	background: #f9fafb;
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.08);
}

.folder-card:active {
	transform: translateY(1px);
}

.folder-card__icon img {
	width: 32px;
	height: 32px;
	opacity: 0.85;
}

.folder-card__title {
	font-weight: 600;
}

.folder-card__meta {
	font-size: 0.9rem;
	color: #666;
}

/* FOLDERS END */

/* Template rows form */
.rows-list {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.row-item {
	display: flex;
	gap: 0.5rem;
	align-items: center;
	margin-bottom: 0.5rem;
}

@media (max-width: 900px) {
	.row-item {
		grid-template-columns: 1fr 1fr;
	}
}

.image-container-list {
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	flex: 1;
}

.image-thumb {
	width: 125px;
	height: 100px;
	display: flex;
	position: relative;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.image-thumb-big {
	width: 200px;
	height: 160px;
	margin: 0 15px 15px 0;
	border: 1px solid #ccc;
	flex-grow: inherit;
}

.folder-thumb {
	position: relative;
	width: 200px;
	height: 160px;
	margin: 0 15px 15px 0;
	display: flex;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	font-weight: bold;
	font-size: 16px;
	flex-grow: inherit;
}

.folder-thumb:hover i.la-folder::before {
	padding-left: 5px;
	content: "\f07c";
}

.folder-thumb:hover {
	opacity: 0.7;
	text-decoration: none;
}

.box_insert_item:hover:after {
	font-family: "Line Awesome Free";
	font-weight: 900;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	font-size: 3em;
	height: 100%;
	content: "\f00c";
	color: #fff;
	z-index: 100;
	position: absolute;
	background-color: rgba(0, 0, 0, 0.5);
}

.image-container {
	min-height: 48px;
	margin: 20px 10px;
	flex-grow: 1;
	max-width: 200px;
	min-width: 125px;
	border: 1px solid #ccc;
}

.image-container:not(.image-container-add):first-of-type:before {
	content: "primär";
	position: absolute;
	top: -15px;
	height: 20px;
	width: 100%;
	font-size: 10px;
	color: #fff;
	text-align: center;
	background-color: var(--blue);
	z-index: 999;
}

.image-container img {
	position: relative;
}

.image-container .image-settings {
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 100;
	position: absolute;
	top: 0;
	left: 0;
	display: none;
	flex-direction: column;
	justify-content: center;
}

.image-container:hover .image-settings,
.image-container .image-settings-add {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-evenly;
}

.image-container .image-settings a {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	color: rgba(255, 255, 255, 0.5);
}

.image-container .image-settings a:hover {
	text-decoration: none;
	background-color: rgba(0, 0, 0, 0.25);
	color: #fff;
}

.image-container.image-background {
	background-size: cover;
	background-position: center;
}

.selected-image-list {
	display: flex;
	flex-wrap: wrap;
	border: 2px dashed #ccc;
	background-color: #f0f0f0;
	padding: 0 5px;
}

.ui-state-highlight {
	content: "";
	background: rgba(217, 87, 125, 0.25);
	display: flex;
	border: 2px solid var(--blue);
	width: 125px;
	height: 100px;
	margin: 20px 10px;
	flex-grow: 1;
	max-width: 200px;
	min-width: 125px;
}

/* css for toggle boxes */
.box-toggle {
	width: 100%;
	width: calc(100% - 30px);
	margin: 1.5rem;
	position: relative;
}

.box-toggle {
	height: 0;
	overflow: hidden;
	visibility: collapse;
}

.box-toggle.show-box-toggle {
	height: auto;
	visibility: visible;
}

/* end  toggle boxes*/

/* colorbox close copycat */
.cboxCloneClose {
	background-color: var(--blue);
	z-index: 1000;
	position: absolute;
	color: #fff;
	width: 45px;
	height: 45px;
	top: -12.5px;
	opacity: 1;
	right: -12.5px;
	font-size: 0px;
	/* text-shadow: 1px 1px 3px #ffffff; */
	display: flex;
	align-items: center;
	justify-content: center;
}

.cboxCloneClose::before {
	visibility: visible;
	font-family: "Line Awesome Free";
	font-size: 30px;
	content: "\f057";
	color: #fff;
}

.cboxCloneClose:hover:before {
	opacity: 0.7;
}

.cboxCloneClose:hover {
	font-size: 28px;
	background-color: var(--blue);
}

/* end colorbox close copycat */

.content-flex-start {
	align-items: flex-start;
	justify-content: flex-start;
}

/* mass-messages-image */
.mass-messages-image {
	display: flex;
	width: fit-content;
	max-height: 400px;
}

/* show-scroll-info-small-screen */
.show-scroll-info-small-screen {
	display: none;
}

/* end show-scroll-info-small-screen */

/********************************************************************************************/
/*
css for show/hide elements manipulated by javascript setupActionButtonsShowHideElement()
*/

.hide-element {
	display: none;
	transition: all 0.4s ease;
	width: 0;
	height: 0;
}

.show-element {
	display: flex;
	flex-direction: column;
	width: auto;
	height: auto;
}

/* end css for show/hide elements */
/********************************************************************************************/

/********************************************************/
/* css for dynamic modal */
dialog#dynamic-dialog-modal {
	animation: fade-out 0.7s ease-out;
}

dialog#dynamic-dialog-modal:open {
	animation: fade-in 0.7s ease-out;
	display: flex;
}

dialog#dynamic-dialog-modal:open::backdrop {
	background-color: black;
	animation: backdrop-fade-in 0.7s ease-out forwards;
}

#dynamic-dialog-modal {
	background: #ffffff;
	border-radius: 16px;
	padding: 1.2rem;
	border-color: #fff;
	min-height: 10rem;
}

#dynamic-content-box {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
}

/* Animation keyframes */

@keyframes fade-in {
	0% {
		opacity: 0;
		transform: scaleY(0);
		display: none;
	}

	100% {
		opacity: 1;
		transform: scaleY(1);
		/* display: block; */
		display: flex;
	}
}

@keyframes fade-out {
	0% {
		opacity: 1;
		transform: scaleY(1);
		/* display: block; */
		display: flex;
	}

	100% {
		opacity: 0;
		transform: scaleY(0);
		display: none;
	}
}

@keyframes backdrop-fade-in {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 0.25;
	}
}

/* end css for dynamic modal */

/* EDIT MODE */
.edit-mode-blur {
	filter: blur(4px);
	opacity: 0.6;
	pointer-events: none;
	transition: all 0.3s ease;
}

.edit-mode-active .actions-wrapper,
.edit-mode-active .cards-heading {
	filter: none !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	position: relative;
	z-index: 2;
}

.edit-mode-active .card {
	margin: 0;
}

.edit-mode-active .card.card--row {
	margin: 0;
}

.edit-mode-active .card__files {
	justify-content: center;
}

/* Subtle overlay */
.edit-mode-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #00000070;
	-webkit-backdrop-filter: blur(1px);
	backdrop-filter: blur(1px);
	z-index: 1;
	pointer-events: none;
	opacity: 0;
	animation: fadeInOverlay 0.3s ease forwards;
}

@keyframes fadeInOverlay {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

/* Smooth focus effect for edit elements */
.edit-mode-active .actions-wrapper {
	box-shadow: 0 0 20px rgba(0, 111, 253, 0.1);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.95);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}

.js-status-select.select-disabled,
.js-resp-select.select-disabled {
	opacity: 0.5;
	cursor: not-allowed;
	background-color: #f5f5f5;
}

/* NAVIGATION */

.breadcrumbs {
	width: 100%;
	list-style: none;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 5px;
	font-size: 14px;
	margin-bottom: 1.5rem;
}

/* FOOTER */
footer {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	flex: 0 0 auto;
	width: 100%;
	padding: 20px;
	background-color: #f4f4f4;
	color: var(--black);
	text-align: center;
	font-size: 14px;
	margin-top: 0;
	position: relative;
	bottom: auto;
}

/**************************************************************************/
/**** tooltips ************************************************************/

/* info tooltip */
/* Tooltip text */
.info-tooltip-media .info-tooltip-media-text,
.info-tooltip-alert .info-tooltip-alert-text {
	visibility: hidden;
	width: 277px;
	background-color: #fdfdfd;
	color: #000000;
	text-align: center;
	padding: 5px 5px;
	border-radius: 10px;
	border: 1px solid #f3f3f3;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -120%);
	z-index: 1;
	transition: all 0.4s ease;
}

.info-tooltip-media .info-tooltip-media-text::after,
.info-tooltip-alert .info-tooltip-alert-text::after {
	content: "";
	position: absolute;
	top: 95%;
	transform: translate(-50%, 7%);
	left: 50%;
	border-width: 7px;
	border-style: solid;
	border-color: black transparent transparent transparent;
}

/* Show the tooltip text when you mouse over the tooltip container */
.info-tooltip-media:hover,
.info-tooltip-alert:hover {
	opacity: 1 !important;
}

.info-tooltip-media:hover .info-tooltip-media-text,
.info-tooltip-alert:hover .info-tooltip-alert-text {
	visibility: visible;
}

/* tooltip users open/read file info */
.info-tooltip-media-users-readed .info-tooltip-media-users-readed-text {
	visibility: hidden;
	width: auto;
	background-color: #e3e3e3;
	color: #000000;
	text-align: center;
	padding: 5px 0;
	border-radius: 6px;

	position: absolute;
	bottom: 113%;
	/* left: 0; */
	right: 0;
	/* transform: translate(-50%, 0); */
	z-index: 1;

	transition: all 0.4s ease;
}

.info-tooltip-media-users-readed .info-tooltip-media-users-readed-text::after {
	content: "";
	position: absolute;
	top: 100%;
	/* left: 15%; */
	right: 4%;
	margin-left: -5px;
	border-width: 5px;
	border-style: solid;
	border-color: black transparent transparent transparent;
}

/* Show the tooltip text when you mouse over the tooltip container */
.info-tooltip-media-users-readed:hover .info-tooltip-media-users-readed-text {
	visibility: visible;
}

.span-rel {
	position: relative;
}

.icon-absolute {
	position: absolute;
	color: var(--black);
	width: 20px;
	height: 14px;
	bottom: 14px;
	left: 92px;
}

/**************************************************************************/

/* ------------- HELPER CLASSES, SPECIFIC TASK ------------- */

.flex-outer-wrapper {
	margin: 0;
	padding: 0;
	display: flex;
	width: 100%;
	min-height: 100vh;
}

.flex-wrapper {
	margin: 0;
	padding: 0;
	display: flex;
	width: 100%;
}

.flex {
	display: flex !important;
}

.flex-row {
	display: flex;
	flex-direction: row !important;
}

.flex-column {
	/* width: 100%; */
	display: flex;
	flex-direction: column !important;
	gap: 0.5em;
}

.flex-wrap {
	flex-wrap: wrap !important;
}

.flex-group {
	width: 50%;
	display: flex;
}

.flex-100 {
	width: 100%;
}

.flex-66 {
	width: 66.7%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.flex-50 {
	width: 48%;
	width: calc(50% - 20px);
}

.flex-33 {
	width: 33.3%;
	padding-left: 0;
	display: flex;
	flex-wrap: wrap;
}

.flex-25 {
	width: 25%;
	padding-left: 20px;
	display: flex;
	flex-wrap: wrap;
}

.column {
	display: flex !important;
	flex-direction: column;
}

.row {
	display: flex !important;
	flex-direction: row;
}

.space-between {
	justify-content: space-between !important;
}

.justify-center {
	justify-content: center;
}

.justify-start {
	justify-content: flex-start !important;
}

.justify-end {
	justify-content: flex-end !important;
}

.align-center {
	align-items: center !important;
}

.align-start {
	align-items: flex-start !important;
}

.align-end {
	align-items: flex-end !important;
}

.align-justify-unset {
	align-items: unset !important;
	justify-content: unset !important;
}

.center-unset {
	text-align: unset;
	justify-content: unset;
	align-items: unset;
}

.highlight-input {
	background: #fff6d6 !important;
}

.gap-01-rem {
	gap: 0.1rem;
}

.gap-02-rem {
	gap: 0.2rem;
}

.gap-03-rem {
	gap: 0.3rem;
}

.gap-04-rem {
	gap: 0.4rem;
}

.gap-05-rem {
	gap: 0.5rem;
}

.gap-1-rem {
	gap: 1rem;
}

.gap-1_2-rem {
	gap: 1.2rem;
}

/* width height */
.w10px_h10px {
	width: 10px;
	height: 10px;
}

.w15px_h15px {
	width: 15px;
	height: 15px;
}

.w16px_h16px {
	width: 16px;
	height: 16px;
}

.w20px_h20px {
	width: 20px;
	height: 20px;
}

.w30px_h30px {
	width: 30px;
	height: 30px;
}

.w40px_h40px {
	width: 40px;
	height: 40px;
}

.w-unset {
	width: unset !important;
}

.no-full-width {
	width: unset !important;
}

/* min/max widths */

.min_max15 {
	min-width: 15% !important;
	max-width: 15% !important;
}

.min_max20 {
	min-width: 20% !important;
	max-width: 20% !important;
}

.min_max25 {
	min-width: 30% !important;
	max-width: 30% !important;
}

.min_max40 {
	min-width: 40% !important;
	max-width: 40% !important;
}

.min_max45 {
	min-width: 45% !important;
	max-width: 45% !important;
}

.min_max50 {
	min-width: 50% !important;
	max-width: 50% !important;
}

.flex-width {
	min-width: 35%;
	max-width: 35%;
}

.max-width-flexible {
	max-width: 33%;
}

/* paddings */
.padd-top_1rem {
	padding-top: 1rem !important;
}

.padd-top_2rem {
	padding-top: 2rem !important;
}

.padd-top_3rem {
	padding-top: 3rem !important;
}

.padd-top_4rem {
	padding-top: 4rem !important;
}

.padd-top_5rem {
	padding-top: 5rem !important;
}

.padd-top_6rem {
	padding-top: 6rem !important;
}

.padd-bottom_1rem {
	padding-bottom: 1rem !important;
}

.padd-bottom_2rem {
	padding-bottom: 2rem !important;
}

.padd-bottom_3rem {
	padding-bottom: 3rem !important;
}

.padd-bottom_4rem {
	padding-bottom: 4rem !important;
}

.padd-bottom_5rem {
	padding-bottom: 5rem !important;
}

.padd-bottom_6rem {
	padding-bottom: 6rem !important;
}

/* margins */
.margin-left_1rem {
	margin-left: 1rem !important;
}

.margin-left_1_5rem {
	margin-left: 1.5rem !important;
}

.margin-left_2rem {
	margin-left: 2rem !important;
}

.margin-left_2_5rem {
	margin-left: 2.5rem !important;
}

.margin-left_3rem {
	margin-left: 3rem !important;
}

.margin-right_1rem {
	margin-right: 1rem !important;
}

.margin-right_1_5rem {
	margin-right: 1.5rem !important;
}

.margin-right_2rem {
	margin-right: 2rem !important;
}

.margin-right_2_5rem {
	margin-right: 2.5rem !important;
}

.margin-right_3rem {
	margin-right: 3rem !important;
}

.margin_0_0 {
	margin: 0;
}

.margin-top_1rem {
	margin-top: 1rem !important;
}

.margin-top_2rem {
	margin-top: 2rem !important;
}

.margin-top_3rem {
	margin-top: 3rem !important;
}

.margin-top_4rem {
	margin-top: 4rem !important;
}

.margin-top_5rem {
	margin-top: 5rem !important;
}

.margin-top_6rem {
	margin-top: 6rem !important;
}

.margin-bottom_1rem {
	margin-bottom: 1rem !important;
}

.margin-bottom_2rem {
	margin-bottom: 2rem !important;
}

.margin-bottom_3rem {
	margin-bottom: 3rem !important;
}

.margin-bottom_4rem {
	margin-bottom: 4rem !important;
}

.margin-bottom_5rem {
	margin-bottom: 5rem !important;
}

.margin-bottom_6rem {
	margin-bottom: 6rem !important;
}

/* Texts */
.text-small {
	font-size: 0.8rem !important;
}

/* Radius */
.radius-0 {
	border-radius: 0 !important;
}

.radius-02 {
	border-radius: 0.2rem !important;
}

/* Background colors */
.bg-red {
	background-color: #d20000 !important;
	color: #fff !important;
}

.bg-green {
	background-color: #22750e !important;
	color: #fff !important;
}

.bg-yellow {
	background-color: #d2b900 !important;
	color: #fff !important;
}

.bg-blue {
	background-color: #0099d2 !important;
	color: #fff !important;
}

/** FILTERS **/
.invert {
	filter: invert(1);
}

/** SPECIALS **/

.gap-width-special {
	gap: 0.5rem;
}

/************************************************************************************/
/* media queries */

@media screen and (max-width: 2000px) {
	.list-header-spacer {
		display: none;
	}
}

@media screen and (max-width: 1600px) {
	.actions-wrapper {
		max-width: 80%;
	}

	.max-width-flexible {
		max-width: 30%;
	}

	.card__file>a>img {
		width: 50px;
		height: 50px;
	}
}

@media screen and (max-width: 1350px) {
	.boxes {
		grid-template-columns: repeat(3, 200px);
	}

	.btn-big,
	a.btn-big:link,
	a.btn-big:visited {
		width: 200px;
		height: 155px;
	}

	.actions-wrapper {
		max-width: 100%;
	}

	.card.card--row {
		max-width: unset;
	}
}

@media screen and (max-width: 1080px) {
	section .content {
		margin: unset;
		max-width: unset;
	}

	.list-header {
		flex-direction: column;
	}

	.box25 {
		width: 100%;
		min-height: 80px;
	}

	.primary-box {
		max-width: 300px;
	}

	.primary-box .btn-big {
		width: 300px !important;
	}

	.boxes {
		grid-template-columns: repeat(3, 170px);
	}

	.btn-big,
	a.btn-big:link,
	a.btn-big:visited {
		width: 170px;
		height: 120px;
		font-size: 16px;
	}

	input {
		padding: 0.5rem;
	}

	.select-group {
		gap: 0.5rem;
	}

	.card__file>a>img {
		height: 40px;
		width: 40px;
	}

	.lazy-image {
		min-height: 40px;
	}

	.max-width-flexible {
		max-width: 25%;
	}

	.actions-wrapper {
		max-width: 100%;
		flex-wrap: wrap;
		margin-bottom: 2rem;
	}
}

/* max width */
@media all and (max-width: 960px) {
	header {
		padding: 0.5rem 2rem;
	}

	.primary-box {
		max-width: 250px;
	}

	.primary-box .btn-big {
		width: 250px !important;
	}

	.boxes {
		grid-template-columns: repeat(3, 140px);
	}

	.btn-big,
	a.btn-big:link,
	a.btn-big:visited {
		width: 140px;
	}

	.flex {
		justify-content: space-between;
	}

	.flex-50 {
		width: 100%;
	}

	.flex-desktop {
		display: flex;
	}

	.flex-group {
		flex-direction: column;
		gap: 0;
	}

	.flex-group2 {
		justify-content: unset !important;
	}

	.controls-actions {
		width: unset;
	}

	header .profile-menu {
		display: inline-block;
		color: #fff;
	}

	header .profile-menu-action {
		padding-right: 5px;
	}

	section .content {
		padding: 20px;
		background-color: #fff;
		/* overflow: hidden; */
	}

	nav {
		display: none;
		width: 100%;
	}

	.mobile {
		width: 100%;
		display: inline;
	}

	.desktop,
	td.desktop,
	th.desktop {
		display: none;
	}

	a.app-menu:link,
	a.app-menu:visited {
		margin: 7px 0 0 0;
		color: #fff;
	}

	header .profile-menu-action {
		position: absolute;
		vertical-align: middle;
		right: 10px;
	}

	header .profile-menu-action .user-image {
		font-size: 35px;
	}

	header .Usermenu {
		top: 65px;
	}

	.section-title {
		max-width: 80%;
	}

	.section-update {
		max-width: 20%;
		text-align: right;
		font-size: 25px;
	}

	table.responsive {
		margin-bottom: 0;
	}

	div.table-wrapper {
		overflow-x: auto;
	}

	table.responsive td,
	table.responsive th {
		position: relative;

		white-space: nowrap;

		overflow: hidden;
	}

	.list-header__form {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.5rem;
	}

	/* jm default style for info modal */
	.more-info-modal {
		display: flex;
		flex-wrap: wrap;
		padding: 10px;
	}

	/* jm */
	.box-20,
	.box-25,
	.box-33,
	.box-50,
	.box-75 {
		width: calc(100% - 30px);
	}

	.box-33-mr1p0 {
		width: calc(100%);
		margin-right: 1rem;
	}

	.show-scroll-info-small-screen {
		display: block;
	}

	.mb-label-hide {
		display: none;
	}

	.card__info-group>label {
		display: none;
	}

	.modal-form-grid .form-row {
		padding: 0.1775rem 0;
		flex-direction: column;
		align-items: flex-start;
	}

	.modal-form-grid .form-row>label,
	.modal-form-grid .card__info-group>label {
		display: block;
	}

	.modal-form-grid select {
		padding: 0.5rem;
	}

	.card__info-group {
		gap: 0.2rem;
		justify-content: center;
	}

	.grouper {
		gap: 0.3rem;
	}

	select {
		height: max-content;
		padding: 0.4rem;
	}

	.select-group {
		justify-content: flex-start;
		gap: 0.2rem;
	}

	.cards-heading {
		width: 100%;
	}

	.badge--large {
		width: unset;
	}

	.detail__title {
		margin-bottom: 0;
	}

	.hide-mb {
		display: none;
	}
}

@media screen and (max-width: 900px) {
	select {
		max-width: min-content;
	}
}

@media screen and (max-width: 820px) {
	header {
		margin-bottom: 1rem;
	}

	.dashboard {
		flex-direction: column;
		gap: 1rem;
	}

	.primary-box {
		width: 100%;
		flex: 1 1 100%;
		min-width: 100%;
	}

	.primary-box .btn-big,
	.primary-box a.btn-big:link,
	.primary-box a.btn-big:visited {
		min-width: 100%;
	}

	.boxes {
		display: flex;
		flex-wrap: wrap;
		gap: 1rem;
		width: 100%;
	}

	.btn-big,
	a.btn-big:link,
	a.btn-big:visited {
		width: calc(50% - 0.5rem);
		height: unset;
		box-sizing: border-box;
	}

	.primary-box .btn-big,
	.primary-box a.btn-big:link,
	.primary-box a.btn-big:visited {
		width: 100% !important;
	}

	section::before {
		display: none;
	}

	.responsive_test {
		min-width: 900px;
	}

	.td-absolute {
		position: absolute;
		width: 200px;
		margin-top: -13px;
		height: 26px;
		display: flex;
		align-items: center;
		border-right: 1px solid #cccccc;
		background-color: #ffffff;
		font-size: 12px;
		left: 20px;
		line-height: 12px;
		padding-left: 4px;
	}

	.Header {
		z-index: 2000;
	}

	.Mainmenu__mobilebutton {
		display: block;
	}

	.Mainmenu__mobilebutton.open div:nth-child(1) {
		transform: rotate(45deg);
		top: 20px;
	}

	.Mainmenu__mobilebutton.open div:nth-child(2) {
		opacity: 0;
	}

	.Mainmenu__mobilebutton.open div:nth-child(3) {
		transform: rotate(130deg);
		top: 20px;
	}

	section {
		padding: 0 1rem 1rem 1rem;
	}

	.flex-100 {
		width: unset;
	}

	#element_create_facility .align-end {
		align-items: unset !important;
	}
}

@media all and (max-width: 750px) {
	.flex {
		flex-direction: column;
	}

	.flex-group {
		width: 100%;
	}

	.w100 {
		flex-direction: column;
	}

	.w33 {
		width: 100%;
	}

	.protocol-header {
		gap: 0;
	}

	.card__body {
		flex-direction: column;
		gap: 0.5rem;
	}

	.grouper {
		justify-content: space-between;
	}

	select {
		max-width: unset;
	}

	.select-group {
		flex-direction: column;
		border: unset;
	}

	.card__files {
		justify-content: center;
	}

	.controls-actions {
		justify-content: flex-start;
	}

	.gap-width-special {
		width: 100%;
	}
}

@media all and (max-width: 550px) {
	header {
		margin-bottom: 0.7rem;
	}

	header .Usermenu {
		top: 68px;
		right: 0;
		width: 50%;
	}

	header .profile-menu-action .user-image {
		font-size: 28px;
	}

	header .profile-menu-action {
		display: flex;
		flex-direction: column;
		align-items: flex-end;
	}

	.profile-menu-action .Usermenu__icon {
		width: 25px;
		height: 25px;
	}

	#modalcontent {
		min-width: 300px;
	}

	h1 {
		font-size: 1.3rem;
		line-height: 1.5rem;
	}

	h2 {
		margin-bottom: 0.5rem;
	}

	.btn-big,
	a.btn-big:link,
	a.btn-big:visited {
		gap: 0.3777rem;
		padding: 2rem;
	}

	.controls-actions {
		justify-content: flex-start !important;
	}

	.logo-inline {
		max-height: 1.7rem;
	}

	.btn {
		width: 100% !important;
		max-width: 100% !important;
		flex: 1 1 auto;
		text-align: center;
	}

	.smaller-btn {
		padding: 0.5rem 0.7rem !important;
	}

	.submit {
		width: 100% !important;
	}

	section .content {
		-webkit-box-shadow: unset;
		box-shadow: unset;
		/* padding: 0.5rem; */
		padding: 0;
	}

	select {
		height: unset;
		width: 100%;
		padding: 0.5rem;
	}

	.comment-section {
		margin-bottom: 2rem;
	}

	.form-radio-group {
		justify-content: space-around;
		gap: 0;
	}

	.grouper {
		flex-direction: column;
	}

	.flex-width {
		min-width: unset;
		max-width: unset;
	}

	.cards-heading {
		flex-wrap: wrap;
	}

	.card__files {
		justify-content: center;
	}

	.controls-actions {
		margin-bottom: 1rem;
	}

	.margin-bottom_1rem {
		margin-bottom: 0.5rem;
	}

	.badge {
		width: 100%;
		justify-content: center;
		text-align: center;
	}

	.status-badge {
		width: 100%;
	}

	label {
		margin-bottom: 0.2rem;
	}

	.hide-mb {
		display: none;
	}

	.contact-text {
		display: none;
	}

	.contact-icon {
		display: inline;
		font-size: 1.2rem;
	}

	.contact-link {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 0.5rem;
	}

	/* Center icons in tablecells */
	.contact-email,
	.contact-phone {
		text-align: center;
	}

	td:first-child {
		padding: 0.1rem 0.5rem 0.1rem 0;
	}

	.w50 {
		width: 100% !important;
	}

	.search-and-add-container {
		margin: 0;
	}

	.action_add_company_to_relation {
		margin: 0;
	}

	.max-width-flexible {
		max-width: unset;
	}

	.pagination__info {
		min-width: 5rem;
		display: flex;
		justify-content: center;
	}
}

@media screen and (max-width: 450px) {}
