/*
 * UCJ Business — CSS front namespacé `.ucj-`.
 *
 * Aucun style global sur body/table/button/a/input sans sélecteur `.ucj-*`
 * parent. Design fonctionnel et minimal ; l'intégration visuelle finale
 * appartient à T007.
 */

.ucj-front {
	box-sizing: border-box;
	max-width: 100%;
}

.ucj-table {
	width: 100%;
	border-collapse: collapse;
	margin: 1em 0;
}

.ucj-table th,
.ucj-table td {
	padding: 0.5em 0.75em;
	border: 1px solid #ddd;
	text-align: left;
}

.ucj-table th {
	background: #f5f5f5;
}

.ucj-table .ucj-status {
	font-weight: 600;
}

.ucj-cards {
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
	margin: 1em 0;
}

.ucj-card {
	border: 1px solid #ddd;
	border-radius: 4px;
	padding: 0.75em 1em;
	min-width: 140px;
	background: #fff;
}

.ucj-card-label {
	font-size: 0.85em;
	color: #666;
}

.ucj-card-value {
	font-size: 1.25em;
	font-weight: 700;
	margin-top: 0.2em;
}

.ucj-title {
	margin: 1.5em 0 0.5em;
	font-size: 1.2em;
}

.ucj-note {
	color: #666;
}

.ucj-state {
	border: 1px solid #ddd;
	border-radius: 4px;
	padding: 1em;
	margin: 1em 0;
	background: #fafafa;
}

.ucj-state .ucj-button {
	margin-top: 0.5em;
}

.ucj-error {
	border: 1px solid #e07a7a;
	background: #fdeaea;
	border-radius: 4px;
	padding: 0.75em 1em;
	margin: 1em 0;
}

.ucj-button {
	display: inline-block;
	padding: 0.5em 1em;
	background: #333;
	color: #fff;
	text-decoration: none;
	border-radius: 3px;
	border: 0;
	cursor: pointer;
}

.ucj-button:hover {
	background: #111;
}

/* Intégration Simple Gagnant/Placé dans le design de la cible. */
.ucj-sgp {
	color: #526256;
}

.ucj-sgp .ucj-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin: 1.5rem 0 1.75rem;
}

.ucj-sgp .ucj-card {
	min-width: 0;
	padding: 1.15rem 1.25rem;
	border: 1px solid #eadfca;
	border-radius: 16px;
	background: linear-gradient(145deg, #fffefa 0%, #f8f0df 100%);
	box-shadow: 0 6px 16px rgba(77, 60, 27, 0.08);
}

.ucj-sgp .ucj-card-label {
	color: #42634f;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.ucj-sgp .ucj-card-value {
	margin-top: 0.35rem;
	color: #146b3a;
	font-size: clamp(1.35rem, 3vw, 1.9rem);
	line-height: 1.15;
}

.ucj-sgp .ucj-table-wrap {
	max-width: 100%;
	overflow-x: auto;
	border: 1px solid #e9dfcd;
	border-radius: 14px;
	background: #fffefa;
	box-shadow: 0 6px 18px rgba(77, 60, 27, 0.07);
}

.ucj-sgp .ucj-table {
	min-width: 900px;
	margin: 0;
	border: 0;
	border-collapse: separate;
	border-spacing: 0;
	background: transparent;
}

.ucj-sgp .ucj-table th {
	padding: 0.85rem 0.8rem;
	border: 0;
	border-bottom: 1px solid #0f5a31;
	background: #146b3a;
	color: #fffefa;
	font-size: 0.82rem;
	font-weight: 700;
	white-space: nowrap;
}

.ucj-sgp .ucj-table td {
	padding: 0.75rem 0.8rem;
	border: 0;
	border-bottom: 1px solid #eee6d8;
	color: #526256;
	font-size: 0.9rem;
	white-space: nowrap;
}

.ucj-sgp .ucj-table tbody tr:nth-child(even) td {
	background: #f8f1e4;
}

.ucj-sgp .ucj-table tbody tr:last-child td {
	border-bottom: 0;
}

@media (max-width: 700px) {
	.ucj-sgp .ucj-cards {
		grid-template-columns: 1fr;
		gap: 0.75rem;
		margin-top: 1.1rem;
	}

	.ucj-sgp .ucj-card {
		padding: 1rem 1.1rem;
	}

	.ucj-sgp .ucj-table-wrap {
		margin-right: 0;
	}
}

/* Intégration Tableau des rendements dans le design de la cible. */
.ucj-rendements {
	color: #526256;
}

.ucj-rendements .ucj-title {
	color: #146b3a;
	font-size: clamp(1.35rem, 3vw, 1.75rem);
}

.ucj-rendements .ucj-cards {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
	margin: 1.25rem 0 1.5rem;
}

.ucj-rendements .ucj-card {
	min-width: 0;
	padding: 1rem 1.1rem;
	border: 1px solid #eadfca;
	border-radius: 14px;
	background: linear-gradient(145deg, #fffefa 0%, #f8f0df 100%);
	box-shadow: 0 6px 16px rgba(77, 60, 27, 0.08);
}

.ucj-rendements .ucj-card-label {
	color: #42634f;
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.ucj-rendements .ucj-card-value {
	margin-top: 0.35rem;
	color: #146b3a;
	font-size: clamp(1.15rem, 2.5vw, 1.55rem);
	line-height: 1.15;
}

.ucj-rendements .ucj-table {
	margin: 0 0 1.5rem;
	border: 1px solid #e9dfcd;
	border-radius: 14px;
	background: #fffefa;
	box-shadow: 0 6px 18px rgba(77, 60, 27, 0.07);
	overflow-x: auto;
	white-space: nowrap;
}

.ucj-rendements .ucj-table th {
	border-color: #0f5a31;
	background: #146b3a;
	color: #fffefa;
	font-size: 0.82rem;
	font-weight: 700;
	white-space: nowrap;
}

.ucj-rendements .ucj-table td {
	border-color: #eee6d8;
	color: #526256;
	font-size: 0.9rem;
	white-space: nowrap;
}

.ucj-rendements .ucj-table tbody tr:nth-child(even) td {
	background: #f8f1e4;
}

.ucj-rendements .ucj-note {
	margin-top: -0.75rem;
	margin-bottom: 1.5rem;
	font-size: 0.9rem;
}

@media (max-width: 700px) {
	.ucj-rendements .ucj-cards {
		grid-template-columns: 1fr;
		gap: 0.75rem;
	}

	.ucj-rendements .ucj-table {
		display: block;
		max-width: 100%;
		min-width: 0;
	}

	.ucj-rendements .ucj-table thead,
	.ucj-rendements .ucj-table tbody {
		display: table;
		min-width: 720px;
		width: 100%;
	}
}
