@charset "UTF-8";

/*
 * 		application : NOVA
 * 		date 		: 07/06/2013
 * 		auteur		: Laurent Poulette
 * 		copyright	: SANTEOS
 * 		fichier 	: rsc/nova.css
 *		usage 		: inclus par root/nova_root.php
 *		role 		: style spécifique à NOVA
 *					: tout style hors framework  
*/

.connexionMode1
{
	width: 100%;
	display: flex;
	justify-content: space-evenly;
}


/*****************************************************************************************************************************
	Navigation : Workspaces, barres supérieure/inférieure et Ariane
	--------
*****************************************************************************************************************************/

header ul {
	display: flex;
	list-style-type: none;
	padding: 0px;
	margin: 0px;
}

#logoMenu {
	display: flex;
	align-items: center;
	gap: .5rem;
}

#logoMenuButton {
	background: none;
	border: none;
	font-size: 1.5rem;
	cursor: pointer;
	color: var(--body-text);
	padding: .5rem;
	display: none;
}

/* WORKSPACE (WS) */

header div.ws.invisible {
	visibility: hidden;
}

header div.ws.disabled,
header ul.btn li.disabled {
	display: none;
}

/* tous boutons (barre supérieure ou toolbar de panel) */

header ul.btn li.invisible {
	visibility: hidden;
}

/* BARRE SUPERIEURE */

header #topRightBtnBar ul.btn>li.btn>a {
	/* BTN - boutons de la BARRE SUPERIEURE */
	font-size: 1.1em;
}

header ul.btn i {
	/* icones des boutons */
	color: var(--body-text);
}

header ul.btn i:first-of-type,
header ul.btn li.dark i:first-of-type {
	/* icone de fond de bouton (cercle) */
	color: var(--primary-white);
	transition: color 0.2s ease;
}

header nav ul.btn a:hover i:first-of-type {
	color: var(--shade-grey-4);
}

/* bouton_retour_flat (ex: pour Nova, Barre de bouton right Bottom) */

header ul.btn.flat li {
	/* zone de texte (vous avez une saisie en cours) */
	background-color: var(--primary-green);
	font-size: 0.8em;
	color: var(--primary-white);
	padding-right: 0px;
	margin-right: 0.3em;
}

form.quest.questVisu .rqpDetailLabelInfoSupp .controls.valeurVisu {
    font-family: droid_sansregular, "Helvetica Neue", Helvetica, Arial, sans-serif;
    width: 13em;
    word-break: break-word;
}

/*
	gestion du menu contextuel
*/
div.agendaPopupMenu{
	position:absolute;
	top:0px;
	left:0px;
	z-index:98;
	border:1px solid black;
	background-color:white;
	box-shadow:3px 3px 5px black;
}

div.agendaPopupMenu > ul
{
	list-style-type: none;
	margin:0px;
	padding:5px;
}

header ul.btn.flat li a,
header ul.btn.flat li a:link,
header ul.btn.flatli a:visited {
	color: var(--primary-white);
}


/** FSE */
.fseGreenLine{
	background-color:forestgreen !important;
}

#unitFse_TLA_prat_grid {
	display: table;
	float: none;
}

#unitFse_TLA_pratPopup_tab {
	overflow-y : auto !important;
}

.fwkAriane, .vaccinSwitchEtat, div.blzToolBar > ul > li.invisible {
	display: none;
}

header .navigation:nth-of-type(2) {
	position: absolute;
	right: 0;
}

header nav {
	background: var(--primary-white);
	box-shadow: 0 5px 12px 1px rgba(0, 0, 0, 0.25);
	min-height: 60px;
	max-height: 60px;
	padding: 0px;
	position: relative;
	display: flex;
	gap: .5rem;
	justify-content: space-between;

	> div {
		display: flex;
		gap: 1rem;
		align-items: center;
		align-items: stretch;
	}
}

header .navigation div:has(#navWs) {	

	#navWs {
		z-index: 1;
		display: flex;
		align-items: center;
	}

	#mobileTopRightBtnBar {
		display: none;
		flex-direction: column;
		width: 90%;
		padding: 0 1rem 1rem;

		hr {
			width: 100%;
		}

		.envWatermark {
			text-align: center;
			max-width: unset;
		}

		#mobileCartouche {
			display: flex;
			justify-content: center;

			div {
				display: flex;
				flex-direction: column;
				color: var(--body-text);
				padding-right: 1rem;

				span:first-child {
					font-variation-settings: var(--fvs-regular);
				}
			}
		}
	}
}

