:root,
[data-bs-theme="light"] {
	--infobox-bg: #fff;
	--infobox-border: 1px solid #ccc;
	--infobox-colour: #666;

/*	--bs-success: #198754;
	--bs-info: #0dcaf0;
	--bs-warning: #ffc107;
	--bs-danger: #dc3545;*/
}

[data-bs-theme="dark"] {
	--infobox-bg: #4b4b4b;
	--infobox-border: 1px solid #2e3235;
	--infobox-colour: #dee2e6;
}



.infobox {
	/* border-radius: 0.25rem; */
	background-color: var(--infobox-bg);
	border: var(--infobox-border);
	box-shadow: 0px 10px 30px 0px rgb(50 50 50 / 16%);
	box-sizing: border-box;
	color: var(--infobox-colour);
	cursor: pointer;
	height:100%;
	overflow: hidden;
	padding-left: 1rem;
	padding: 0.5rem;
	position: relative;
	transition: transform 300ms ease-in-out;
	width: 400px;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}


.infobox-container[data-position$="-right"] .infobox {
	transform: translateX(110%);
}

.infobox-container[data-position$="-left"] .infobox {
	transform: translateX(-110%);
}

.infobox-container[data-position="top-centre"] .infobox {
	transform: translateY(-100vh);
}
.infobox-container[data-position="bottom-centre"] .infobox {
	transform: translateY(100vh);
}


.infobox-container .infobox.show {
	transform: translate(0, 0);
}


.infobox.progress::before {
	background-color: var(--light-grey);
	bottom: 0;
	content: "";
	height: 3px;
	left: 0;
	margin-right: auto;
	position: absolute;
	right: 0;
	width: calc(100% * var(--progress));
}

.infobox .content {
	margin:0.5rem;
	width: 100%;
}

.infobox i {
	color: var(--light-grey);
	font-size: 3rem;
	padding-right: 10px;
	padding: 5px;
}

.infobox h4 {
	margin-bottom: 8px;
	font-size: 1rem;
	font-weight: 600;
}

.infobox h4::after {
	background-color: var(--light-grey);
	-moz-transition-duration: .4s;
	-ms-transition-duration: .4s;
	-o-transition-duration: .4s;
	-webkit-transition-duration: .4s;
	content: '';
	display: block;
	height: 2px;
	margin-bottom: 5px;
	margin-top: 5px;
	transition-duration: .4s;
	width: 80px;
}

.infobox span {
	color: var(--infobox-colour);
	font-size: 0.75rem;
	margin-bottom: 0;
	margin-top: 25px;
	padding-right: 50px;
}

.infobox.danger i,
.infobox.error i    { color: var(--bs-danger); }
.infobox.info i     { color: var(--bs-info); }
.infobox.success i  { color: var(--bs-success); }
.infobox.warning i  { color: var(--bs-warning); }

.infobox.progress.error::before,
.infobox.error h4::after {
	background-color: var(--bs-danger);
}

.infobox.progress.danger::before,
.infobox.danger h4::after {
	background-color: var(--bs-danger);
}

.infobox.progress.info::before,
.infobox.info h4::after {
	background-color: var(--bs-info);
}

.infobox.progress.success::before,
.infobox.success h4::after {
	background-color: var(--bs-success);
}

.infobox.progress.warning::before,
.infobox.warning h4::after {
	background-color: var(--bs-warning);
}


/* .infobox::before {
	content: "";
	position: absolute;
	width: 7px;
	height: 100%;
	left: 0;
	top: 0;
	background-color: var(--accent-colour);
} */


.infobox.can-close::after {
	content: "\00D7";
	position: absolute;
	/* top: 6px; */
	right: 12px;
}


.infobox-container {
	position: fixed;
	margin: 20px;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	z-index:99999;
}

.infobox-container[data-position^="top-"] {
	top: 0;
}

.infobox-container[data-position^="bottom-"] {
	bottom: 0;
}

.infobox-container[data-position^="middle-"] {
	top: 50%;
	transform: translateY(-50%);
}

.infobox-container[data-position$="-left"] {
	left: 0;
}

.infobox-container[data-position$="-right"] {
	right: 0;
}

.infobox-container[data-position$="-centre"] {
	left: 50%;
	transform: translateX(-50%);
}
