/* Quiet surfaces; colour is paired with labels, never the only indicator. */
:root{--ink:#243448;--muted:#566579;--green:#185c50;--mint:#e7f2ee;--paper:#f4f6f8;--white:#fff;--line:#d9e0e7;--shadow:0 3px 14px #24344808;--area:#526174;--tint:#edf0f4}
[data-area=course]{--area:#225d93;--tint:#eaf2fa}[data-area=activity]{--area:#70509a;--tint:#f2edf8}[data-area=people]{--area:#176855;--tint:#e8f4ef}[data-area=result]{--area:#935715;--tint:#fff3df}
body{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.6}h1,h2,h3,.brand{font-family:inherit;letter-spacing:-.025em}h1{font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.25}h2{line-height:1.35}.small{font-size:.84rem}.muted,.list-meta,.stat-sub{color:var(--muted)}[hidden]{display:none!important}button,input,select,textarea{font-size:inherit}.btn{min-height:42px;padding:10px 16px;border-radius:9px;transition:background .15s}.btn:hover{transform:none;filter:none;box-shadow:inset 0 0 0 2px #0002}.btn.smallbtn{min-height:36px;font-size:.85rem}.btn.ghost{color:var(--ink);background:transparent}.btn.danger{background:#a33136;color:#fff}:focus-visible{outline:3px solid #2679b4!important;outline-offset:3px!important}.app-layout{grid-template-columns:244px minmax(0,1fr)}.sidebar{padding:24px 14px;gap:20px;overflow-y:auto}.nav{gap:8px}.nav-group13{display:grid;gap:3px;margin-bottom:12px}.nav-label13,.nav-group13 summary{font-size:.69rem;letter-spacing:.1em;font-weight:750;color:var(--muted);margin:10px 12px}.nav-group13 summary{cursor:pointer;padding:9px 0}.nav button.nav-item13{display:block;width:100%;text-align:left;border:0;min-height:44px;font-size:.9rem;padding:10px 13px;color:var(--ink);border-radius:8px;background:transparent}.nav button.nav-item13.active{background:var(--tint);color:var(--area);box-shadow:inset 3px 0 var(--area);font-weight:750}.nav button:hover{background:var(--tint)}.topbar{height:auto;min-height:86px;gap:12px;padding:16px 28px;flex-wrap:wrap;border-bottom:1px solid var(--line);background:var(--white)}.breadcrumb13{display:grid;margin-right:auto;line-height:1.4}.breadcrumb13 span{font-size:.76rem;color:var(--muted)}.context13{display:grid;font-size:.73rem;font-weight:650;gap:3px}.context13 select{max-width:290px;min-height:38px;padding:5px 10px;color:var(--ink);border:1px solid var(--line);border-radius:7px;background:var(--white)}.content{padding:26px 32px;max-width:1500px;margin:auto;width:100%}.page-context13{font-size:.87rem;color:var(--muted);margin-bottom:18px}.page-head{gap:18px;align-items:flex-start;flex-wrap:wrap;margin-bottom:26px}.page-head p{max-width:70ch}.page-head>.row{flex-wrap:wrap;gap:8px}.card{border:1px solid var(--line);border-radius:12px;padding:22px;box-shadow:var(--shadow);min-width:0}.grid{gap:18px}.list-row{padding:15px 0;gap:16px}.row{gap:10px;flex-wrap:wrap}.table-wrap{overflow:auto;border-radius:9px}.table th{background:var(--paper);color:var(--ink);font-size:.8rem;white-space:nowrap}.table td,.table th{padding:13px 15px}.table tbody tr:hover{background:var(--paper)}.badge{font-size:.77rem;font-weight:650;border-radius:6px;padding:4px 8px;background:#edf0f4;color:#425469;line-height:1.5}.badge[data-status=draft]{background:#fff1ce;color:#754705}.badge[data-status=ready]{background:#e1f2e8;color:#195c3c}.badge[data-status=locked]{background:#edf0f4;color:#4f5b6d}.note{background:#fff8e8;color:#6e511d;border-left-color:#bb8320;padding:13px 16px;font-size:.88rem}.empty{padding:30px 20px;border:1px dashed var(--line);border-radius:10px;background:var(--paper);color:var(--muted)}.field label{font-size:.88rem}.field input,.field textarea,.field select{background:var(--white);border:1px solid #aab7c5;color:var(--ink);min-height:44px}.field textarea{min-height:105px}.start13{margin-bottom:26px;padding:28px;border:1px solid var(--line);border-radius:15px;background:var(--white)}.start13 h2{font-size:1.7rem;margin-top:7px}.start13 p{color:var(--muted);margin:8px 0 23px}.eyebrow13{font-size:.69rem;letter-spacing:.12em;color:var(--green);font-weight:750}.quick-actions13{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.quick-card13{display:grid;gap:8px;text-align:left;padding:18px;background:var(--tint);color:var(--ink);border:1px solid transparent;border-radius:10px}.quick-card13:hover{border-color:var(--area)}.quick-card13 strong{font-size:1rem;color:var(--area)}.quick-card13>span:last-child{font-size:.84rem;color:var(--muted)}.quick-number13{font-size:.8rem;font-weight:750;color:var(--area)}.stats .card{padding:18px 22px}.stat-num{font-size:1.85rem}.stats{margin-bottom:24px}.modal-backdrop{background:#14223880;padding:24px;align-items:flex-start;overflow:auto}.modal{margin:2vh auto;max-height:92vh;overflow:auto;border-radius:16px;padding:26px;width:min(850px,100%);box-shadow:0 20px 70px #14223830}.modal-wide{width:min(1180px,100%)}.modal-head{border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}.modal-head h2{font-size:1.3rem}.modal-close{min-width:42px;min-height:42px;color:var(--ink)}.editor13{width:min(1100px,100%)}.editor-steps13{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.editor-steps13 .btn{flex:1;border:1px solid var(--line);color:var(--muted);background:var(--paper);white-space:nowrap}.editor-steps13 .active{background:var(--mint);color:var(--green);border-color:var(--green)}.editor-panel13{margin:22px 0}.editor-panel13 .editor-grid{display:block;max-width:740px}.editor-panel13 .editor-grid>section{width:100%}.wizard-footer13{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid var(--line)}.advanced13,.more-actions13{border:1px solid var(--line);border-radius:9px;padding:12px;margin-top:16px}.advanced13 summary,.more-actions13 summary{cursor:pointer;font-weight:650;font-size:.9rem}.audience13{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.audience13 label{padding:9px;background:var(--paper);border-radius:6px}.question{border:1px solid var(--line);background:var(--white);padding:22px;border-radius:12px;margin:20px 0}.question legend{font-weight:700;padding:0 8px;max-width:95%;line-height:1.6}.answer-option{padding:13px;border:1px solid var(--line);border-radius:9px;margin:8px 0;line-height:1.5}.answer-option:has(input:checked){background:var(--mint);border-color:var(--green)}input[type=checkbox],input[type=radio]{accent-color:var(--green);width:18px;height:18px;flex-shrink:0}.student-home{max-width:1180px;padding:28px;margin:auto}.student-nav13{display:flex;gap:8px;border-bottom:1px solid var(--line);margin:20px 0 26px;padding-bottom:12px;position:sticky;top:0;background:var(--paper);z-index:2}.student-nav13 .btn{background:var(--white);color:var(--ink);border:1px solid var(--line);flex:1}.student-nav13 .active{background:var(--green);color:#fff;border-color:var(--green)}.path-chapter{border-top:3px solid #225d93}.activity-card{border-top:3px solid #70509a}.help-toc{background:var(--white);border:1px solid var(--line)}.help-toc a{color:var(--green);padding:5px}.help-section{line-height:1.85;max-width:85ch}.help-section h2{font-size:1.25rem}.tool-grid .card{border-top:3px solid var(--line)}.toast13{display:flex;align-items:center;gap:18px;max-width:min(620px,calc(100vw - 32px));background:#243448;color:white;z-index:10000}.toast13 .btn{color:#fff;border-color:#ffffff55}.save-status13{font-size:.8rem;color:var(--muted);margin-right:auto}.mobile-menu13{display:none}.login-art{background:#194c45}.login-art h1{font-size:clamp(2.2rem,4vw,3.5rem)}.login-form-wrap{background:var(--paper)}.login-card{background:var(--white);border:1px solid var(--line);padding:30px;border-radius:16px;width:min(480px,100%)}
[data-theme=dark]{--ink:#e5ecf4;--muted:#b5c2d1;--paper:#17212d;--white:#202d3c;--line:#46576b;--mint:#21483f;--green:#a2e0ca;--tint:#2b3c50;--area:#b5d4fc}[data-theme=dark] .btn:not(.ghost):not(.secondary):not(.danger){background:#275f52;color:#fff}[data-theme=dark] .quick-card13{background:#2a3a4f}[data-theme=dark] .quick-card13 strong,[data-theme=dark] .quick-number13{color:#c7dcfa}[data-theme=dark] .note{background:#3b3423;color:#f3dba9}[data-theme=dark] .modal,[data-theme=dark] .question,[data-theme=dark] .card{background:var(--white);color:var(--ink)}[data-theme=dark] .source-workbench{background:var(--white)}[data-theme=dark] .order-items12 li{background:var(--paper)}[data-theme=dark] .btn.secondary{background:#294b43;color:#d7f7ed}[data-theme=dark] .badge{color:#dbe6f4;background:#35465b}
@media(max-width:1100px){.topbar{padding:14px 20px}.content{padding:22px}.quick-actions13{grid-template-columns:1fr}.quick-card13{grid-template-columns:30px 1fr}.quick-card13>span:last-child{grid-column:2}.topbar>.btn{font-size:.8rem}.context13 select{max-width:230px}}
@media(max-width:760px){.app-layout{display:block}.sidebar{display:none;position:fixed;top:82px;left:0;bottom:0;height:auto;width:min(310px,90vw);z-index:50;box-shadow:10px 0 25px #0003}.sidebar.mobile-open13{display:flex}.mobile-menu13{display:block}.topbar{gap:8px;padding:12px;position:relative}.breadcrumb13{flex:1}.context13{order:5;width:100%}.context13 select{max-width:none;width:100%}.content{padding:18px 14px}.start13{padding:20px}.start13 h2{font-size:1.4rem}.grid,.split,.tool-grid{grid-template-columns:1fr!important}.stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.stats .card{padding:14px}.stat-num{font-size:1.5rem}.modal-backdrop{padding:8px}.modal{padding:18px;margin:0 auto;max-height:96vh}.editor-steps13 .btn{font-size:.78rem;padding:8px;flex:1 1 28%;white-space:normal}.student-home{padding:18px 14px}.student-nav13{gap:5px}.student-nav13 .btn{padding:10px 6px;font-size:.83rem}.student-resource,.list-row{flex-wrap:wrap}.help-layout{display:block}.help-toc{position:static;max-height:210px;margin-bottom:20px}.audience13{grid-template-columns:1fr}.page-head .row{width:100%}.page-head .row .btn{flex:1}.question{padding:14px}.editor-grid{display:block!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.sidebar,.topbar,.editor-steps13,.wizard-footer13,.student-nav13,.modal-close{display:none!important}.modal{overflow:visible;max-height:none;box-shadow:none}}
.btn:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}.btn[aria-busy=true]{cursor:progress}.alert{border:1px solid #bd6770;background:#fff0f1;color:#812333}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:#a33136}.help-toc a:focus-visible{display:block}.student-resource .path-resource-main{min-width:0;overflow-wrap:anywhere}button{overflow-wrap:break-word}.modal .editor-panel13 h3{margin-bottom:12px}
.sidebar{background:var(--white);color:var(--ink)}.sidebar .brand,.sidebar .profile,.sidebar .profile b{color:var(--ink)}.sidebar .profile .muted{color:var(--muted)}.sidebar .side-bottom{border-color:var(--line)}.sidebar .avatar{background:var(--mint);color:var(--ink)}.sidebar #logout{color:var(--ink);border-color:var(--line)}html[data-theme=dark] body,html[data-theme=dark] .main{background:var(--paper);color:var(--ink)}html[data-theme=dark] .card,html[data-theme=dark] .modal,html[data-theme=dark] .topbar,html[data-theme=dark] .question{background:var(--white);color:var(--ink)}
@media(max-width:900px) and (min-width:761px){.sidebar{align-items:stretch}.sidebar .brand span:last-child,.side-bottom .profile div:last-child,.side-bottom .btn{display:block}.nav{display:block}.sidebar .brand{padding:0}}
@media(max-width:760px){.sidebar.mobile-open13{height:calc(100dvh - 82px);right:auto;align-items:stretch;justify-content:flex-start}.sidebar.mobile-open13 .brand{display:flex}.sidebar.mobile-open13 .brand span:last-child{display:block}.sidebar.mobile-open13 .nav{display:block;flex:none;width:100%}.sidebar.mobile-open13 .nav-group13{display:grid;width:100%}.sidebar.mobile-open13 .nav button{display:block;min-height:44px;text-align:left;font-size:.9rem}.sidebar.mobile-open13 .side-bottom{display:block}.sidebar.mobile-open13 .side-bottom .btn{display:block}.sidebar.mobile-open13 .profile div:last-child{display:block}.topbar{height:auto;min-height:82px}}
html[data-theme=dark] .sidebar .nav button.nav-item13{background:transparent;color:var(--ink)}html[data-theme=dark] .sidebar .nav button.nav-item13.active{background:#304b55;color:#dbf4ec}
html[data-theme=dark] .path-chapter,html[data-theme=dark] .chapter,html[data-theme=dark] .path-resource,html[data-theme=dark] .student-resource{background:var(--paper);color:var(--ink);border-color:var(--line)}html[data-theme=dark] .path-index{background:#34495e;color:#e2edf9}html[data-theme=dark] .small,html[data-theme=dark] .stat-sub,html[data-theme=dark] .list-meta{color:var(--muted)}html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:#b8c6d6}
@media(max-width:760px){.topbar>.btn[data-label=Aide],.topbar>.btn[data-label=Affichage]{display:none}.topbar{padding:10px 12px}.breadcrumb13 b{font-size:.9rem}.topbar>.btn{padding:8px 11px}.page-context13{font-size:.8rem}.toast13{bottom:12px;right:12px;left:12px;font-size:.86rem}.sidebar.mobile-open13 .side-bottom{margin-top:15px}}
.student-nav13 .btn.active,.student-nav13 .btn.active:hover{background:#185c50;color:#fff;border-color:#185c50}.student-nav13 .btn:not(.active):hover{background:var(--mint);color:var(--ink)}.nav button.nav-item13:hover{background:var(--tint);color:var(--area)}.btn.secondary:hover{background:var(--mint);color:var(--ink)}