#wPatient {
	background-color: var(--secondary-l-green);
	display: flex;
	width: 100%;
	transition: all 0.2s ease;
	
	&:hover{
		background-color: var(--secondary-l-blue);
		box-shadow: 0 5px 12px 1px rgba(0, 0, 0, 0.25);
	}

	.btn_patient{
    	text-decoration: underline;
		background-color: transparent;
		border: 2px solid transparent;
		color: var(--body-text);
	}

	.btn_patient:focus-visible,.btn_patient:focus,.btn_patient:active{
		outline: 2px solid var(--main-color);
    	outline-offset: 2px;
	}

	>div {
		height: 3em;
		display: flex;
		align-items: center;
		width: 100%;
		padding: .5rem 1rem .5rem 2rem;
		cursor: pointer;

		.navpanel {
			flex: 1;
			display: flex;
			align-items: center;
			gap: .5rem;
			max-width: calc(100% - 50px);

			&:has(+ .toolbar li.btn:not(.invisible) .fa-bell) {
				max-width: calc(100% - 90px);
			}

			> div {
				display: flex;
				align-items: center;
				gap: 1rem;
				width: 100%;

				> div {
					font-variation-settings: var(--fvs-bold);
						
					&:not(:last-child) {
						padding-right: 1rem;
						font-variation-settings: var(--fvs-bold);

						&:first-child {
							border-right: 1px solid black;
							display: flex;
							gap: .25rem;
							max-width: calc(100% - 400px);

							span {
								display: block;
								text-overflow: ellipsis;
								white-space: nowrap;
								overflow: hidden;
								max-width: calc(100% - 20px);
							}
						}
					}

					&#nav-infos-gro {
						font-variation-settings: var(--fvs-regular);
						display: flex;
						flex-wrap: wrap;
						max-width: calc(100% - 40px);
						gap: 1rem;

						> div {
							display: flex;
							gap: .25rem;
						}

						abbr {
							text-decoration: underline dotted;
							cursor: help;
						}
					}
				}

				&:has(#nav-infos-gro div) {
					> div:not(:last-child):first-child {
						max-width: calc(100% - 750px);
					}

					> div:nth-child(2) {
						border-right: 1px solid black;
					}
				}
			}
		}

		.toolbar {
			li {
				list-style: none;
				cursor: pointer;
				transition: transform 0.2s ease;

				&:hover {
					transform: scale(1.1);
				}
			}
		}
	}

	div.invisible, li.invisible, button.ws {
		display: none;
	}

	.blink .fa-bell {
		animation: ringBell 4s .5s ease-in-out infinite;
		transform-origin: 50% 4px;
	}
}


.____________________ajustement_mobile______________ {}

@media (max-width: 44rem) {
	#wPatient{
		>div{
			height: unset;
		}
	}
}

#navWs li {
	height: 100%;
	padding: 0;

	> div {
		height: 100%;

		&.selected button {
			background-color: var(--main-light);
				
			&::after {
				content: '';
				position: absolute;
				bottom: 0;
				left: 0;
				right:0;
				height: 5px;
				background-color: var(--main-color);
			}
		}
	}

	&:has(>.ws.disabled) {
		display: none;
	}

	button {
		height: 100%;
		color: var(--body-text);
		border: none;
		background-color: transparent;
		transition: background-color 0.2s ease;
		position: relative;
		padding: 1rem 1.5rem;
		font-size: 1rem;
		border-radius: 0;

		&[disabled] {
			opacity: 0.5;
			pointer-events: none;
		}

		&:hover {
			opacity: 1 !important;
			background-color: var(--main-light);
			&::after {
				content: '';
				position: absolute;
				bottom: 0;
				left: 0;
				right:0;
				height: 5px;
				background-color: var(--main-color);
			}
		}
		
	}
}

header .navigation #watermarkAndTopRightBar {
	display: flex;
	gap: .5rem;
	align-items: center;
	justify-content: flex-end;

	#topRightBtnBar {
		display: flex;
		height: 100%;

		ul {
			display: flex;

			.panel div {
				display: flex;
				flex-direction: column;
				color: var(--body-text);
				border-right: 1px solid var(--border-grey);
				padding-right: 1rem;

				span {
					text-transform: none;
					text-overflow: ellipsis;
					white-space: nowrap;
					overflow: hidden;
					max-width: 17rem;

					&:first-child {
						font-variation-settings: var(--fvs-regular);
					}
				}
			}
		}
	}
}

/*Filigrane*/
.envWatermark {
	font-size: 2em;
	font-style: italic;
	-webkit-text-stroke: .3px #FFF8;
	max-width: 270px;
	letter-spacing: .1em;
	text-align: right;
	color: var(--button-bg);
	overflow: hidden;
	z-index: 0;
	padding: .25rem;
	white-space: nowrap;
	text-overflow: ellipsis;
}

#bemTopRightBtnBar {
	float: right;
	display: block;
	height: 44px;
}

#bottomRightBtnBar {
	float: right;
}

/* fenetre InfoUser	: ("bouton" Nom Utilisateur) */

#infoNotification dl {
	padding: 0.5em;
}

#infoNotification dt {
	float: left;
	clear: left;
	width: 55px;
	text-align: right;
	font-family: droid_sansbold, "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #000;
}

#infoNotification dt:after {
	content: " :";
}

#infoNotification dd {
	margin: 0 0 0 60px;
	margin-left: 60px;
	padding: 0 0 0.5em 0;
}

#infoNotification dd dd {
	/* infos patients dans la partie user*/
	margin: 0px;
}

/* fenetre InfoNotification	: ("bouton" point d'exclamation notification) */

#infoUserPat dl {
	padding: 0.5em;
}

#infoUserPat dt {
	float: left;
	clear: left;
	width: 100px;
	text-align: right;
	font-family: droid_sansbold, "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #000;
}

#infoUserPat dt:after {
	content: " :";
}

#infoUserPat dd {
	margin: 0 0 0 110px;
	margin-left: 110px;
	padding: 0 0 0.5em 0;
}

#infoUserPat dd dd {
	/* infos patients dans la partie user*/
	margin: 0px;
}

#infoUserPat li{
	list-style: none;
}

.gridLogin th{
	font-weight: bold;
	color: #000;
	border-top: 0.25rem solid var(--panel-border);
}

/*
insi
*/

.score_green {
	color : green;
}

.score_red {
	color : var(--button-bg-suppr);
}


.comparaison .score_red {
	color:white
}
.comparaison .comparaison .score_red{
	display:none;
}

