/* Diagnostic Culturel : styles du flux front */

.dc-front {
	max-width: 880px;
	margin: 0 auto;
}

.dc-front .dc-retour {
	margin-bottom: 0.4em;
}

.dc-front .dc-aide {
	color: #555d66;
	font-size: 0.92em;
}

/* Notices */

.dc-front .dc-note {
	padding: 10px 14px;
	margin: 12px 0;
	border-radius: 4px;
	border-left: 4px solid #2271b1;
	background: #f0f6fc;
}

.dc-front .dc-note-success {
	border-left-color: #00610c;
	background: #d7f0db;
}

.dc-front .dc-note-warning {
	border-left-color: #996800;
	background: #fcf9e8;
}

.dc-front .dc-note-error {
	border-left-color: #8a1f11;
	background: #fbeaea;
}

/* Barre d'etapes */

.dc-front .dc-etapes {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 14px 0 22px;
}

.dc-front .dc-etape {
	padding: 7px 13px;
	border: 1px solid #c3c4c7;
	border-radius: 18px;
	text-decoration: none;
	color: #1d2327;
	background: #f6f7f7;
	font-size: 0.92em;
}

.dc-front .dc-etape-courante {
	background: #2271b1;
	border-color: #2271b1;
	color: #fff;
	font-weight: 600;
}

.dc-front .dc-etape-verrouillee {
	color: #a7aaad;
	background: #fff;
}

/* Tableaux */

.dc-front .dc-table {
	width: 100%;
	border-collapse: collapse;
	margin: 12px 0 20px;
}

.dc-front .dc-table th,
.dc-front .dc-table td {
	border: 1px solid #dcdcde;
	padding: 8px 10px;
	text-align: left;
	vertical-align: top;
}

.dc-front .dc-table th {
	background: #f6f7f7;
}

.dc-front .dc-table-serree {
	max-width: 520px;
}

.dc-front .dc-table-ocai {
	max-width: 520px;
}

.dc-front .dc-table-ocai input[type="number"] {
	width: 90px;
}

.dc-front #dc-schein-table input[type="text"],
.dc-front #dc-schein-table textarea {
	width: 100%;
}

.dc-front #dc-schein-table input[type="number"] {
	width: 70px;
}

/* Formulaires */

.dc-front .dc-formulaire input[type="text"],
.dc-front .dc-formulaire textarea,
.dc-front .dc-formulaire select {
	max-width: 480px;
	width: 100%;
}

.dc-front .dc-groupe {
	border: 1px solid #dcdcde;
	border-radius: 4px;
	padding: 10px 14px;
	margin: 12px 0;
}

.dc-front .dc-groupe legend {
	font-weight: 600;
	padding: 0 6px;
}

.dc-front .dc-groupe label {
	display: block;
	margin: 4px 0;
}

/* Boutons */

.dc-front .dc-bouton {
	display: inline-block;
	padding: 8px 16px;
	border: 1px solid #2271b1;
	border-radius: 4px;
	background: #fff;
	color: #2271b1;
	text-decoration: none;
	cursor: pointer;
	font-size: 0.95em;
}

.dc-front .dc-bouton-principal {
	background: #2271b1;
	color: #fff;
	font-weight: 600;
}

.dc-front .dc-bouton:disabled,
.dc-front button.dc-launch:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

/* Sommes OCAI */

.dc-front .dc-sum-row td {
	background: #f6f7f7;
}

.dc-front .dc-sum {
	font-weight: 600;
	padding: 2px 8px;
	border-radius: 3px;
}

.dc-front .dc-sum.dc-ok {
	color: #00610c;
	background: #d7f0db;
}

.dc-front .dc-sum.dc-ko,
.dc-front .dc-ko {
	color: #8a1f11;
	background: #fbeaea;
}

/* Suivi temps reel des modules agent (memes classes que l'admin) */

.dc-front .dc-progress {
	margin: 10px 0 20px;
	padding: 12px 16px;
	background: #fff;
	border: 1px solid #dcdcde;
	border-left: 4px solid #2271b1;
	border-radius: 2px;
}

.dc-front .dc-progress .dc-taches {
	margin: 0;
	padding: 0;
	list-style: none;
}

.dc-front .dc-progress .dc-taches li {
	margin: 6px 0;
	padding: 2px 0;
}

.dc-front .dc-progress .dc-picto {
	display: inline-block;
	width: 20px;
	text-align: center;
}

.dc-front .dc-progress .dc-tache-faite {
	color: #00610c;
}

.dc-front .dc-progress .dc-tache-en-cours {
	color: #2271b1;
	font-weight: 600;
}

.dc-front .dc-progress .dc-tache-attente {
	color: #a7aaad;
}

.dc-front .dc-progress .dc-tache-erreur {
	color: #8a1f11;
	font-weight: 600;
}

