@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700;800&display=swap');
/* Thème institutionnel commun aux écrans de travail enseignants. */
body.ens-theme{--rdc-blue:#c8102e;--rdc-blue-d:#a70d26;--rdc-red:#b31933;--rdc-yellow:#ffca05;--ink:#242424;--muted:#626262;--bg:#f5f3ef;--surface:#fff;--line:#dedbd6;--radius:0;--radius-sm:0;--shadow:none;--shadow-sm:none;--bs-primary:#c8102e;--bs-primary-rgb:200,16,46;--bs-link-color:#ac1029;--bs-link-hover-color:#7f0a1e;--bs-border-color:#dedbd6;font-family:'DM Sans',sans-serif;color:#242424;background:#f5f3ef}
.ens-theme h1,.ens-theme h2,.ens-theme h3,.ens-theme h4,.ens-theme .ens-authtitle{font-family:Manrope,sans-serif;letter-spacing:-.035em}.ens-theme .ens-strip,.ens-theme .ens-authcard-strip{height:7px;background:linear-gradient(to right,#c8102e 80%,#ffca05 80%)}.ens-theme .ens-strip span,.ens-theme .ens-authcard-strip span{display:none}.ens-theme .ens-topbar{box-shadow:none;border-bottom:1px solid #dedbd6}.ens-theme .ens-brand img{border:0;border-radius:0;padding:0}.ens-theme .ens-brand-title{font-family:Manrope,sans-serif;font-weight:800;color:#242424}.ens-theme .ens-brand-sub{font-size:10px;letter-spacing:.09em;text-transform:uppercase}.ens-theme .ens-topbar-inner{gap:10px;padding-top:10px;padding-bottom:10px}.ens-theme .ens-nav a{font-size:13px;padding:12px 9px;border-radius:0}.ens-theme .ens-nav a:hover{background:#f5f3ef;color:#ac1029}.ens-theme .ens-nav a.active{color:#ac1029}.ens-theme .ens-nav a.active:after{background:#c8102e;border-radius:0;bottom:2px}.ens-theme .ens-avatar{background:#f8e6ea;color:#ac1029}.ens-theme .ens-profile .dropdown-toggle{border-radius:0;background:#f5f3ef;max-width:220px}.ens-theme .ens-profile .dropdown-toggle>.d-md-inline{max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ens-theme .dropdown-menu{border-radius:0;border-color:#dedbd6;box-shadow:0 8px 24px #24242414!important}.ens-theme .dropdown-item:active{background:#c8102e}.ens-theme .ens-burger{border-radius:0;background:#f5f3ef}.ens-theme .ens-logout-visible{order:4;white-space:nowrap;color:#242424;font-weight:600;font-size:12px;padding:9px 12px;border:1px solid #b7b3ad;text-decoration:none}.ens-theme .ens-logout-visible:hover{background:#f5f3ef;color:#ac1029}
.ens-theme .ens-main{padding:24px 0 36px}.ens-theme .ens-page-head{border-left:4px solid #ffca05;padding-left:16px;margin-bottom:20px}.ens-theme .ens-page-head h1{font-size:clamp(24px,2.5vw,32px);font-weight:800}.ens-theme .ens-page-head p{font-size:14px}.ens-theme .ens-card,.ens-theme .card{border:1px solid #dedbd6;border-top:4px solid #ffca05;border-radius:0;box-shadow:none;background:#fff}.ens-theme .ens-card{padding:20px}.ens-theme .ens-tile:hover{transform:none;border-color:#c8102e;box-shadow:none}.ens-theme .ens-tile-ico{border-radius:0;background:#f9e8eb;color:#ac1029}.ens-theme .ens-tile h3{font-size:17px}.ens-theme .ens-tile-badge,.ens-theme .ens-pill,.ens-theme .ens-status,.ens-theme .badge{border-radius:3px}.ens-theme .ens-pill-ok,.ens-theme .ens-status.ok{background:#e8f4ec;color:#215b38}.ens-theme .ens-banner{background:#fff5cc;border-bottom:1px solid #dfcc87;color:#684b00}.ens-theme .ens-banner-inner{padding:10px 16px;font-size:13px}.ens-theme .ens-empty{padding:28px 16px}.ens-theme .ens-empty i{color:#ac1029;opacity:.55}.ens-theme .ens-empty-inline,.ens-theme .ens-loading{background:#f8f7f4;border-radius:0}.ens-theme .ens-footer{color:#626262;background:#fff;padding:20px}
.ens-theme .ens-btn,.ens-theme .btn{border-radius:0;min-height:40px}.ens-theme .ens-btn:hover{transform:none}.ens-theme .ens-btn-primary{background:#c8102e;color:#fff;box-shadow:none}.ens-theme .ens-btn-primary:hover{background:#a70d26;filter:none;box-shadow:none}.ens-theme .ens-btn-accent{background:#ffca05;color:#242424;box-shadow:none}.ens-theme .ens-btn-accent:hover{background:#ffdc55;filter:none}.ens-theme .ens-btn-ghost-dark:hover{background:#f5f3ef;color:#242424}.ens-theme .btn-primary{--bs-btn-bg:#c8102e;--bs-btn-border-color:#c8102e;--bs-btn-hover-bg:#a70d26;--bs-btn-hover-border-color:#a70d26;--bs-btn-active-bg:#8c1025;--bs-btn-active-border-color:#8c1025;--bs-btn-disabled-bg:#c8102e;--bs-btn-disabled-border-color:#c8102e}.ens-theme .btn-outline-primary{--bs-btn-color:#ac1029;--bs-btn-border-color:#ac1029;--bs-btn-hover-bg:#ac1029;--bs-btn-hover-border-color:#ac1029;--bs-btn-active-bg:#ac1029;--bs-btn-active-border-color:#ac1029}.ens-theme .text-primary{color:#ac1029!important}.ens-theme .bg-primary,.ens-theme .text-bg-primary{background:#c8102e!important;color:#fff!important}
.ens-theme .ens-field,.ens-theme .form-control,.ens-theme .form-select{border-radius:0;border-color:#aaa6a0;background-color:#fff;color:#242424;font-size:16px}.ens-theme .ens-field:focus,.ens-theme .form-control:focus,.ens-theme .form-select:focus{border-color:#ac1029;box-shadow:0 0 0 3px #c8102e20}.ens-theme input[type=checkbox],.ens-theme input[type=radio]{accent-color:#c8102e}.ens-theme .form-check-input:checked{background-color:#c8102e;border-color:#c8102e}.ens-theme .ens-label{color:#545454;font-size:12px}.ens-theme .ens-selected{background:#fff6d5;border-color:#dec879;border-radius:0}.ens-theme .ens-results{border-radius:0}.ens-theme .ens-results li:hover{background:#ac1029}.ens-theme .ens-step{border-radius:0;background:#f8f7f4}.ens-theme .ens-step.active{background:#fff5cc;border-color:#bc982b;color:#614900}.ens-theme .ens-step.active span{background:#c8102e}.ens-theme .ens-choice,.ens-theme .ens-course{border-radius:0}.ens-theme .ens-choice:hover{background:#fff9e5;border-color:#c2a541;box-shadow:none}.ens-theme .ens-partie{border-radius:2px;background:#f8f7f4}.ens-theme .ens-partie:has(input:checked){background:#fff5cc;border-color:#bc982b;color:#614900}.ens-theme .ens-tronc-badge{background:#f3e9e0;color:#704124;border-radius:2px}.ens-theme .ens-selection-summary span{background:#f1ede5;border-radius:2px}.ens-theme .ens-table th,.ens-theme .table>thead{background:#f5f3ef;color:#545454}.ens-theme .ens-table tfoot th{background:#fff5cc}.ens-theme .table{--bs-table-border-color:#dedbd6;--bs-table-striped-bg:#f8f7f4;--bs-table-hover-bg:#fff9e5}.ens-theme .table-light{--bs-table-bg:#f5f3ef}.ens-theme .modal-content,.ens-theme .modal-header,.ens-theme .alert{border-radius:0}.ens-theme .modal-header.bg-primary{background:#c8102e!important}.ens-theme .swal2-popup{border-radius:0}.ens-theme .swal2-styled.swal2-confirm{background:#c8102e!important;border-radius:0}.ens-theme .swal2-styled.swal2-cancel{border-radius:0}.ens-theme .pagination .page-link{color:#ac1029;border-radius:0}.ens-theme .pagination .active>.page-link{background:#ac1029;border-color:#ac1029;color:#fff}
.ens-theme :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #ac1029;outline-offset:3px}.ens-theme .ens-skip{position:absolute;left:-9999px}.ens-theme .ens-skip:focus{left:16px;top:10px;z-index:150;background:#fff;padding:10px}.ens-theme .ens-grid>*{min-width:0}.ens-theme .ens-actions .ens-btn{white-space:normal}.ens-theme [id]{scroll-margin-top:95px}
/* Connexion et obtention des accès : portrait et formulaire dans un même cadre. */
.ens-theme .ens-public-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px max(20px,calc((100vw - 1140px)/2));background:#fff;border-bottom:1px solid #dedbd6}.ens-theme .ens-public-header>a{font:800 18px Manrope,sans-serif;color:#242424;text-decoration:none}.ens-theme .ens-public-header nav{display:flex;flex-wrap:wrap;gap:20px;font-size:13px}.ens-theme .ens-public-header nav a{color:#ac1029;text-decoration:none}.ens-theme .ens-public-header nav a:hover{text-decoration:underline}.ens-theme .ens-auth{background:none;display:grid;grid-template-columns:.9fr 1fr;align-items:stretch;justify-content:normal;flex:none;max-width:1080px;width:calc(100% - 40px);padding:0;margin:28px auto;gap:0}.ens-theme .ens-auth:before{content:'';display:block;background:#242424 url('../img/inscription/enseignant-classe.png') center 30%/cover no-repeat;min-height:510px;border-bottom:5px solid #ffca05}.ens-theme .ens-authcard{max-width:none!important;border:1px solid #dedbd6;border-top:5px solid #ffca05;border-radius:0;box-shadow:none;padding:28px 36px}.ens-theme .ens-authcard-strip{display:none}.ens-theme .ens-authlogo img{border-radius:0}.ens-theme .ens-authtitle{color:#242424;font-weight:800;font-size:28px}.ens-theme .ens-authsub{color:#626262}.ens-theme .ens-authcard a{color:#ac1029}.ens-theme .ens-authlogo{margin-bottom:16px}
@media(min-width:992px) and (max-width:1250px){.ens-theme .ens-topbar-inner{flex-wrap:wrap}.ens-theme .ens-nav{order:5;flex-basis:100%;justify-content:flex-start}.ens-theme .ens-brand{margin-right:auto}.ens-theme .ens-profile .dropdown-toggle{max-width:200px}}
@media(max-width:991.98px){.ens-theme .ens-nav.open{max-height:55vh;overflow-y:auto}.ens-theme .ens-nav a.active{background:#fff5cc;border-left-color:#c8102e}.ens-theme .ens-burger{order:4}.ens-theme .ens-logout-visible{order:3}.ens-theme .ens-profile{order:2}.ens-theme .ens-topbar-inner{gap:8px}.ens-theme .ens-brand{margin-right:auto}.ens-theme .ens-nav{order:5}.ens-theme .ens-brand-title{font-size:16px}}
@media(max-width:700px){.ens-theme .ens-auth{grid-template-columns:1fr;width:calc(100% - 32px);margin:20px auto}.ens-theme .ens-auth:before{display:none}.ens-theme .ens-authcard{padding:24px 20px}.ens-theme .ens-public-header{padding:12px 16px;flex-wrap:wrap;gap:10px}.ens-theme .ens-main{padding:20px 0 28px}.ens-theme .ens-card{padding:16px}.ens-theme .ens-page-head{padding-left:12px}.ens-theme .ens-brand img{width:36px;height:36px}.ens-theme .ens-profile .dropdown-toggle{padding:5px}.ens-theme .ens-profile .dropdown-toggle>.d-md-inline{display:none!important}.ens-theme .ens-logout-visible{padding:8px;font-size:11px}.ens-theme .ens-topbar-inner{padding:8px 12px}.ens-theme .ens-brand-title{font-size:14px}.ens-theme .ens-brand{gap:6px}.ens-theme .ens-steps{gap:6px}.ens-theme .ens-step{font-size:13px}.ens-theme .ens-form-row{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.ens-theme *{transition:none!important;scroll-behavior:auto!important}}
@media(max-width:700px){.ens-theme .ens-topbar .ens-profile{display:none}}