.comparaison:has(.score_red)
{
	background-color: #e04141;
	color:white;
}

.score_orangered {
	color : orangered;
}

.score_orange {
	color : orange
}

.score_white {
	color : white;
}

.score_black {
	color : black;
}

/* boutons associés au PJ : couleurs reprises sur la toolbar de type s1 du fwk */
button.pj_open, button.pj_delete{				
	min-height: 30px;
	cursor: pointer;
	padding: 1px 5px;
}

div.elt.pj-content{
	min-height: 32px;
	margin : 10px 0px 10px 20px;
	display: flex;
	align-items: center;
	gap: .25rem;

	.quest {
		flex: 1;
	}
}

.fade-in {
	opacity: 1;
	animation-name: fadeInOpacity;
	animation-duration: 500ms;
}

@keyframes fadeInOpacity {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes ringBell {
	0% { transform: rotate(0); }
	1% { transform: rotate(7deg); }
	3% { transform: rotate(-6.5deg); }
	5% { transform: rotate(6deg); }
	7% { transform: rotate(-5.5deg); }
	9% { transform: rotate(5deg); }
	11% { transform: rotate(-4.5deg); }
	13% { transform: rotate(4deg); }
	15% { transform: rotate(-3.5deg); }
	17% { transform: rotate(3deg); }
	19% { transform: rotate(-2.5deg); }
	21% { transform: rotate(2deg); }
	23% { transform: rotate(-1.5deg); }
	25% { transform: rotate(1deg); }
	27% { transform: rotate(-0.5deg); }
	29% { transform: rotate(0); }
	100% { transform: rotate(0); }
}

.noteTxtarea {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
}

.gridBar {
	display: flex;
	font-size: 1.4em;
	min-width: 4rem;
}

.gridBar button {
	color: var(--h3-link);
	text-decoration: none;
	font: 100% var(--stack);
	font-variation-settings: var(--fvs-bold);
	background-color: transparent;
	border: 0px;
	padding:0.1em;
}

.gridCards .gridBar button {
	padding:0.1em;
}

.questVisu, .questRun {
	height: 100%;
}

#unitPatientEC_subTs, #unitOutilsConfig {
	padding: 5px;
}

#unitPatientEC {
	padding: 0;

	.buttons-bar {
		justify-content: flex-end;
	}
}

.blzPopup button.bt-close {
	padding-bottom: 0.9em;
	text-indent: 0.9em;
	font-size: 1.2em;
}

#copyright {
	position: fixed;
	bottom: 5px;
	font-size: 0.8em;
	color: var(--text-color);
	z-index: 1000;
	/*display: flex;*/
	display: none;
	justify-content: center;
	align-items: center;	
	width: 100%;
}

#copyright a {
	background-color: var(--button-bg-reset);
}

#unitDossiersSuivis > div.tsTabBar {
	width: 100%;
}

.card-suivi {

	.card-suivi-header {
		display: grid;
    	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 160px;
		gap: .5rem;
		align-items: flex-start;

		.card-suivi-header-left {
			display: flex;
			flex-direction: column;
			gap: .5rem;

			.card-suivi-nom {
				display: flex;
				gap: .5rem;
				align-items: center;

				span {
					font-weight: bold;
					text-overflow: ellipsis;
					overflow: hidden;
				}
			}

			.card-suivi-tags {
				display: flex;
				gap: .5rem;
				flex-wrap: wrap;
			}
		}

		.card-suivi-motif, .card-suivi-depuis {
			border: 1px solid lightgrey;
			margin: .5rem 0;
			padding: .5rem;
			position: relative;

			&.invisible {
				visibility: hidden;
			}

			> span {
				position: absolute;
				text-transform: uppercase;
				top: -.6rem;
				background-color: var(--card-bg);
				z-index: 1;
				padding: 0 .25rem;
				color: grey;
			}

			> div {
				padding-top: .25rem;
				word-break: break-word;
			}
		}

		.card-suivi-right-infos {
			display: flex;
			align-items: center;
			justify-content: space-around;
			gap: .5rem;

			.card-suivi-depuis {
				flex: 1;
			}
		}

		.card-suivi-icon-doc {
			display: flex;
			align-items: flex-end;
			float: right;
			padding: .5rem 1rem;
			border-radius: 100px;
			background-color: #e0e0e0;
			transition: transform 0.2s ease;
			
			&:hover {
				transform: scale(1.05);
			}

			i {
				transform: rotate(0deg);
				transition: transform 0.2s ease;
			}
		}
	}

	.card-suivi-documents {
		max-height: 0;
		overflow-y: hidden;
		transition: max-height 0.2s ease;

		table {

			thead {
				background-color: transparent;
			}

			tbody tr {
				transition: background-color 0.2s ease-in-out;

				&:hover {
					background-color: #027A6F44;
				}

				&.selected {
					background-color: #027A6F88;

					td {
						background-color: initial;
					}
				}
			}
		}
	}
}

td div[class^="alrt_"] {
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 9px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 .1rem;
}

.suivi-visu-alertes {
	padding: .5rem 0;
	overflow-x: auto;

	thead {
		top: -5px;
	}

	tr {
		background-color: initial;
	}

	.tag-list {
		margin: .5rem 0;
	}
}

li.card.vac_LATE,
#evtVaccin_tsDetail fieldset.vac_LATE {
	background-color: var(--st-late);

	div.icon-vaccin-container i.fa {
		color: color-mix(in srgb, var(--st-late), black 15%);
	}
}