.dc-front .dc-progress .dc-detail {
	margin: 8px 0 0;
	padding: 6px 8px;
	border-radius: 3px;
	background: #f0f6fc;
}

.dc-front .dc-progress .dc-detail.dc-ko {
	background: #fbeaea;
}

.dc-front .dc-spinner {
	display: inline-block;
	width: 12px;
	height: 12px;
	border: 2px solid #2271b1;
	border-top-color: transparent;
	border-radius: 50%;
	animation: dc-rotation 0.8s linear infinite;
	vertical-align: middle;
}

@keyframes dc-rotation {
	to { transform: rotate(360deg); }
}

/* Cartouches issus des renders partages avec l'admin */

.dc-front .notice {
	padding: 8px 12px;
	margin: 10px 0;
	border-left: 4px solid #996800;
	background: #fcf9e8;
}

.dc-front .notice-error {
	border-left-color: #8a1f11;
	background: #fbeaea;
}

.dc-front .description {
	color: #555d66;
	font-size: 0.92em;
}

.dc-front table.widefat {
	width: 100%;
	border-collapse: collapse;
	margin: 12px 0 20px;
}

.dc-front table.widefat th,
.dc-front table.widefat td {
	border: 1px solid #dcdcde;
	padding: 8px 10px;
	text-align: left;
	vertical-align: top;
}

.dc-front table.widefat th {
	background: #f6f7f7;
}

.dc-front .ul-disc {
	list-style: disc;
	margin-left: 1.4em;
}

.dc-front button.dc-launch {
	display: inline-block;
	padding: 8px 16px;
	border: 1px solid #2271b1;
	border-radius: 4px;
	background: #2271b1;
	color: #fff;
	font-weight: 600;
	cursor: pointer;
}

/* ------------------------------------------------------------------ */
/* Refonte 0.6.1 : typographie, cartes de restitution, synthese        */
/* ------------------------------------------------------------------ */

.dc-front {
	line-height: 1.6;
	color: #1d2327;
}

.dc-front h2 {
	margin: 0.6em 0 0.5em;
}

.dc-front h3 {
	margin: 1.6em 0 0.5em;
	padding-bottom: 6px;
	border-bottom: 2px solid #e0e0e0;
}

.dc-front h4 {
	margin: 1.3em 0 0.4em;
	color: #2271b1;
}

.dc-front .dc-table th,
.dc-front .dc-table td,
.dc-front table.widefat th,
.dc-front table.widefat td {
	line-height: 1.5;
	padding: 10px 12px;
}

.dc-front table.widefat tbody tr:nth-child(even) td {
	background: #fafafa;
}

/* Cartes de restitution (partagees avec l'admin) */

.dc-front .dc-cartes {
	display: grid;
	gap: 14px;
	margin: 12px 0 24px;
}

.dc-front .dc-carte {
	border: 1px solid #dcdcde;
	border-left: 4px solid #2271b1;
	border-radius: 6px;
	padding: 14px 18px;
	background: #fff;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.dc-front .dc-carte-entete {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	margin-bottom: 8px;
}

.dc-front .dc-carte-titre {
	font-size: 1.05em;
	font-weight: 600;
	margin: 0 0 6px;
}

.dc-front .dc-carte-fiche {
	margin-left: auto;
	font-size: 0.85em;
}

.dc-front .dc-badge {
	display: inline-block;
	padding: 2px 11px;
	border-radius: 12px;
	background: #f0f6fc;
	color: #2271b1;
	font-size: 0.85em;
	font-weight: 600;
	white-space: nowrap;
}

.dc-front .dc-badge-ecart {
	background: #fcf9e8;
	color: #996800;
}

.dc-front .dc-badge-type {
	background: #f6f7f7;
	color: #50575e;
}

.dc-front .dc-badge-prio-1 {
	background: #2271b1;
	color: #fff;
}

.dc-front .dc-badge-prio-2 {
	background: #72aee6;
	color: #1d2327;
}

.dc-front .dc-badge-prio-3 {
	background: #f0f6fc;
	color: #2271b1;
}

.dc-front .dc-champ {
	margin: 6px 0;
}

.dc-front .dc-champ-libelle {
	display: inline-block;
	font-weight: 600;
	color: #50575e;
	margin-right: 6px;
}

.dc-front .dc-postulat {
	font-style: italic;
	border-left: 3px solid #dcdcde;
	padding-left: 10px;
	color: #3c434a;
}

.dc-front .dc-synthese {
	margin: 10px 0 24px;
	padding: 18px 22px;
	background: #f6f7f7;
	border: 1px solid #dcdcde;
	border-left: 4px solid #00610c;
	border-radius: 6px;
	line-height: 1.65;
	font-size: 1.02em;
}

@media (max-width: 600px) {
	.dc-front .dc-carte-fiche {
		margin-left: 0;
	}
	.dc-front .dc-table,
	.dc-front table.widefat {
		display: block;
		overflow-x: auto;
	}
}
