/* FSJP - Emplois du temps : affichage public */
.edt-wrap{max-width:1180px;margin:0 auto;font-size:16px;line-height:1.6;color:#16233a}
.edt-wrap,.edt-wrap *,.edt-wrap *::before,.edt-wrap *::after{box-sizing:border-box}
.edt-wrap .edt-head{background:linear-gradient(135deg,#123f7b,#2c6fb5);color:#fff;border-radius:16px;padding:28px 20px 30px;text-align:center}
.edt-wrap .edt-kicker{font-size:14px;opacity:.85;margin-bottom:4px}
.edt-wrap .edt-head h2{color:#fff;margin:0 0 12px;font-size:32px;line-height:1.4;font-weight:800;letter-spacing:0}
.edt-wrap .edt-year{display:inline-block;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:5px 18px;font-size:15px}

/* onglets (CSS pur, sans JavaScript) */
.edt-r{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.edt-tabs-level{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 14px}
.edt-tabs-level label{cursor:pointer;border:2px solid #c3d8ef;background:#fff;border-radius:14px;padding:12px 10px;text-align:center;display:flex;flex-direction:column;gap:0;transition:background .15s,border-color .15s}
.edt-tab-t{font-size:21px;font-weight:800;color:#123f7b;line-height:1.4}
.edt-tab-s{font-size:13px;color:#5b6b7f;letter-spacing:.3px}
#edt-lic:checked ~ .edt-tabs-level label[for="edt-lic"],#edt-mas:checked ~ .edt-tabs-level label[for="edt-mas"]{background:#123f7b;border-color:#123f7b}
#edt-lic:checked ~ .edt-tabs-level label[for="edt-lic"] span,#edt-mas:checked ~ .edt-tabs-level label[for="edt-mas"] span{color:#fff}
.edt-tabs-session{display:flex;justify-content:center;gap:4px;background:#eef3f9;border-radius:999px;padding:4px;width:max-content;max-width:100%;margin:0 auto 6px}
.edt-tabs-session label{cursor:pointer;border-radius:999px;padding:8px 20px;font-size:15px;font-weight:700;color:#123f7b}
#edt-aut:checked ~ .edt-tabs-session label[for="edt-aut"],#edt-pri:checked ~ .edt-tabs-session label[for="edt-pri"]{background:#fff;box-shadow:0 1px 3px rgba(20,40,70,.15)}
#edt-lic:focus-visible ~ .edt-tabs-level label[for="edt-lic"],#edt-mas:focus-visible ~ .edt-tabs-level label[for="edt-mas"],#edt-aut:focus-visible ~ .edt-tabs-session label[for="edt-aut"],#edt-pri:focus-visible ~ .edt-tabs-session label[for="edt-pri"]{outline:2px solid #2c6fb5;outline-offset:3px}
.edt-session-one{display:block;width:max-content;max-width:100%;margin:0 auto 6px;background:#eef3f9;border-radius:999px;padding:6px 20px;font-size:15px;font-weight:700;color:#123f7b}
.edt-panel{display:none}
#edt-lic:checked ~ #edt-aut:checked ~ .p-lic-aut,
#edt-lic:checked ~ #edt-pri:checked ~ .p-lic-pri,
#edt-mas:checked ~ #edt-aut:checked ~ .p-mas-aut,
#edt-mas:checked ~ #edt-pri:checked ~ .p-mas-pri{display:block}

/* sections et cartes */
.edt-wrap .edt-sec{display:flex;align-items:center;gap:12px;margin:26px 0 12px}
.edt-wrap .edt-sec h3{margin:0;font-size:19px;font-weight:800;color:#123f7b;letter-spacing:0;white-space:nowrap}
.edt-sec::after{content:"";flex:1;height:1px;background:#dbe5f1}
.edt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.edt-card{background:#fff;border:1px solid #dbe5f1;border-radius:14px;padding:16px;box-shadow:0 1px 3px rgba(20,40,70,.06);display:flex;flex-direction:column;gap:14px}
.edt-card-h{display:flex;gap:12px;align-items:center}
.edt-sem{flex:none;width:46px;height:46px;border-radius:12px;background:#123f7b;color:#fff;font-weight:800;font-size:16px;display:grid;place-items:center;direction:ltr}
.edt-sem.sm{width:30px;height:30px;font-size:13px;border-radius:8px}
.edt-title{font-weight:700;font-size:16.5px;line-height:1.5}
.edt-sub{font-size:13.5px;color:#5b6b7f}
.edt-btns{display:flex;flex-wrap:wrap;gap:8px}
.edt-wrap a.edt-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:9px 14px;border-radius:10px;border:1px solid #c3d8ef;background:#f4f7fb;color:#123f7b!important;font-weight:700;font-size:15px;line-height:1.3;text-decoration:none!important;transition:background .15s,color .15s}
.edt-wrap a.edt-btn:hover,.edt-wrap a.edt-btn:focus-visible{background:#123f7b;border-color:#123f7b;color:#fff!important}
.edt-wrap a.edt-btn-m{border-color:#f0d2a6;background:#fff8ee;color:#8a5200!important}
.edt-wrap a.edt-btn-m:hover,.edt-wrap a.edt-btn-m:focus-visible{background:#8a5200;border-color:#8a5200;color:#fff!important}
.edt-ic{flex:none}
.edt-soon{color:#93a0b0;font-style:italic;font-size:14px}
.edt-mrows{display:flex;flex-direction:column;gap:12px}
.edt-mrow{border-top:1px dashed #e4ebf3;padding-top:12px}
.edt-mlabel{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#5b6b7f;margin-bottom:8px}
.edt-empty{text-align:center;background:#f4f7fb;border:1px dashed #c3d8ef;border-radius:14px;padding:34px 18px;color:#5b6b7f;font-size:16px;margin-top:18px}
.edt-note{margin-top:28px;background:#f4f7fb;border:1px solid #dbe5f1;border-radius:12px;padding:14px 16px;font-size:15px;line-height:1.8}

@media (max-width:600px){
	.edt-wrap .edt-head{padding:22px 14px 24px}
	.edt-wrap .edt-head h2{font-size:25px}
	.edt-tab-t{font-size:18px}
	.edt-grid{grid-template-columns:1fr}
	.edt-wrap a.edt-btn{flex:1 1 calc(50% - 8px)}
}