li.card.vac_DONE,
li.card.vac_COMPLET {
	background-color: var(--st-complete);

	div.icon-vaccin-container i.fa {
		color: color-mix(in srgb, var(--st-complete), black 15%);
	}
}

li.card.vac_TODO,
#evtVaccin_tsDetail fieldset.vac_TODO {
	background-color: var(--st-todo);

	div.icon-vaccin-container i.fa {
		color: color-mix(in srgb, var(--st-todo), black 15%);
	}
}

ul.vaccinInjections {
	list-style: none;
	display: flex;
	gap: .25rem;

	li {
		width: 1.25rem;
		height: 1.25rem;
		border-radius: 1rem;
		border: 2px solid var(--tag-info);
		background-color: var(--primary-white);
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 66%;
		color: var(--primary-white);
		transition: transform 0.2s ease;

		&.vaccinInjection:hover {
			transform: scale(1.2);
			cursor: help;
		}

		&.vaccinInjectionRecue {
			background-color: #01D26A;
		}

		&.vaccinInjectionSupplementaire {
			background-color: #F0A500;
			color: var(--primary-white);
		}
	}
}

.schema-vaccins-tags {
	display: flex;
	gap: 0.5rem;
	justify-content: space-between;
	flex-wrap: wrap;

	> ul {
		display: flex;
		flex-wrap: wrap;
		gap: 0.5rem;

		label {
			font-weight: bold;
		}
	}
}

.vaccin_edit_calendrier {
	float: right;
}

fieldset.vaccinHistoriqueEtats > div {
	width: 100%;
	height: fit-content;

	input.vaccinSwitchEtat ~ ul {
		max-height: 0;
		overflow: hidden;
	}

	input.vaccinSwitchEtat:checked ~ ul {
		max-height: 2000px;
		transition: max-height 0.5s ease;
		overflow: visible;
		margin-top: 0.5rem;
		margin-bottom: 0.5rem;
	}

	input.vaccinSwitchEtat:checked ~ legend::before {
		transform: rotate(90deg);
	}

	legend {
		cursor: default;
		
		&::before {
			content: '\0027A4';
			transition: 0.2s ease;
			display: inline-block;
			margin-right: 0.5em;
		}
	}

	fieldset > ul {
		border-left: 2px solid var(--tag-info);
		margin-left: .8rem;
		list-style: none;

		&:has(> li.no-change-vac) {
			border-left: 0;
		}

		> li:not(.no-change-vac) {
			position: relative;

			&::before {
				content: "";
				width: .5rem;
				height: .5rem;
				position: absolute;
				left: -1.45rem;
				top: 0.75rem;
				border-radius: 1rem;
				background-color: var(--primary-white);
				border: 2px solid var(--tag-info);
			}
		}
	}

	ul {
		display: flex;
		gap: .25rem;
		flex-direction: column;
		width: fit-content;

		li:not(.no-change-vac) {
			margin-left: 1rem;
			flex-direction: column;
			display: flex;
			width: 100%;
			background-color: var(--tag-info);
			padding: .5rem;
			border-radius: 5px;
		}
	}
}

.vaccinWarningPopup {
	color: var(--button-bg-suppr);
	font-weight: bold;
}

.dossier_attente_suivi{
	margin-left: 8px;
}

p.warning, div.warningbrouillon {
	margin-top: 10px;
	padding: 5px;
	color: white;
	background-color:Tomato; 

	b {
		font-weight: bold;
	}

	ul {
		padding: revert;
	}
}

#agendaDateRef{
	width:7em
}

#agendaConfigVue .elt label {
	text-wrap: nowrap;
	display: flex;
	align-items: center;
}

li.agendaConfig_vue span {
	display: flex;
	align-items: center;
}

/* niveau de gravité des facteurs de risque */
.alrt_G{
	background-color: #C00;
	color:#FFF;
}
.alrt_M{
	background-color: #e9c06f;
	color:#000;
}
.alrt_F{
	background-color: #FF0;
	color:#000;
}

.alrt_G,.alrt_M,.alrt_F,.alrt_none{
	width:15px;
	display: inline-block;
    text-align: center;
}


/* notification acteur */
header .btn .notificationExists i {
	color: var(--agenda-san-red-3);
}

/* badge de notification */
.notificationBadge {
	position: absolute;
	margin-left: 60%;
	margin-top: -0%;
	text-align:right;
	vertical-align:top;
	background-color: var(--agenda-san-red-3);
	line-height:1em;
	padding:5px;
	border-radius:10px;
	font-size:0.5em;
	z-index: 10;
}

.notificationUnread *{
	font-weight: bold;
}

.userNotif_checkAll span {
    padding-left: 7px !important;
}

.blink .fa-bell {
	display: inline-block;
	animation: ringBell 4s .5s ease-in-out infinite;
	transform-origin: 50% 4px;
}


.______login______ {}

.buttons-bar button.loginPSC{
	width:220px;
	height:60px;
	background-image:url("./img/psc/psc_off.svg?1");
	background-size: 220px;
	background-position:0px 0px;
	background-repeat:no-repeat;
	background-color: var(--primary-white);
	border: none;
}
.buttons-bar button.loginPSC:hover{
	background-image:url("./img/psc/psc_on.svg?1");
}

._______recherche_patient____{}



.card:has(dl.in-progress)
{
	border: 2px solid var(--alert);
}

.card .wrappedcard:has(dd.active)
{
	border: 2px solid var(--alert);
}

