.tec-month-wrap { --gap:10px; max-width:100%; overflow-x:auto; position:relative; }
.tec-month-header { display:flex; align-items:center; gap:.75rem; margin-bottom:.5rem; }
.tec-month-header h3 { margin:0 auto; text-transform:capitalize; }
.tec-nav { display:inline-flex; width:2rem; height:2rem; align-items:center; justify-content:center; border:1px solid #e3e3e3; border-radius:6px; text-decoration:none; }
.tec-jump { margin-left:auto; display:flex; gap:.5rem; align-items:center; }
.tec-grid { display:grid; grid-template-columns: repeat(7, 1fr); gap: var(--gap); min-width:700px; }
.tec-cell { border:1px solid #e3e3e3; padding:.5rem; min-height:90px; background:#fff; }
.tec-head { background:#f6f6f6; text-align:center; font-weight:600; min-height:40px; }
.tec-day { position:relative; }
.tec-day-number { position:absolute; top:.35rem; right:.5rem; font-size:1rem; opacity:.65; }
.tec-events { list-style:none!important; margin:1.1rem 0 0; padding:0!important; display:flex; flex-direction:column; gap:.35rem; }
.tec-event { line-height:1.2; }
.tec-event-link { text-decoration:none; }
.tec-event-time { display:block; opacity:.8; }
.has-events { background:#fbfdff; }
.is-today { outline:2px solid #0073aa; outline-offset:-2px; background:#f0f8ff; }
.tec-day.is-attended { background:rgba(253, 135, 0, 0.2)!important;}
.tec-day.is-attended .tec-event-title{color: #000;}

.tec-month-wrap.tec-loading::after{
	content:'Chargement...';
	position:absolute; inset:0;
	display:flex; align-items:center; justify-content:center;
	background:rgba(255,255,255,.7);
	font-weight:600;
}
.tec-jump select {
	width: fit-content;
	min-width: inherit;
	max-width: none;
	padding-right: 40px;
}
@media (max-width:700px){
	.tec-event-link { font-size:.85rem; }
	.tec-event-time { font-size:10px; }
	.tec-month-header h3 { font-size:1rem; }
	.tec-nav { width:1.8rem; height:1.8rem; }
}
