:root{--ink:#10213b;--blue:#173b68;--orange:#c97832;--action:#a9521e;--paper:#f7f8fa;--white:#fff;--muted:#667085;--line:#d8dee8;--green:#18704c;--danger:#a83b31;--surface:#fff;--surface-soft:#f1f4f7;--blue-soft:#eef4fb;--accent-soft:#fbf3ec;--radius:18px;--shadow:0 14px 40px rgba(16,33,59,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}a{color:inherit}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #8a4300;outline-offset:3px}.skip-link{position:fixed;left:12px;top:12px;z-index:10000;padding:10px 14px;background:#10213b;color:#fff;border-radius:10px;text-decoration:none;font-weight:850;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.nav{display:flex;align-items:center;justify-content:space-between;padding:16px clamp(18px,5vw,72px);background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{font-weight:950;letter-spacing:.08em;text-decoration:none}.brand-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.brand-logo img{display:block;width:214px;max-width:46vw;height:auto}.brand-logo.compact img{width:190px}.hero-brand{display:flex;align-items:center;gap:14px;margin-bottom:18px}.hero-brand img{width:min(420px,82vw);height:auto;filter:drop-shadow(0 10px 24px rgba(0,0,0,.08))}@media(max-width:620px){.brand-logo img{width:174px;max-width:52vw}.hero-brand img{width:min(330px,90vw)}}.navlinks{display:flex;gap:18px;align-items:center}.navlinks a{text-decoration:none;font-weight:750}.hero{background:linear-gradient(140deg,#10213b 0%,#1c4a83 62%,#275e9d 100%);color:white;padding:clamp(64px,10vw,118px) 6vw}.hero-inner,.wrap{max-width:1120px;margin:auto}.eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);padding:7px 12px;border-radius:999px;font-size:13px;font-weight:850;letter-spacing:.04em}.hero h1{font-size:clamp(48px,9vw,96px);line-height:.95;margin:18px 0 20px;letter-spacing:-.04em}.hero p{font-size:clamp(19px,2.2vw,25px);max-width:840px;color:#edf5ff}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:0;border-radius:16px;padding:14px 20px;background:var(--action);color:white;text-decoration:none;font-weight:850;cursor:pointer;font:inherit}.btn:hover{filter:brightness(.96)}.btn:disabled{opacity:.58;cursor:not-allowed}.btn.alt{background:white;color:var(--blue)}.btn.ghost{background:transparent;color:var(--blue);border:1px solid var(--line)}.wrap{padding:42px 20px}.section-title{font-size:clamp(30px,4vw,48px);line-height:1.08;margin:0 0 12px;color:var(--blue)}.lead{font-size:19px;color:var(--muted);max-width:830px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:24px}.card{background:white;border:1px solid rgba(226,232,240,.8);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.card h3{margin-top:0;color:var(--blue)}.number{font-size:40px;font-weight:950;color:var(--orange);line-height:1}.price-box{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;align-items:center}.price{font-size:clamp(46px,7vw,74px);font-weight:950;line-height:1;color:var(--blue);letter-spacing:-.05em}.old{color:var(--muted);text-decoration:line-through}.notice{padding:16px 18px;border-left:5px solid var(--orange);background:#fff8ef;border-radius:10px}.form{display:grid;gap:12px}.form label{font-weight:800}.form input{width:100%;padding:14px;border:1px solid #cfd8e5;border-radius:10px;font:inherit;background:white}.msg{min-height:22px;font-size:14px}.msg.err{color:var(--danger)}.msg.ok{color:var(--green)}.modules{counter-reset:module}.module-card:before{counter-increment:module;content:"0" counter(module);display:block;color:var(--orange);font-weight:950;letter-spacing:.08em}.footer{text-align:center;padding:34px 20px;color:var(--muted)}.tiny{font-size:13px;color:var(--muted)}[hidden]{display:none!important}@media(max-width:720px){.navlinks a.hide-mobile{display:none}.price-box{grid-template-columns:1fr}.hero{padding-top:70px}}.theseia-settings-button{position:fixed;right:18px;bottom:18px;z-index:60;border:1px solid var(--line);border-radius:999px;padding:10px 14px;background:rgba(255,255,255,.97);color:var(--blue);font:inherit;font-size:13px;font-weight:850;box-shadow:0 8px 24px rgba(16,33,59,.12);cursor:pointer;backdrop-filter:blur(8px)}.theseia-settings-button:hover{transform:translateY(-1px)}.theseia-settings-button:focus-visible,.theseia-settings-panel button:focus-visible,.theseia-setting-row input:focus-visible{outline:3px solid rgba(255,121,0,.35);outline-offset:2px}.theseia-settings-panel{position:fixed;right:18px;bottom:72px;z-index:61;width:min(360px,calc(100vw - 28px));padding:18px;background:white;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 50px rgba(16,33,59,.18)}.theseia-settings-head{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:18px;color:var(--blue)}.theseia-settings-head button{border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer;color:var(--muted)}.theseia-setting-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:13px 0;border-top:1px solid var(--line);cursor:pointer}.theseia-setting-row span{display:grid;gap:2px}.theseia-setting-row small{color:var(--muted);line-height:1.35}.theseia-setting-row input{width:22px;height:22px;accent-color:var(--orange);flex:0 0 auto}.theseia-large-text body{font-size:18px}.theseia-large-text .tiny{font-size:15px}.theseia-reduced-motion *{scroll-behavior:auto!important;transition:none!important;animation:none!important}@media(max-width:620px){.theseia-settings-button{right:12px;bottom:12px;padding:8px 11px;font-size:12px}.theseia-settings-panel{right:12px;bottom:58px}}@media print{.theseia-settings-button,.theseia-settings-panel{display:none!important}}
.student-nav{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(16,33,59,.04)}.student-nav-inner{max-width:1220px;margin:auto;padding:10px 20px;display:flex;align-items:center;gap:18px}.student-nav .brand-logo{flex:0 0 auto}.student-nav-menu{margin-left:auto;display:flex;align-items:center;gap:6px}.student-nav-menu a,.student-nav-menu button{min-height:44px;display:inline-flex;align-items:center;padding:9px 11px;border-radius:10px;text-decoration:none;font-weight:780;color:#173b68;background:transparent;border:0;cursor:pointer;white-space:nowrap}.student-nav-menu a:hover,.student-nav-menu button:hover{background:#eef4fb}.student-nav-menu a[aria-current="page"]{background:#173b68;color:#fff}.student-menu-toggle{display:none;margin-left:auto;min-height:44px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#173b68;padding:8px 12px;font-weight:850;cursor:pointer}.student-progress-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#fff8ef;color:#6f3500;font-size:13px;font-weight:850;border:1px solid #f2c99f}.student-progress-chip span{width:8px;height:8px;background:#c97832;border-radius:50%}.theseia-large-text body{font-size:18px;line-height:1.72}.theseia-large-text .student-nav-menu a,.theseia-large-text .student-nav-menu button{font-size:16px}.theseia-high-contrast{--paper:#fff;--muted:#465468;--line:#aeb9c8;--shadow:0 0 0 1px rgba(16,33,59,.12)}.theseia-high-contrast .card{border-color:#9eabbc}.theseia-high-contrast .notice{border-left-color:#8a4300;background:#fff5e8}@media(max-width:1040px){.student-nav-inner{flex-wrap:wrap}.student-menu-toggle{display:inline-flex;align-items:center;gap:8px}.student-progress-chip{margin-left:auto}.student-nav-menu{display:none;order:3;width:100%;margin-left:0}.student-nav-menu.open{display:block}.student-nav-menu a,.student-nav-menu button{width:100%;justify-content:flex-start}.student-nav-menu .student-logout{width:100%}}@media(max-width:520px){.student-nav-inner{padding:9px 10px;gap:8px}.student-progress-chip{display:inline-flex;padding:6px 8px;font-size:12px}.student-nav-menu{grid-template-columns:1fr}.student-nav-menu .student-logout{grid-column:auto}}@media(max-width:350px){.student-menu-toggle span:last-child{display:none}.student-menu-toggle{padding:8px 11px}.student-nav .brand-logo.compact img{width:150px;max-width:46vw}}.student-nav + main .toolbar{top:72px}.student-nav-menu a,.student-nav-menu button,.student-menu-toggle{touch-action:manipulation}.student-nav-menu a:focus-visible,.student-nav-menu button:focus-visible,.student-menu-toggle:focus-visible{outline:3px solid #8a4300;outline-offset:2px}@media(max-width:900px){.student-nav + main .toolbar{top:64px}}@media print{.student-nav,.skip-link{display:none!important}.student-nav + main .toolbar{top:0}}
/* En-tête étudiant sobre et accès direct */
.student-nav-inner{padding:8px 20px;gap:14px}.student-nav .brand-logo.compact img{width:162px}.student-progress-chip{display:none!important}.student-nav-menu{gap:2px}.student-nav-menu a,.student-nav-menu button{min-height:40px;padding:8px 10px;border-radius:7px;font-weight:720;color:#33465f}.student-nav-menu a:hover,.student-nav-menu button:hover{background:#f4f6f9;color:#173b68}.student-nav-menu a[aria-current="page"]{background:transparent;color:#173b68;box-shadow:inset 0 -2px 0 #c97832}.student-secondary{display:none!important}.student-more{position:relative;flex:0 0 auto}.student-more-toggle{width:40px;height:40px;border:0;border-radius:8px;background:transparent;color:#33465f;font-weight:900;letter-spacing:2px;cursor:pointer}.student-more-toggle:hover,.student-more-toggle.active{background:#f4f6f9;color:#173b68}.student-more-menu{position:absolute;right:0;top:44px;z-index:60;min-width:180px;background:#fff;border:1px solid #e6eaf0;border-radius:8px;padding:3px 10px;box-shadow:0 8px 20px rgba(16,33,59,.08)}.student-more-menu a,.student-more-menu button{display:flex;width:100%;min-height:40px;align-items:center;padding:9px 2px;border:0;border-radius:0;background:transparent;text-decoration:none;color:#33465f;font-weight:650;text-align:left;cursor:pointer}.student-more-menu a+a,.student-more-menu a+button,.student-more-menu button+a,.student-more-menu button+button{border-top:1px solid #eef1f5}.student-more-menu a:hover,.student-more-menu button:hover{background:transparent;color:#173b68}.student-menu-toggle{border:0;background:transparent;padding:7px 9px}.quick-access{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 8px}.quick-access a,.tool-jumps a{display:inline-flex;align-items:center;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#173b68;text-decoration:none;font-weight:720}.quick-access a:hover,.tool-jumps a:hover{border-color:#b8c4d2;background:#f8fafc}.quick-access-label{width:100%;font-size:13px;font-weight:850;letter-spacing:.03em;color:var(--muted);text-transform:uppercase}.tool-jumps{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px}.tool-jumps a{font-size:14px}#constructeur,#vera,#audit,#ressources{scroll-margin-top:82px}
@media(max-width:1040px){.student-more{display:none}.student-secondary{display:flex!important}.student-nav-inner{padding:8px 14px;gap:10px}.student-nav-menu{padding:2px 0 6px;border-top:1px solid var(--line);background:#fff}.student-nav-menu.open{display:block}.student-nav-menu a,.student-nav-menu button{min-height:42px;padding:10px 4px;border:0!important;border-radius:0!important;background:transparent!important;color:#33465f;font-weight:680}.student-nav-menu a+a,.student-nav-menu a+button,.student-nav-menu button+a,.student-nav-menu button+button{border-top:1px solid #eef1f5!important}.student-nav-menu a:hover,.student-nav-menu button:hover{background:transparent!important;color:#173b68}.student-nav-menu a[aria-current="page"]{background:transparent!important;color:#173b68;font-weight:820;box-shadow:none}.student-nav-menu a[aria-current="page"]::before{content:"";width:3px;height:18px;border-radius:3px;background:#c97832;margin-right:9px}.student-nav-menu .student-logout{justify-content:flex-start;color:#68758a;font-weight:650;margin-top:2px}.student-menu-toggle{min-height:40px;border:0;background:transparent;color:#33465f;padding:6px 8px;border-radius:6px}.student-menu-toggle:hover{background:#f6f8fb}}
@media(max-width:520px){.student-nav .brand-logo.compact img{width:148px}.student-menu-toggle span:last-child{display:none}.student-menu-toggle{width:40px;justify-content:center}}
/* Navigation personnelle : formation dans le menu principal, compte sous le prénom */
.student-mobile-personal,.student-mobile-divider{display:none!important}.student-account{position:relative;flex:0 0 auto;margin-left:4px}.student-account-toggle{min-height:40px;display:inline-flex;align-items:center;gap:7px;border:0;border-radius:7px;background:transparent;color:#33465f;padding:8px 9px;font:inherit;font-weight:760;cursor:pointer}.student-account-toggle:hover,.student-account-toggle.active{background:#f4f6f9;color:#173b68}.student-account-arrow{font-size:14px;color:#7a8798;transform:translateY(-1px)}.student-account-menu{position:absolute;right:0;top:44px;z-index:65;min-width:190px;background:#fff;border:1px solid #e6eaf0;border-radius:8px;padding:3px 10px;box-shadow:0 8px 20px rgba(16,33,59,.08)}.student-account-menu a,.student-account-menu button{display:flex;width:100%;min-height:40px;align-items:center;padding:9px 2px;border:0;border-radius:0;background:transparent;text-decoration:none;color:#33465f;font:inherit;font-weight:650;text-align:left;cursor:pointer}.student-account-menu a:hover,.student-account-menu button:hover{color:#173b68}.student-account-menu a+a,.student-account-menu a+button,.student-account-menu button+a{border-top:1px solid #eef1f5}.student-account-separator{display:block;height:1px;background:#e9edf2;margin:3px 0}.student-account-logout{color:#68758a!important}.student-account-toggle:focus-visible,.student-account-menu a:focus-visible,.student-account-menu button:focus-visible{outline:3px solid #8a4300;outline-offset:2px}@media(max-width:1040px){.student-account{display:none}.student-mobile-personal{display:flex!important}.student-mobile-divider{display:block!important;height:1px;background:#e9edf2;margin:6px 0}.student-mobile-identity{display:block;padding:10px 4px 6px;color:#173b68}.student-mobile-identity strong{display:block;font-size:14px;font-weight:820}.student-mobile-identity small{display:block;margin-top:2px;color:#7a8798;font-size:12px}.student-nav-menu .student-mobile-personal{color:#55657a;font-weight:650}.student-nav-menu .student-mobile-settings{width:100%;justify-content:flex-start}.student-nav-menu .student-logout{margin-top:0}}
/* Refonte navigation étudiant v46 */
.student-nav{background:rgba(255,255,255,.99);border-bottom:1px solid #e7ebf0;box-shadow:0 3px 14px rgba(16,33,59,.035)}
.student-nav-inner{max-width:1240px;margin:0 auto;padding:9px 24px;display:grid;grid-template-columns:170px minmax(0,1fr) auto;align-items:center;gap:24px}
.student-nav .brand-logo{justify-self:start}.student-nav .brand-logo.compact img{width:154px;max-width:none}
.student-nav-menu{justify-self:center;margin:0;display:flex;align-items:center;justify-content:center;gap:4px;min-width:0}
.student-nav-menu .student-menu-item{position:relative;min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;border:0;border-radius:9px;background:transparent;color:#34475f;text-decoration:none;font:inherit;font-size:14px;font-weight:720;line-height:1;white-space:nowrap;cursor:pointer;transition:color .14s ease,opacity .14s ease}
.student-nav-menu .student-menu-item:hover{background:transparent;color:#173b68}
.student-nav-menu .student-menu-item[aria-current="page"]{background:transparent;color:#173b68;box-shadow:none;font-weight:780}
.student-nav-menu .student-menu-item[aria-current="page"]::after{content:"";position:absolute;left:50%;bottom:3px;width:22px;height:1px;border-radius:999px;background:rgba(23,59,104,.32);transform:translateX(-50%)}
.student-nav-icon{width:18px;height:18px;flex:0 0 18px;display:block;opacity:.82}.student-nav-menu .student-menu-item[aria-current="page"] .student-nav-icon{opacity:1}
.student-menu-label{display:block;line-height:1.15}
.student-account{position:relative;justify-self:end;margin:0;flex:0 0 auto}
.student-account-toggle{min-height:42px;display:inline-flex;align-items:center;gap:8px;padding:5px 9px 5px 6px;border:1px solid transparent;border-radius:10px;background:transparent;color:#34475f;font:inherit;font-size:14px;font-weight:760;cursor:pointer;white-space:nowrap;transition:background .14s ease,border-color .14s ease}
.student-account-toggle:hover,.student-account-toggle.active,.student-account-toggle.open{background:#f5f7fa;border-color:#e7ebf0;color:#173b68}
.student-account-avatar{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#edf2f7;color:#173b68;font-size:13px;font-weight:850;text-transform:uppercase}
.student-account-name{max-width:118px;overflow:hidden;text-overflow:ellipsis}
.student-account-chevron{width:16px;height:16px;color:#7a8798;transition:transform .15s ease}.student-account-toggle.open .student-account-chevron{transform:rotate(180deg)}
.student-account-menu{position:absolute;right:0;top:49px;z-index:65;width:238px;min-width:238px;background:#fff;border:1px solid #e4e9ef;border-radius:12px;padding:7px;box-shadow:0 14px 34px rgba(16,33,59,.12)}
.student-account-panel-title{padding:8px 10px 9px;color:#738094;font-size:11px;font-weight:820;letter-spacing:.07em;text-transform:uppercase}
.student-account-menu a,.student-account-menu button{width:100%;min-height:42px;display:flex;align-items:center;gap:10px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:#34475f;text-decoration:none;font:inherit;font-size:14px;font-weight:670;text-align:left;cursor:pointer}
.student-account-menu a:hover,.student-account-menu button:hover{background:#f5f7fa;color:#173b68}
.student-account-menu a+a,.student-account-menu a+button,.student-account-menu button+a{border-top:0}
.student-account-menu .student-nav-icon{width:18px;height:18px;flex-basis:18px;color:#65758a}
.student-account-separator{display:block;height:1px;background:#e8ecf1;margin:6px 4px}
.student-account-logout{color:#67768a!important}
.student-mobile-section-title,.student-mobile-divider,.student-mobile-personal{display:none!important}
.student-menu-toggle{justify-self:end;margin:0;min-height:42px;display:none;align-items:center;gap:8px;padding:0 11px;border:1px solid #e1e6ec;border-radius:9px;background:#fff;color:#34475f;font:inherit;font-size:14px;font-weight:760;cursor:pointer}.student-menu-toggle svg{width:20px;height:20px}.student-menu-toggle:hover,.student-menu-toggle.active{background:#f5f7fa;color:#173b68}
@media(max-width:1120px) and (min-width:1041px){.student-nav-inner{grid-template-columns:150px minmax(0,1fr) auto;gap:14px;padding-left:16px;padding-right:16px}.student-nav .brand-logo.compact img{width:144px}.student-nav-menu .student-menu-item{padding:0 9px;gap:6px;font-size:13px}.student-nav-icon{width:17px;height:17px;flex-basis:17px}.student-account-name{max-width:82px}}
@media(max-width:1040px){
.student-nav-inner{padding:9px 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center}
.student-nav .brand-logo.compact img{width:152px;max-width:48vw}.student-menu-toggle{display:inline-flex}.student-account{display:none}
.student-nav-menu{grid-column:1/-1;justify-self:stretch;display:none;width:100%;margin:2px 0 0;padding:8px 0 12px;border-top:1px solid #edf0f4;background:#fff}.student-nav-menu.open{display:block}
.student-mobile-section-title{display:flex!important;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 10px 6px;color:#7a8798;font-size:11px;font-weight:850;letter-spacing:.075em;text-transform:uppercase}.student-mobile-section-title small{color:#173b68;font-size:12px;font-weight:800;letter-spacing:0;text-transform:none}
.student-mobile-personal{display:flex!important}.student-mobile-divider{display:block!important;height:1px;background:#e8ecf1;margin:8px 0 3px}
.student-nav-menu .student-menu-item{width:100%;min-height:47px;display:flex;justify-content:flex-start;gap:12px;padding:0 10px;border:0!important;border-radius:8px!important;background:transparent!important;color:#3a4b62;font-size:14px;font-weight:680;box-shadow:none!important}
.student-nav-menu .student-menu-item+.student-menu-item{border-top:0!important}.student-nav-menu .student-menu-item:hover{background:#f6f8fa!important;color:#173b68}
.student-nav-menu .student-menu-item[aria-current="page"]{position:relative;background:#f5f7fa!important;color:#173b68;font-weight:820}
.student-nav-menu .student-menu-item[aria-current="page"]::after{display:none}
.student-nav-menu .student-menu-item[aria-current="page"]::before{content:"";position:absolute;left:0;top:12px;width:3px;height:23px;border-radius:0 3px 3px 0;background:#c97832;margin:0}
.student-nav-menu .student-nav-icon{width:20px;height:20px;flex:0 0 20px;color:#64758a}.student-nav-menu .student-menu-label{line-height:1.2}
.student-nav-menu .student-mobile-settings,.student-nav-menu .student-logout{width:100%;justify-content:flex-start;margin:0}.student-nav-menu .student-logout{color:#68778a;font-weight:660}
.student-secondary{display:flex!important}
}
@media(max-width:520px){.student-nav-inner{padding:8px 10px}.student-nav .brand-logo.compact img{width:142px}.student-menu-toggle{width:42px;padding:0;justify-content:center}.student-menu-toggle span{display:none}.student-nav-menu{padding-bottom:10px}.student-nav-menu .student-menu-item{min-height:46px}}
@media(max-width:350px){.student-nav .brand-logo.compact img{width:132px;max-width:52vw}}
.student-nav-menu .student-menu-item:focus-visible,.student-account-toggle:focus-visible,.student-account-menu a:focus-visible,.student-account-menu button:focus-visible,.student-menu-toggle:focus-visible{outline:3px solid rgba(138,67,0,.45);outline-offset:2px}
/* Harmonisation générale espace étudiant v47 */
body[data-student-area="true"]{overflow-x:hidden}
body[data-student-area="true"] .wrap{width:min(100%,1160px);margin-inline:auto}
body[data-student-area="true"] .card{overflow-wrap:anywhere}
.student-nav{isolation:isolate}
.student-account-avatar-generic{background:#edf2f7;color:#173b68;text-transform:none}.student-account-avatar-generic .student-nav-icon{width:16px;height:16px;flex:0 0 16px}
.student-account-name{min-width:0}.student-account-menu .student-menu-label,.student-nav-menu .student-menu-label{min-width:0}
.student-nav-menu .student-menu-item{box-sizing:border-box}
@media(max-width:1040px){body[data-student-area="true"] .wrap{padding-left:16px;padding-right:16px}.student-nav{position:sticky;top:0}.student-nav-menu{max-height:calc(100vh - 72px);overflow-y:auto;overscroll-behavior:contain}}
@media(max-width:620px){body[data-student-area="true"] .wrap{padding-top:28px;padding-bottom:32px}.card{padding:20px}.section-title{font-size:clamp(28px,9vw,38px)}.lead{font-size:17px}.btn{max-width:100%;white-space:normal;text-align:center}}
/* Pied de page étudiant global */
.student-footer{margin-top:28px;padding:0;border-top:1px solid #e3e8ef;background:#fff;text-align:left;color:#66758a}.student-footer-inner{width:min(100%,1160px);margin:0 auto;padding:24px 20px;display:flex;align-items:center;justify-content:space-between;gap:28px}.student-footer-brand{display:grid;gap:1px;flex:0 0 auto}.student-footer-brand strong{color:#173b68;font-size:14px;letter-spacing:.02em}.student-footer-brand span{font-size:12px;color:#7b8796}.student-footer-links{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap;font-size:13px}.student-footer-group{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap}.student-footer-label{font-weight:800;color:#526278}.student-footer-links a{color:#65758a;text-decoration:none;font-weight:650}.student-footer-links a:hover{text-decoration:underline;color:#173b68}.student-footer-separator{width:1px;height:16px;background:#dce3eb}.student-footer-links a:focus-visible{outline:3px solid rgba(138,67,0,.4);outline-offset:3px;border-radius:3px}@media(max-width:760px){.student-footer-inner{align-items:flex-start;flex-direction:column;gap:14px;padding:22px 18px}.student-footer-links{justify-content:flex-start;align-items:flex-start;gap:12px}.student-footer-group{display:flex;width:100%;gap:10px 14px}.student-footer-label{width:100%;font-size:12px}.student-footer-separator{display:none}}@media print{.student-footer{display:none!important}}
/* Identité visuelle THÈSE IA v59 : bleu académique + cuivre */
.hero{background:linear-gradient(140deg,#10213b 0%,#173b68 64%,#214d7d 100%)}
.btn{background:var(--action)}.btn.alt{background:var(--surface);color:#173b68}.btn.ghost{color:#173b68;border-color:var(--line)}
.notice{border-left-color:var(--orange);background:var(--accent-soft)}
.module-card:before,.number{color:var(--orange)}
.form input,.form textarea,.form select{border-color:var(--line);background:var(--surface);color:var(--ink)}
.student-nav-menu .student-menu-item[aria-current="page"]::before{background:var(--orange)}
.student-footer{border-color:var(--line);background:var(--surface)}
.student-footer-brand strong,.student-footer-links a:hover{color:#173b68}
.student-account-avatar-generic{color:#173b68}
input[type="checkbox"],input[type="radio"]{accent-color:var(--orange)}
/* Mode sombre */
html.theseia-dark{--ink:#e9edf4;--blue:#e6edf7;--orange:#d89559;--action:#b96027;--paper:#0f1722;--white:#17212e;--muted:#a9b4c2;--line:#2b3949;--green:#74d5aa;--danger:#ff9b90;--surface:#17212e;--surface-soft:#1c2836;--blue-soft:#1b2b3f;--accent-soft:#2a211b;--shadow:0 14px 42px rgba(0,0,0,.22)}
.theseia-dark body{background:var(--paper);color:var(--ink)}
.theseia-dark .card,.theseia-dark .progress-tile,.theseia-dark .profile-summary,.theseia-dark .certificate-card,.theseia-dark .vera-step,.theseia-dark .sim-question,.theseia-dark .student-footer{background:var(--surface)!important;border-color:var(--line)!important;box-shadow:var(--shadow)}
.theseia-dark .section-title,.theseia-dark .card h3,.theseia-dark h1,.theseia-dark h2,.theseia-dark h3,.theseia-dark .profile-name,.theseia-dark .progress-number,.theseia-dark .sim-question-text,.theseia-dark .profile-field label,.theseia-dark .student-footer-brand strong{color:#e6edf7!important}
.theseia-dark .lead,.theseia-dark .muted,.theseia-dark .profile-email,.theseia-dark .profile-label,.theseia-dark .progress-sub,.theseia-dark .tiny,.theseia-dark .tiny-help,.theseia-dark .student-footer,.theseia-dark .student-footer-brand span,.theseia-dark .student-footer-links a,.theseia-dark .student-footer-label{color:#a9b4c2!important}
.theseia-dark .nav,.theseia-dark .student-nav{background:rgba(20,30,42,.98)!important;border-color:var(--line)!important;box-shadow:0 4px 18px rgba(0,0,0,.16)}
.theseia-dark .student-nav .brand-logo,.theseia-dark .nav .brand-logo{background:#f8fafc;border-radius:9px;padding:5px 8px}
.theseia-dark .student-nav-menu,.theseia-dark .student-account-menu{background:#16202c!important;border-color:var(--line)!important;box-shadow:0 16px 36px rgba(0,0,0,.28)}
.theseia-dark .student-nav-menu .student-menu-item,.theseia-dark .student-account-toggle,.theseia-dark .student-account-menu a,.theseia-dark .student-account-menu button,.theseia-dark .student-menu-toggle{color:#c8d2df!important}
.theseia-dark .student-nav-menu .student-menu-item:hover,.theseia-dark .student-account-toggle:hover,.theseia-dark .student-account-toggle.active,.theseia-dark .student-account-toggle.open,.theseia-dark .student-account-menu a:hover,.theseia-dark .student-account-menu button:hover,.theseia-dark .student-menu-toggle:hover,.theseia-dark .student-menu-toggle.active{background:#202d3c!important;color:#f2f6fb!important}
@media(min-width:1041px){.theseia-dark .student-nav-menu .student-menu-item[aria-current="page"]{background:transparent!important;color:#f2f6fb!important;box-shadow:none!important}.theseia-dark .student-nav-menu .student-menu-item[aria-current="page"]::after{background:rgba(215,226,239,.28)}}
.theseia-dark .student-account-avatar,.theseia-dark .student-account-avatar-generic{background:#223247!important;color:#dbe6f4!important}
.theseia-dark .student-account-separator,.theseia-dark .student-mobile-divider{background:var(--line)!important}
.theseia-dark .btn{background:#b96027;color:#fff}.theseia-dark .btn:hover{filter:brightness(1.08)}
.theseia-dark .btn.alt,.theseia-dark .btn.ghost{background:#1b2837!important;color:#e6edf7!important;border-color:#34465a!important}
.theseia-dark input,.theseia-dark textarea,.theseia-dark select{background:#111b27!important;color:#edf2f7!important;border-color:#34465a!important}
.theseia-dark input:disabled,.theseia-dark textarea:disabled,.theseia-dark select:disabled{background:#17212e!important;color:#8e9bad!important}
.theseia-dark .notice,.theseia-dark .box,.theseia-dark .tool-purpose{background:#2a211b!important;color:#d8c9bb!important;border-left-color:#d89559!important}
.theseia-dark .exercise,.theseia-dark .expected{background:#1b2b3f!important;color:#d8e2ee!important}
.theseia-dark .eyebrow{background:#203149!important;color:#dce7f3!important}
.theseia-dark .status-badge.pending,.theseia-dark .profile-status{background:#202c3a!important;color:#bac6d5!important}
.theseia-dark .status-badge.ready{background:#3a2a1d!important;color:#f0bd87!important}
.theseia-dark .status-badge.done,.theseia-dark .profile-status.locked{background:#193428!important;color:#9de0ba!important}
.theseia-dark .profile-progress{background:#263444!important}.theseia-dark .profile-progress>span{background:#d89559!important}
.theseia-dark .profile-row,.theseia-dark .certificate-meta div{border-color:var(--line)!important}
.theseia-dark .output{background:#0b121c!important;color:#edf2f7!important;border-color:#33465a!important}
.theseia-dark .quick-access a,.theseia-dark .tool-jumps a{background:#17212e!important;color:#dce6f2!important;border-color:#34465a!important}
.theseia-dark .quick-access a:hover,.theseia-dark .tool-jumps a:hover{background:#202d3c!important}
.theseia-dark .theseia-settings-panel{background:#17212e!important;color:#e9edf4!important;border-color:#34465a!important;box-shadow:0 18px 50px rgba(0,0,0,.4)!important}
.theseia-dark .theseia-settings-btn{background:rgba(23,33,46,.97)!important;color:#e6edf7!important;border-color:#34465a!important}
.theseia-dark .theseia-settings-close{background:#223041!important;color:#e6edf7!important}
.theseia-dark .theseia-setting-row{border-color:#2b3949!important}.theseia-dark .theseia-setting-row small,.theseia-dark .theseia-settings-note{color:#a9b4c2!important}
.theseia-dark .theseia-setting-row select,.theseia-dark .theseia-settings-reset,.theseia-dark .theseia-settings-profile{background:#111b27!important;color:#e6edf7!important;border-color:#34465a!important}
.theseia-dark .footer:not(.student-footer){color:#9ca9b8}
.theseia-dark .price-box,.theseia-dark .profile-edit,.theseia-dark .faq details,.theseia-dark .quiz-question,.theseia-dark .resource-card,.theseia-dark .rating button{background:var(--surface)!important;border-color:var(--line)!important}
.theseia-dark .quiz-question-head,.theseia-dark .resource-visual{background:var(--surface-soft)!important;border-color:var(--line)!important}
.theseia-dark .quiz-option,.theseia-dark .faq details[open] summary,.theseia-dark .resource-card,.theseia-dark .row{border-color:var(--line)!important}
.theseia-dark .quiz-question h2,.theseia-dark .faq summary,.theseia-dark .resource-content strong,.theseia-dark .resource-card,.theseia-dark .total{color:#e6edf7!important}
.theseia-dark .faq p,.theseia-dark .resource-desc,.theseia-dark .resource-kind,.theseia-dark .row span:first-child{color:#a9b4c2!important}
.theseia-dark .rating button.on{background:#30251d!important;border-color:#d89559!important;color:#efc69f!important}
.theseia-dark a{color:inherit}
@media(max-width:1040px){.theseia-dark .student-nav-menu{background:#16202c!important;border-top-color:var(--line)!important}}
@media print{html.theseia-dark{color-scheme:light}html.theseia-dark body{background:#fff!important;color:#10213b!important}}#hb-badge{display:none!important}
/* Navigation longue : retour en haut discret */
.student-back-top{position:fixed;right:20px;bottom:22px;z-index:55;width:44px;height:44px;display:grid;place-items:center;border:1px solid #dbe2ea;border-radius:50%;background:rgba(255,255,255,.96);color:#173b68;box-shadow:0 8px 24px rgba(16,33,59,.10);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease,background .18s ease,border-color .18s ease}.student-back-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.student-back-top:hover{background:#f5f8fb;border-color:#cbd5e1}.student-back-top svg{width:20px;height:20px;display:block}.student-back-top:focus-visible{outline:2px solid #6f86a1;outline-offset:3px}.theseia-dark .student-back-top{background:rgba(23,33,46,.96);color:#e6edf7;border-color:#34465a;box-shadow:0 8px 24px rgba(0,0,0,.28)}.theseia-dark .student-back-top:hover{background:#202d3c;border-color:#43566d}@media(max-width:620px){.student-back-top{right:14px;bottom:16px;width:42px;height:42px}}@media(prefers-reduced-motion:reduce){.student-back-top{transition:none}}@media print{.student-back-top{display:none!important}}