.card .wrappedcard:has(dd.in-progress,dd.active)
{
	border: 2px solid var(--alert);
}

.card dd.libedit {
	display: none;
}

dd.in-progress {
	padding-left: 2em;
    font-size: 90%;
	background-repeat: no-repeat;
    border-radius: 2rem;
    color: var(--body-bg);
    background-color: var(--alert);
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.1066 5.97999L9.92808 4.80148L2.16667 12.5629V13.7414H3.34517L11.1066 5.97999ZM12.2851 4.80148L13.4636 3.62298L12.2851 2.44446L11.1066 3.62298L12.2851 4.80148ZM4.03553 15.4081H0.5V11.8725L11.6958 0.676692C12.0213 0.351259 12.5489 0.351259 12.8743 0.676692L15.2314 3.03372C15.5568 3.35915 15.5568 3.88679 15.2314 4.21223L4.03553 15.4081Z' fill='white'/%3E%3C/svg%3E ");
	background-position-x: 8px;
	background-position-y: 3px;
}

dd.in-progress a {
	color: white;
}

.card {
	cursor: pointer;
}

.card:has(.wrappedcard) {
	cursor: unset;
}

.card .wrappedcard {
	cursor: pointer;
}

.cardClick:has(.wrappedcard) {
	cursor: unset;
}

.cardClick .wrappedcard {
	cursor: pointer;
}

.tag.title {
	display:block;
}

.tag.title:not(.in-progress) {
	background-color:unset;
}

.tag.title:not(.in-progress) a {
	background-color:unset;
	color: var(--h3-link);
	text-decoration: none;
	font: 100% var(--stack);
	font-variation-settings: var(--fvs-bold);
}

#unitEvtObservation_list .quest .elt-value {
	word-break: break-word;
}

#unitDossierListe .card dd:first-child {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .25rem;

	a {
		flex: 1;
		text-overflow: ellipsis;
		overflow: hidden;
		max-height: 5.4rem;
	}

	.gridBar {
		align-self: flex-start;
	}
}

div#unitEvtVaccin .gridCards1 div.tag-list {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

div#unitEvtVaccin .gridCards1 div.tag-list > div {
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
	z-index: 2;

	li.tag {
		font-variation-settings: var(--fvs-regular);
	}
}

dl.tag-list a {
	display:flex;
	gap: .25rem;
	align-items: center;
}

div#unitEvtVaccin li.card.active {
	border: 1px solid var(--shade-grey-1);
}

div#unitEvtVaccin .injectionVisu {

	> fieldset.data-group.contexte {
		margin-bottom: .5rem;

		fieldset.puce3 {
			display: flex;
			align-items: center;
			padding-top: 1rem;
			margin-bottom: .5rem;
		}

		&:first-child {
			margin-top: 1rem;
		}
	}
}

#unitEvtTttLap_content {
	margin-bottom: 0 !important;

	#unitEvtTttLap_content_ttt_page {
		height: 100%;
	}
}

.____________________eventVisu____________________{}

h2.cons{
	color: var(--h3-link);
	text-decoration: none;
	font: 100% var(--stack);
	font-variation-settings: var(--fvs-bold);
}

.____________________dossierList____________________{}
#unitDossierListe .card{max-height:200px}

/* ***** outilsFusion ***** */
#unitOutilsFusion .m-top-simple {
	margin-top: 0;
}
/* 2022-03-16 SANNOVAW-3791 : Tableau récapitulatif dans la demande de confirmation avant une fusion */
table.fusionRecap {
    width: 100%;
    margin-top: 2em;
    border-collapse: collapse;
}
table.fusionRecap caption {
    margin-bottom: 1em;
    font-weight: bold;
    text-align: left;
    text-decoration: underline; 
}
table.fusionRecap th, table.fusionRecap td {
    border: 1px solid #D0D0D0;
    padding: 2px;
}
table.fusionRecap th {
    text-align: left;
	font-weight: bold;
	color: black;
	text-transform: none;
}
table.fusionRecap thead {
    background-color: #D0D0D0;
}
table.fusionRecap td {
    vertical-align: top;
}
table.fusionRecap ul {
    margin-left: 20px;
}
table.fusionRecap ul + p {
    margin-top: 1em;
}

/* ***** outilsImport ***** */
.importNoticeRappro {
	margin: 1em 0;
}

/* ***** adminBem ***** */
#unitAdminBemEleve fieldset,
#unitAdminBemSession fieldset,
#unitAdminBemGestion fieldset {
	container-type: unset;
}
#unitAdminBemEleve .m-top-simple,
#unitAdminBemSession .m-top-simple,
#unitAdminBemGestion .m-top-simple {
	margin-top: 0;
}
#unitAdminBemEleve fieldset > .content,
#unitAdminBemSession fieldset > .content,
#unitAdminBemGestion fieldset > .content {
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	& fieldset > legend {
		padding-top: 0.5rem;
		padding-bottom: 0.25rem;
	}
	& fieldset > .content {
		padding-top: 0;
		padding-bottom: 0;
	}
}

/* Code à retirer à terme : Rustine sur la largeur du libellé des boutons radio */
#unitAdminBemGestion_popupModifDate fieldset.title-width-7 > div.along {
    grid-template-columns: 7rem auto;
    gap: 1em;
}
#unitAdminBemGestion_popupAjoutPatient fieldset.title-width-10 > div.along {
    grid-template-columns: 10rem auto;
    gap: 1em;
}

