/* ===== Palette UDH : bleu #005793 / #187AC8, orange #e06f24 ===== */

.ens-header h1,.ens-header h2{text-align:center;color:#005793;font-weight:700;margin-bottom:1.8rem;}

/* Grille de cartes enseignants */
.ens-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(270px,1fr));
    gap:1.8rem;
}
.ens-card{
    display:flex;flex-direction:column;
    border:1px solid #e5e5e5;border-radius:8px;overflow:hidden;
    background:#fff;
    transition:box-shadow .3s,transform .3s;
}
.ens-card:hover{box-shadow:0 10px 30px rgba(0,0,0,.15);transform:translateY(-4px);}
.ens-card__photo{aspect-ratio:1/1;background:#f1f1f1;overflow:hidden;}
.ens-card__photo img{width:100%;height:100%;object-fit:cover;}
.ens-card__placeholder{
    width:100%;height:100%;display:flex;align-items:center;justify-content:center;
    font-size:2.6rem;font-weight:700;color:#fff;background:#005793;
}
.ens-card__placeholder--lg{width:160px;height:160px;border-radius:8px;font-size:3rem;}

/* Bandeau bleu bas de carte */
.ens-card__body{padding:1.2rem;background:#005793;color:#fff;display:flex;flex-direction:column;gap:.7rem;}
.ens-card__name{margin:0;font-size:1.1rem;color:#fff;text-transform:uppercase;font-weight:700;line-height:1.3;}

/* Cadre professionnel : grade (badge orange) + titre */
.ens-card__pro{display:flex;flex-direction:column;gap:.4rem;}
.ens-card__grade{
    display:inline-block;width:fit-content;font-size:.78rem;font-weight:600;
    padding:.25rem .7rem;background:#e06f24;color:#fff;border-radius:4px;
}
.ens-card__titre{font-size:.9rem;color:#e6effa;font-weight:600;}

/* Domaines de recherche en bulles */
.ens-card__domaines{display:flex;flex-wrap:wrap;gap:.4rem;}
.ens-bubble{
    display:inline-block;font-size:.72rem;padding:.2rem .6rem;
    background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.35);
    border-radius:20px;line-height:1.4;
}
.ens-bubble--more{background:#187AC8;border-color:#187AC8;font-weight:700;}

/* Bouton Voir détail */
.ens-card__btn{
    display:block;text-align:center;margin-top:.4rem;
    padding:.55rem 1rem;background:#e06f24;color:#fff;
    border-radius:5px;text-decoration:none;font-weight:600;font-size:.9rem;
    transition:background .25s;
}
.ens-card__btn:hover{background:#fff;color:#005793;}

/* Fiche enseignant (page détail) */
.ens-profile{display:flex;gap:2rem;align-items:flex-start;flex-wrap:wrap;margin-bottom:1.5rem;
    background:#f1f1f1;padding:1.5rem;border-radius:8px;}
.ens-profile__photo img{width:180px;height:180px;object-fit:cover;border-radius:8px;}
.ens-profile h1{color:#005793;}
.ens-profile__grade{display:inline-block;font-weight:600;color:#fff;background:#e06f24;padding:.2rem .7rem;border-radius:4px;margin:.3rem 0;}
.ens-profile__titre{color:#555;font-weight:600;}
.ens-section{margin-top:2rem;}
.ens-section h2{
    font-size:1.35rem;color:#005793;
    border-left:5px solid #e06f24;padding-left:.8rem;margin-bottom:.9rem;
}
.ens-bio{line-height:1.8;}
/* Domaines en bulles sur la fiche aussi */
.ens-domaines-full{display:flex;flex-wrap:wrap;gap:.5rem;}
.ens-domaines-full .ens-bubble{background:#005793;color:#fff;border-color:#005793;font-size:.85rem;padding:.3rem .8rem;}
.ens-articles{list-style:none;padding:0;}
.ens-articles li{padding:.7rem 0;border-bottom:1px solid #e5e5e5;}
.ens-articles__titre{font-weight:600;color:#333;}
.ens-articles a{color:#187AC8;}

/* ===== Back office (léger, indépendant) ===== */
.adm-wrap{max-width:960px;margin:2rem auto;padding:0 1rem;font-family:system-ui,sans-serif;}
.adm-table{width:100%;border-collapse:collapse;}
.adm-table th,.adm-table td{padding:.6rem;border-bottom:1px solid #eee;text-align:left;}
.adm-form label{display:block;margin:.8rem 0 .2rem;font-weight:600;}
.adm-form input,.adm-form select,.adm-form textarea{width:100%;padding:.5rem;border:1px solid #ccc;border-radius:6px;}
.adm-btn{display:inline-block;padding:.5rem 1rem;background:#005793;color:#fff;border:0;border-radius:6px;text-decoration:none;cursor:pointer;}
.adm-btn--ghost{background:#fff;color:#005793;border:1px solid #005793;}
.adm-alert{padding:.7rem 1rem;background:#e6f4ea;border:1px solid #b7e0c4;border-radius:6px;margin-bottom:1rem;}
.adm-err{color:#b00;font-size:.85rem;}