@charset "UTF-8";

/* ========================= DESKTOP ========================= */
.desktop{
	display:block;
}

table{
	width:100%;
	border-collapse:collapse;
}

td,th{
	border:1px solid #ccc;
	padding:10px;
	text-align:center;
}

td > a {
	border: 1px solid black;
	border-radius: 8px;
	padding: 5px 20px;
}
td > a:hover {
	background: #6C6C6C;
	color: #FFF;
}

.ok{background:#d8ffd8;}
.warn{background:#fff3b0;}
.full{background:#ffd8d8;}
.off{background:#eee;color:#999;}

/* ========================= MOBILE ACCORDEON ========================= */
.mobile{
	display:none;
}

.salle{
	border: 1px solid #ddd;
	border-radius: 8px;
	margin-bottom: 12px;
	overflow: hidden;
}
.salle-header{
	padding:12px;
	background:#f5f5f5;
	font-weight:bold;
	cursor:pointer;
	display:flex;
	justify-content:space-between;
}
.salle-content{
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease;
}
.salle-content.open{
	max-height: 2000px;
}

.creneau{
	border:1px solid #ddd;
	border-radius:8px;
	margin-bottom:12px;
	overflow:hidden;
}
.creneau-header{
	padding:12px;
	background:#f5f5f5;
	font-weight:bold;
	cursor:pointer;
	display:flex;
	justify-content:space-between;
}
.creneau-content{
	display:none;
	padding:10px;
}
.creneau-content.open{
	display:block;
}

.mission{
	border:1px solid #ddd;
	border-radius:8px;
	margin-bottom:12px;
	overflow:hidden;
}
.mission-header{
	padding:12px;
	background:#e9ecef;
	font-weight:bold;
	cursor:pointer;
	display:flex;
	justify-content:space-between;
}
.mission-content{
	max-height:0;
	overflow:hidden;
	transition:max-height .3s ease;
}
.mission-content.open{
	max-height:5000px;
}

.creneau-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
}
.creneau-info {
	display: flex;
	align-items: center;
	gap: 8px;
}

.card{
	border:1px solid #ddd;
	border-radius:6px;
	padding:12px;
	margin-bottom:10px;
}

.btn{
	display:block;
	width: 105px;
	margin-top:8px;
	padding:10px;
	text-align:center;
	background:#28a745;
	color:#fff;
	text-decoration:none;
	border-radius:6px;
}
.btn-full{
	background:#999;
}
.btn-mini {
	padding: 6px 10px;
	font-size: 12px;
	border-radius: 6px;
	white-space: nowrap;
}

.badge_salle{
	float: right;
    background:#333;
    color:#fff;
    font-size:12px;
    padding:3px 8px;
    border-radius:12px;
    margin-left:10px;
}
.badge_creneau{
	float: right;
    background:#333;
    color:#fff;
    font-size:12px;
    padding:3px 8px;
    border-radius:12px;
    margin-left:10px;
}

.creneau{
    margin: 10px 0px 10px 10px;
    border-left:3px solid #ddd;
}

/* ================= STATUT SALLE & CRENEAUX ================= */
.salle-header.empty			, .creneau-header.empty			{
	background:#e2e3e5;
	color:#6c757d;
}
.salle-header.empty_nobook	, .creneau-header.empty_nobook	{
	background:#f8d7da;
	color:#721c24;
}
.salle-header.partial		, .creneau-header.partial		{
	background:#fff3cd;
	color:#856404;
}
.salle-header.full			, .creneau-header.full			{
	background:#d4edda;
	color:#155724;
}

/* ========================= BOUTON form_multi ========================= */
.multi-register{
    display: block;
    position: relative;
    float: left;
    width: 100%;
}
.btn-multi{
    display: block;
    position: relative;
    margin: 10px 2%;
	padding: 10px 2%;
    text-align: center;
	font-weight: bold;
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #e9ecef;
}
.btn-multi:hover {
	background: #6C6C6C;
	color: #FFF;
}

/* ========================= RESPONSIVE ========================= */
@media(max-width:768px){
	.desktop{display:none;}
	.mobile{display:block;}
}
/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