/* ***** dashboard ***** */
/* Voir si code utile à terme : Retirer une marge de 3em en-dessous des onglets du tableau de bord */
#unitDashboard .tsPage.hasTop.noBottom .tsTabPage {
	height: 100%;
}

/* Bouton Dropdown : Espace entre l'icône et le libellé */
div.ddMenu > ul > li > a > i.fa:first-child {
	margin-right: 0.5em;
}

/* Autocomplétion : Dimensionnement de la zone */
.tsPage.noTop.noBottom > div.autoComplete {
	height: auto;
}

/* Ajuster la largeur en fonction du padding latéral de 5px */
.tsPage.hasTop.hasBottom .tsTabPage {
	width: calc(100% - 10px);
}

.infobullespecifique {
	margin-left: -2px;
	padding-left: 2px;
}

#unitOutilsConfNova > .tsTabBar {
	display: none;
}

#unitPatientMesure {
	padding-top: 0;
}

form[id$="printQuest"] div.elt-value:has(> ul.boxMultiSel) {
	display: block;

	> .boxMultiSel {
		flex-wrap: wrap;
		gap: .25rem;

		li {
			list-style: none;
			margin-right: 0;
		}
	}
}

/* LE PARENT : Gère la disposition et l'espacement global */
.liste-conteneur {
    display: flex;
    flex-direction: column; /* Les éléments les uns sous les autres */
    gap: 15px;              /* Espace vide ENTRE le bas d'un élément et le haut du suivant */
}

/* L'ENFANT : Gère sa propre bordure */
.espacement-row {
    width: 100%;
    box-sizing: border-box;
    padding-bottom: 10px;
	padding-top: 10px;
    border-bottom: 1px dotted var(--shade-grey-4); /* Ajoutez une couleur pour voir la ligne */
}

/* Optionnel : Supprimer la ligne du tout dernier élément */
.espacement-row:last-child {
    border-bottom: none;
}

#unitCourrier_content, #unitEvtTttLap_content,
#unitEvtTttLap_popupSecure_tabHtml > div,
#unitDossierIdentite_visuPdf,
#unitDossierIdentite_visualisationCaf_questVisu {
	height: 100%;
}

#unitCourbeBiom_menu_quest form {
	gap: 0;

	fieldset {
		margin: 0;

		div {
			margin: 0;
		}
	}

	p {
		display: none;
	}
}

div#evtDM_tsDetail_fiche {
	display: flex;
	flex-direction: column;
	gap :.5rem;
}

/****** agenda / planning ***** */
#unitOutilsPlanif_tsDetail_semaine{
    padding:0;
}

#main {
	height: 100dvh;
}

@media (min-width: 62.5rem) {
	
	#main {
		display: flex;
		flex-direction: column;
		gap:.25rem;
	}

	#logoMenuButton {
		display: none;
	}

	#main > header {
		height: 60px;

		&:has(#wPatient > .ws:not(.invisible)) {
			height: 112px;

			~ #tabMain {
				height: calc(100% - 112px);
			}
		}
	}

	#tabMain {
		height:calc(100% - 60px);
	}
	
	div#unitEvtVaccin {
		display: flex;
	}
}

div.tsPage:has(>div.wrapper1-toolbar-top) {
	display: flex;
	flex-direction: column;

	>div.wrapper1-toolbar-top,
	>div.tsTabPage {
		height: auto;
		min-height: auto !important;
	}
}

/* --- Modale BEM : Choix de la date --- */
hr.bem-separateur-session {
    margin: 20px 0;
    border-top: 1px solid #ddd;
}

.bem-options-date-bilan {
    margin-top: 20px;
}

.bem-choix-date-container {
    margin-left: 20px;
}

.bem-choix-date-label {
    display: block;
    font-weight: normal;
}

.bem-choix-date-label.mb-10 {
    margin-bottom: 10px;
}

.bem-alerte-date-future {
    margin-bottom: 10px;
    padding: 5px;
    background-color: #f8d7da;
    border: 1px solid #f5c6cb;
    color: #721c24;
    border-radius: 4px;
    font-size: 0.9em;
}

/* -1px pour éviter que les 2 media queries min et max s'appliquent en même temps sur la taille exacte 62.5rem */
@media (max-width: calc(62.5rem - 1px)) {
	#main {
		overflow: auto;
	}

	#wPatient {
		.ws {
			padding: .5rem;
		}

		> div .navpanel {

			> div {
				flex-direction: column;
				align-items: flex-start ;
				gap: 0;

				> div:not(:last-child):first-child {
					max-width: 100% !important;
					width: 100%;
					border-right: none;

					span {
						max-width: calc(100% - 40px);
					}
				}

				> div#nav-infos-gro {
					gap: .5rem;
				}

				&:has(#nav-infos-gro div) > div:nth-child(2) {
					border-right: none;
				}
			}
		}
	}
}

@media (max-width: 84rem) {

	header.nova{
		position: sticky;
		z-index: 401;
		top:0px;

		.navigation {
			flex-direction: column;
			align-items: flex-start;
			gap: 0;
			padding: 0;
			justify-content: flex-start;

			#logoMenu {
				min-height: 60px;
				width: 25%;

				#logoMenuButton {
					display: flex;
				}
			}
		
			div:has(#navWs) {
				flex-direction: column;
				align-items: center;
				width: 100%;
				display: none;
				background-color: var(--primary-white);
				box-shadow: 0 12px 12px 1px rgba(0, 0, 0, 0.25);

				#navWs {
					flex-direction: column;
					width: 100%;
				}

				&.active {
					display: flex;
				}

				li {
					width: 100%;

					.ws {
						width: 100%;
					}
				}

				#mobileTopRightBtnBar {
					display: flex;
				}
			}
		
			#watermarkAndTopRightBar {
				position: absolute;
				top: 0;
				right: 0;
				height: 100%;
				width: 75%;
				align-items: flex-start;

				.envWatermark, ul .panel {
					display: none;
				}

				#topRightBtnBar {
					a {
						font-size: 1rem;
					}

					.fa-stack {
						width: 2em;
					}
				}

				&.active {
					flex-direction: column-reverse;
					height: 100dvh;
					width: fit-content;
					background-color: var(--primary-white);
					align-items: flex-end;
					box-shadow: -12px 0 12px 1px rgba(0, 0, 0, 0.25);
					z-index: 2;

					#topRightBtnBar {
						height: fit-content;
					}

					ul {
						height: 60px;

						.panel {
							display: block;
							position: absolute;
							top: 8rem;
							right: 0;

							div {
								border-right: 0 !important;
							}
						}
					}

					.envWatermark {
						display: block;
						margin-right: 1rem;
					}
				}
			}
		}
	}
}

@media (max-width: 45rem) {

	#topRightBtnBar {
		ul li:first-child {
			display: none;
		}
	}

	#unitDossiersSuivis {
		.card-suivi {
			.card-suivi-header {
				display: flex;
				flex-direction: column;
				align-items: stretch;

				.card-suivi-motif.invisible {
					display: none;
				}
			}
		}
	}

	#unitDossierListe {

		.gridTop {
			flex-direction: column;
			height: fit-content;

			.gridTopSwap {
				width: clamp(100%, 100%, 300px);

				ul {
					width: 100%;
					place-content: center;
					margin: 1rem 0;

					label {
						white-space: normal;
					}
				}
			}
		}

		.cardSort {
			flex-direction: column;

			.cardSortContainer {
				flex-wrap: wrap;
				place-content: center;
			}
		}

		.gridCards {
			display: flex;
			flex-direction: column;
		}
	}

	.top-content2 .buttons-bar {
		flex-wrap: wrap;

		.buttons-bar-separator {
			display: none;
		}
	}
}

/* Tabbar responsive
En fonction des modules, on définit différentes limites en cascade avant de basculer les boutons sous le titre */
@container (max-width: 900px) {

	#unitPatient_patientSE_page,
	#unitMedicalHistory_evtAtcdSimplifie_page {
		.top-content2 {
			flex-direction: column;
			gap: 0;

			.buttons-bar {
				flex-wrap: wrap;
			}
		}
	}
}

@container (max-width: 800px) {
	#unitOutilsFusion_tsCible_visu_page {
		.top-content2 {
			flex-direction: column;
			gap: 0;

			.buttons-bar {
				flex-wrap: wrap;
			}
		}
	}
}

@container (max-width: 730px) {

	#unitPatientEC_identite_page,
	#evtDM_tsDetail_fiche
	{
		.top-content2 {
			margin-bottom: 1rem;

			h2 {
				max-width: 100%;
			}
		}
	}
	
	#unitPatientEC_identite_page,
	#evtDM_tsDetail_fiche,
	#unitAdminBem,
	#unitTttEnCours,
	#unitEvtTttLap_tsTtSlave,
	#unitOutilsSectorisation_tsRue,
	#unitEvtPresc_tsDetail
	{
		.top-content2 {
			flex-direction: column;

			.buttons-bar {
				flex-wrap: wrap;
			}
		}
	}
}

@container (max-width: 500px) {
	
	.top-content2
	{
		flex-direction: column;
		gap: 0;

		.buttons-bar {
			flex-wrap: wrap;
		}
	}
}


/* Impression de l'agenda */

/* Impression graphique */

#unitAgendaImprimer_tsApercu_tab {
	overflow-x: auto;
}

/* Entête Date et Praticien */
div.agenda.printAgenda .col_1, div.agenda.printAgenda .col_0 {
	background-color: white;
	color: black;
}
/* Post-it */
div.agenda.printAgenda div.col.postit, div.agenda.printAgenda div.col.postitEmpty {
	background-color: white;
	cursor: default;
}
div.agenda.printAgenda, div.agenda.printAgenda .area {
	background-color: white;
	border: none;
}


/* Impression textuelle */

.printAgenda.textuel {
	float: none;
	background-color: white;
}
.printAgenda.textuel.normal {
	font-size: 14px;
}
.printAgenda.textuel.small {
	font-size: 11px;
}
.printAgenda.textuel.big {
	font-size: 18px;
}
.printAgenda.textuel .entete .titre {
    margin-bottom: 0.25em;
    font-size: 140%;
    font-weight: bold;
}
.printAgenda.textuel .entete .criteres {
    margin-bottom: 1em;
    font-size: 90%;
    list-style: square;
	margin-left: 20px;
}
.printAgenda.textuel .jour {
	border-top: 1px solid #888;
	margin-bottom: 1em;
}
.printAgenda.textuel .jour .titreJour {
	font-weight: bold;
	text-transform: capitalize;
	font-size: 120%;
	margin: 0.25em;
}
.printAgenda.textuel .jour .titrePraticien {
	font-weight: bold;
	text-transform: capitalize;
	font-size: 95%;
	margin: 0.25em;
}
.printAgenda.textuel .planification {
    border: 1px solid #ccc;
    margin: 0.5em 0.25em;
    border-radius: 0.5em;
    padding: 0.25em;
}
.printAgenda.textuel .planification .titrePlanif {
    color: #888;
    font-style: italic;
    font-size: 85%;
}
.printAgenda.textuel .planification .titrePlanif .centrePlanif,
.printAgenda.textuel .planification .titrePlanif .typeActivitePlanif {
    text-transform: uppercase;
}
.printAgenda.textuel .rdv {
	margin: 0.5em 0;
}
.printAgenda.textuel .rdv .ligne1 {
	font-weight: bold;
}
.printAgenda.textuel .rdv .priorite,
.printAgenda.textuel .legende .priorite {
	text-decoration: underline;
}
.printAgenda.textuel .rdv .dateNaissancePatient {
	font-weight: normal;
}
.printAgenda.textuel .legende {
    font-size: 85%;
    font-style: italic;
    margin-top: 3em;
}
.printAgenda.textuel .legende .priorite,
.printAgenda.textuel .legende .statut {
	font-weight: bold;
	font-style: normal;
}

header ul.btn i.fa-red{
	color: red;
}

/* Eléments importants */
.addEltImportant
{
	cursor: pointer;
	color: #D7336B;

	&:hover {
	 	color: black;
	}
}

.quest.exec.RG li.addEltImportant{
	display: block;
	float: right;
}

/* utilitaire */
.spacer_1{
	margin-left: 0.5em !important;
}
.spacer_2{
	margin-left: 1em !important;
}
.spacer_3{
	margin-left: 1.5em !important;
}
.spacer_4{
	margin-left: 2em !important;
}

.spacer_after_1{
	margin-right: 0.5em !important;
}

.sizer_80{
	font-size: 80% !important;
}
.sizer_120{
	font-size: 120% !important;
}
.sizer_140{
	font-size: 140% !important;
}
.color_red{
	color: red !important;
}

#evtDM_filtre_text_zone{
	display: flex;

	& label	{
		position: absolute;top:-100px;left:-100px;font-size: 0px;
	}

	& input	{
		margin-top: 0.5em;
		margin-left: 0.5em;
		margin-right: 0.5em;
		margin-bottom:0 !important;
		width: 100%;
	}
}

/* Onglet Observations et alertes */
/* Positionnement des boutons Supprimer et désactiver */
.obs > .elt.data-group.puce2.header.contexte {
	position: relative;
}

.obs > .elt.data-group.puce2.header.contexte > .bar-group.obsBoutons {
	position: absolute;
	top: 1rem;
	right: 1rem;
}

#unitPj_pnEvent > form.quest {
	overflow-y: auto;
}

.loginHeader {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

/*classe spécifique utilisés dans des questionnaires*/
div.patientLoaded  div{
	font-weight:bold;
}

/* 2021-02-26 SANNOVAW-3426 : Sélection des éléments à imprimer dans le dossier patient */
.patientDossier_titre {
	font-size: 1.4rem;
}

.patientDossier_titre, .patientDossier_sousTitre {
	color: var(--h3-link);
}

.patientDossier_printSelectAll {
	margin-top: var(--elt-space);
	margin-bottom: calc(2 * var(--elt-space));
}

.patientDossier_printSelectAllItems {
	padding-left: 0.75rem;
	font-size: 80%;
}

.patientDossier_printSelectCourbeBiometrique > span {
	width: 100%; /* Mettre la largeur à 100% pour le plein affichage des courbes */
}

@media print {
	.printDossier :is(.patientDossier_printSelectConsult,
		.patientDossier_printSelectChamp,
		.patientDossier_noPrint,
		.patientDossier_printSelectAll)
	{
		display: none;
	}
}

/* Modèles de courrier - Choix des balises */
.eltWithBalise:before {
	margin-right: 2%;
}

.eltWithBalise:before,
.eltWithBaliseDescrip:before {
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 17px;
	text-rendering: auto;
	content: "\f090";
	color:red;
}

.introQuest{
	text-align:center; 
	font-size:12px
}

/* Dans le cas de la recherche de balise pour les modèles de courrier, une colonne supplémentaire avec l'icône de sélection */
.quest.RG {
	/* Cas où l'icône s'ajoute à une grid déjà définie */
    & div.along.eltWithBalise[class*="title-width-"]:not(.title-width-0),
    & dl.data-list.simple div.eltWithBalise[class*="title-width-"]:not(.title-width-0) {
        grid-template-columns: 17px var(--title-width) auto;
    }
	& div.along.eltWithBalise.title-width-0,
    & dl.data-list.simple div.eltWithBalise.title-width-0 {
		grid-template-columns: 17px 0rem auto;
		gap: 0.5em;
	}
	/* Cas où l'icône s'ajoute en dehors d'une grid définie */
	& div.cb-block.eltWithBalise[class*="title-width-"],
    & fieldset.eltWithBalise[class*="title-width-"] {
		display: grid;
		grid-template-columns: 17px auto;
		gap: 1em;
		align-items: baseline;
	}
}

#formPj {
	gap: .5rem;
}

#unitEvtDM_pnType {
	display: flex;
	align-items: center;
	gap: 1rem;
}

/*
	ddmenu prescription type
*/
.ddMenuPrescType a{
	text-overflow: ellipsis;
	max-width: 40em;
	overflow: hidden;
	display: inline-block;
}

/* Pop-up - Listes à puces */
div.blzPopup:not(.std) ul {
	list-style: square;
	padding-left: 20px;
	margin-bottom: 1em;
}
div.blzPopup:not(.std) ul > li {
	font-size: 1em;
}