:root{--ink:#173448;--teal:#087f86;--cream:#fbf7ef;--coral:#d96146;--line:#e4e9e6}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.6 'Segoe UI',Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,label.importbutton{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #d96146;outline-offset:3px}a{color:var(--teal)}button{border:1px solid var(--line);background:white;color:var(--ink);border-radius:10px;padding:10px 15px}.skip{position:absolute;left:250px;top:-80px;z-index:20;background:white;padding:15px}.skip:focus{top:10px}.sidebar{width:226px;position:fixed;inset:0 auto 0 0;background:#fffdf8;border-right:1px solid var(--line);padding:36px 23px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);font-size:23px;line-height:1.12;text-decoration:none;letter-spacing:-.5px}.logo{width:43px;height:46px;background:var(--teal);color:white;border-radius:12px;display:grid;place-items:center;font-size:21px;font-weight:700}.school{font-size:11px;margin:22px 0 43px;color:#61747e}.navlabel,.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:700;color:var(--teal)}nav button{width:100%;text-align:left;background:none;border:0;display:flex;gap:12px;padding:14px 9px;margin:5px 0;font-size:12px}nav button .number{font-size:14px;color:#6b8088;border:1px solid #dce6e4;border-radius:8px;width:30px;height:30px;display:grid;place-items:center}nav button.active{background:#e4f2ee;color:#075e63}nav button.active .number{background:var(--teal);color:white;border-color:var(--teal)}nav small{display:block;color:#7a8b8d;font-size:10px}.notebook{margin:24px 0;background:none;border:0;text-align:left;padding:10px}.sidebottom{margin-top:auto;font-size:11px;color:#6b8088}.sidebottom small{display:block;margin-top:10px}.statusdot{display:inline-block;width:6px;height:6px;background:var(--teal);border-radius:50%;margin-right:4px}.shell{margin-left:226px}.topbar{height:78px;display:flex;justify-content:space-between;align-items:center;padding:0 42px;border-bottom:1px solid var(--line);background:#fffdf8}.breadcrumb{font-size:12px;color:#6b8088}.profiles{display:flex;align-items:center;gap:7px;font-size:11px}.profiles button{padding:6px 12px;border-radius:7px;font-size:12px}.profiles button[aria-pressed=true]{background:var(--teal);color:white;border-color:var(--teal)}main{max-width:1500px;margin:auto;padding:34px 42px}.hero{display:grid;grid-template-columns:1.1fr .9fr;border-radius:18px;overflow:hidden;background:#e4f2ee;min-height:334px}.herotext{padding:35px 38px}h1{font-size:42px;line-height:1.15;letter-spacing:-1.2px;margin:18px 0}h2{font-size:27px;letter-spacing:-.7px;margin:4px 0}h3{font-size:18px}.herotext>p:not(.eyebrow){font-size:13px;max-width:400px;color:#46636e}.hero img{width:100%;height:100%;object-fit:cover}.heroactions{display:flex;align-items:center;gap:16px;margin-top:25px}.heroactions>span{font-size:10px;color:#557078;max-width:110px}.primary{background:var(--teal);color:white;border-color:var(--teal);font-weight:600}.primary span{margin-left:15px}.workbench{display:flex;justify-content:space-between;align-items:center;margin:23px 0 36px;padding:17px 22px;background:#fffdf8;border:1px solid var(--line);border-radius:13px}.workbench p{margin:3px 0;font-size:11px}.workbench strong{font-size:13px}.timer{display:flex;gap:8px;align-items:center;font-size:11px}.timer output{font-variant-numeric:tabular-nums;font-size:20px;font-weight:700;margin:0 6px}.timer button,.timer select{font-size:11px;padding:7px 10px;border:1px solid var(--line);border-radius:7px;background:white}.timer select{max-width:82px}.sectionhead{display:flex;justify-content:space-between;align-items:flex-end}.sectionhead p{margin:4px 0;font-size:12px;color:#6b8088}.sectionhead .eyebrow{color:var(--teal);font-size:10px}.meter{text-align:right;font-size:10px;color:#6b8088;width:205px}.meter strong{font-size:18px;color:var(--ink);display:block}.meter span{display:block}.meter progress{display:block;width:100%;height:6px;accent-color:var(--teal);margin-top:8px}.filters{display:flex;justify-content:space-between;gap:15px;margin:23px 0}.filters>div{display:flex;flex-wrap:wrap;gap:6px}.filters button{font-size:10px;padding:7px 10px;border-radius:6px}.filters button.active{background:var(--ink);border-color:var(--ink);color:white}.search{display:flex;gap:6px;align-items:center;border-bottom:1px solid #ccd8d8}.search input{width:180px;border:0;background:none;padding:8px;font-size:11px;color:var(--ink)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{border:1px solid var(--line);background:#fffdf8;border-radius:12px;padding:20px;text-align:left;display:flex;flex-direction:column;min-height:196px;transition:transform .15s,box-shadow .15s}.card:hover{transform:translateY(-3px);box-shadow:0 6px 20px #1734480c}.card .cardmeta{font-size:10px;letter-spacing:.7px;color:var(--teal);display:flex;justify-content:space-between}.card h3{font-size:17px;line-height:1.35;margin:16px 0 11px}.card p{font-size:11px;color:#6b8088;margin:0 0 15px}.cardbottom{display:flex;justify-content:space-between;margin-top:auto;font-size:11px;color:var(--teal)}.badge{color:#087f86;background:#e4f2ee;border-radius:5px;padding:1px 5px;letter-spacing:0}.roadmap{margin-top:24px;font-size:12px}.roadmap details{padding:16px;background:#f1ede4;border-radius:10px}.roadmap li{margin:9px 0}.bookbutton{display:inline-block;padding:10px 16px;border:1px solid #cbdedc;border-radius:8px;margin-top:18px;font-size:12px;text-decoration:none}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:36px 0;margin-top:22px;border-top:1px solid var(--line)}.principles span{font-size:12px;color:var(--coral)}.principles h3{margin:5px 0;font-size:16px}.principles p{font-size:12px;color:#6b8088}footer{border-top:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;gap:25px;font-size:10px;color:#7a8b8d}dialog{border:0;background:var(--cream);color:var(--ink);border-radius:17px;width:min(850px,95vw);max-height:90vh;padding:30px 36px;box-shadow:0 20px 100px #17344840}dialog::backdrop{background:#17344899}.dialoghead{display:flex;justify-content:space-between;align-items:center}.close{font-size:25px;border:0;background:none;padding:0 10px}.lessonimage{width:100%;height:185px;object-fit:cover;border-radius:10px;margin:20px 0}dialog h3{color:var(--teal);margin-top:25px}dialog p,dialog li{font-size:14px}pre{background:#e4ebf7;padding:18px;border-radius:10px;white-space:pre;overflow:auto;font:13px/1.7 Consolas,monospace}.steps li{padding:5px 0}.sourcebutton{display:inline-block;padding:8px 15px;border-radius:8px;background:var(--teal);color:white;text-decoration:none;font-size:12px}.notes{border-top:1px solid #ccd8d8;margin-top:30px}.notes label:not(.check){display:block;margin:18px 0 7px;font-size:13px;font-weight:600}textarea{width:100%;border:1px solid #ccd8d8;border-radius:8px;padding:12px;background:#fffdf8;font-size:14px;resize:vertical}.check{display:flex;align-items:flex-start;gap:10px;font-size:13px;margin-top:15px}.check input{margin-top:5px;accent-color:var(--teal)}.hint{font-size:11px!important;color:#6b8088}.namefields{display:flex;gap:20px}.namefields label{flex:1;font-size:12px}.namefields input{display:block;width:100%;padding:8px;border:1px solid #ccd8d8;border-radius:7px;margin-top:6px}.journalactions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.importbutton{cursor:pointer;background:white;border:1px solid var(--line);border-radius:10px;padding:10px 15px}.importbutton input{display:block;font-size:10px;width:160px}table{width:100%;border-collapse:collapse;font-size:12px}td,th{text-align:left;border-bottom:1px solid var(--line);padding:10px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 22px;border-radius:10px;z-index:100;font-size:13px}
@media(min-width:1500px){.hero{min-height:410px}.herotext{padding:45px 50px}h1{font-size:50px}}@media(max-width:1100px){.sidebar{width:190px;padding:30px 15px}.shell{margin-left:190px}main{padding:25px}.topbar{padding:0 25px}.herotext{padding:26px}h1{font-size:34px}.workbench{flex-direction:column;align-items:flex-start;gap:15px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.timer{flex-wrap:wrap}.heroactions{flex-wrap:wrap}}@media(max-width:700px){.sidebar{position:static;width:100%;padding:15px;display:block}.brand{font-size:20px}.school{margin:8px 0}.navlabel,.sidebottom{display:none}nav{display:flex;gap:4px}nav button{padding:7px 5px;margin:0;font-size:10px;gap:4px}nav .number{display:none!important}nav small{font-size:8px}.notebook{position:absolute;right:15px;top:15px;margin:0;font-size:11px}.shell{margin-left:0}.topbar{height:56px;padding:0 15px}.breadcrumb{font-size:10px}.profiles>span{display:none}main{padding:18px 15px}.hero{grid-template-columns:1fr}.hero img{height:170px;object-position:50% 40%}.herotext{padding:23px}h1{font-size:35px}.heroactions{margin-top:15px}.workbench{padding:15px;margin-bottom:25px}.grid{grid-template-columns:1fr}.sectionhead{align-items:center}.meter{width:120px;font-size:9px}.meter strong{font-size:14px}h2{font-size:24px}.filters{flex-direction:column}.search{width:100%}.search input{width:100%}.principles{gap:15px}.principles p{font-size:10px}.principles h3{font-size:13px}footer{flex-direction:column;gap:5px}dialog{padding:20px}.namefields{flex-direction:column}.skip{left:15px}}
@media print{body{background:white}.sidebar,.shell,#lesson,.dialoghead,.journalactions,.namefields,.toast{display:none!important}#journal{display:block!important;position:static;width:100%;max-height:none;overflow:visible;box-shadow:none;border:0;padding:0}#journal::backdrop{display:none}#journalrows{display:block}table{font-size:10px}tr{break-inside:avoid}}

[hidden]{display:none!important}.brand{flex-direction:column;align-items:flex-start}.schoollogo{width:176px;height:120px;object-fit:contain;background:white;border-radius:10px}.brand>span{font-size:20px;margin-top:8px}.loginlogo{width:220px;height:145px;object-fit:contain;display:block;margin:0 auto 15px}#connection{max-width:470px}#connection form,#createuser{display:grid;gap:12px}#connection label,#createuser label{display:grid;gap:5px}#connection input,#createuser input{border:1px solid #becdce;border-radius:8px;padding:10px;max-width:100%}#connectionstatus,#teacherstatus{white-space:pre-wrap}#accountbar{display:flex;align-items:center;gap:8px;font-size:12px}#accountbar button{padding:6px 10px;font-size:12px}body.account-locked .shell,body.account-locked .sidebar,body.auth-start .shell,body.auth-start .sidebar{visibility:hidden}#studentlist button{margin:5px}#studentdetails{white-space:pre-wrap}.school{margin:12px 0 20px}@media(max-width:700px){.schoollogo{width:135px;height:90px}.brand>span{font-size:18px}.topbar{height:auto;min-height:60px;flex-wrap:wrap;gap:10px;padding:12px 15px}#accountbar{flex-wrap:wrap}#accountbar span{flex:1}.notebook{top:25px}.breadcrumb{display:none}}

.toolbox{margin:24px 0;padding:20px;background:#edf6f3;border:1px solid #c9dfda;border-radius:16px}.toolgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.toolcard{background:#fff;padding:18px;border-radius:12px}.toolcard h4{margin:0;font-size:1.15rem}.toolcard p{line-height:1.55}.toolactions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.toolactions a,.toolactions button{padding:9px 12px;border:1px solid #087f86;border-radius:8px;color:#06676d;background:#fff;font:inherit;text-decoration:none}.toolactions button:disabled{opacity:.55;cursor:default}.toolstatus{font-size:.85rem;color:#48646d;margin-bottom:0}@media print{.toolbox{display:none}}
body.teacher-mode .profiles,body.teacher-mode .workbench,body.teacher-mode .notebook{display:none!important}

#studentmode{border:1px solid #c9dfda;border-radius:12px;padding:14px;margin:0 0 18px}#studentmode legend{font-weight:600;padding:0 6px}.modechoices{display:flex;flex-wrap:wrap;gap:10px}.modechoices label{display:flex;align-items:center;gap:8px;padding:12px;background:#edf6f3;border-radius:8px;flex:1;min-width:190px}.modechoices input{width:auto;margin:0}.sessionmode{font-size:12px;padding:6px 9px;border-radius:20px;background:#edf6f3;color:#087f86}.profiles [hidden],.workbench [hidden],.namefields [hidden]{display:none!important}

#connection .modechoices label{display:flex;flex-direction:row;align-items:center;gap:10px}#connection .modechoices input{width:auto;flex:0 0 auto;padding:0;margin:0}

.followup{padding:24px;background:#f0f7f6;border-radius:16px;margin:20px 0}.followup>input,.followup>select{margin:6px;max-width:100%}.followup-analysis,.guidance-card{background:white;border:1px solid #d7e5e2;border-radius:12px;padding:16px;margin:12px 0}.followup pre{white-space:pre-wrap;overflow-wrap:anywhere;background:white;padding:14px;border-radius:8px}.followup form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.followup label{display:flex;flex-direction:column;gap:6px}.followup textarea,.guidance-card textarea{display:block;width:100%;min-height:90px;margin:12px 0}.followup form textarea{grid-column:1/-1}.followup progress{width:100%}@media(max-width:650px){.followup form{grid-template-columns:1fr}}
.toolactions[hidden],.toolactions a[hidden],.toolactions button[hidden]{display:none!important}



/* Espaces dédiés et navigation persistante */
[hidden]{display:none!important}.sidebar{overflow-y:auto;padding:20px 18px}.sidebar .school{margin:8px 0 16px}.sidebar .brand .schoollogo{max-width:130px}.sidebar .brand{font-size:19px}.sidebar .navlabel{margin:12px 0 5px}.sidebar nav button{padding:9px 10px;margin:2px 0}.sidebar .sidebottom{padding-top:18px}.sidebar #notebook{margin:8px 0}#spacenav button{font-size:14px;font-weight:600}#workspace{max-width:1200px;margin:auto}#workspace h1{font-size:32px;line-height:1.2;margin:10px 0 24px}.workspacegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px;margin:20px 0}.workspacecard,.statcard{border:1px solid var(--line);background:white;border-radius:14px;padding:22px;text-align:left}.workspacecard h3{margin:4px 0 12px}.workspacecard h4{margin:15px 0 4px}.workspacecard p{margin:8px 0}.workspacecard button{margin-top:12px}.dashboardstats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:25px 0}.statcard strong{display:block;font-size:34px;color:var(--teal)}.statcard span{font-size:14px}.resourcelist{display:grid;gap:12px;margin-top:20px}.resourcelist a{padding:18px;background:white;border:1px solid var(--line);border-radius:12px;text-decoration:none}#workspace select,#workspace textarea{max-width:100%;padding:10px;border:1px solid #c9dfda;border-radius:8px}#workspace textarea{width:100%}#teacherinline #examteacher button{margin:5px}#teacherinline #createuser{display:grid;gap:14px;max-width:600px}#teacherinline #studentlist>div{background:white;padding:18px;margin:12px 0;border-radius:12px}#teacherinline #studentlist button,#teacherinline #studentlist select{margin:6px}.workspaceerror{color:#943524}.loginlogo{max-width:140px!important}#connection{padding:24px}#connection h2{font-size:24px}#connection .modechoices label{padding:8px;min-width:150px}#connection .hint{font-size:12px}#connection #studentmode{padding:10px;margin-bottom:12px}@media(max-width:700px){.dashboardstats{grid-template-columns:1fr}.workspacegrid{grid-template-columns:1fr}.sidebar #spacenav{display:flex;flex-wrap:wrap;gap:5px}.sidebar #spacenav button{width:auto}#workspace h1{font-size:26px}}@media print{#spacenav,#workspace{display:none!important}}

/* En-tête : garder le carnet lisible lorsque les actions occupent la largeur. */
.topbar{height:auto;min-height:82px;display:flex;flex-wrap:wrap;gap:12px 18px;padding-top:14px;padding-bottom:14px}
.topbar .breadcrumb{flex:0 1 180px}
#accountbar{flex:1 1 420px;flex-wrap:wrap;min-width:0}
#accountbar button{white-space:normal}
.topbar .profiles{display:flex;align-items:center;gap:8px;flex:0 0 auto;flex-wrap:wrap;margin-left:auto;max-width:100%}
.topbar .profiles>span{white-space:nowrap;flex:0 0 auto}
.topbar .profiles button{max-width:200px;overflow-wrap:anywhere}
@media(max-width:700px){.topbar .profiles>span{display:inline}.topbar .profiles{margin-left:0}.topbar #accountbar{flex-basis:100%}}

.projectform{display:grid;gap:12px;margin:16px 0}.projectform label{display:grid;gap:5px}.projectform input,.projectform select,.projectform textarea{max-width:100%;padding:8px}.classtable{width:100%;border-collapse:collapse;display:block;overflow-x:auto}.classtable th,.classtable td{padding:12px;border-bottom:1px solid #dbe4e9;text-align:left}.projectsuccess{color:#087f86;font-weight:600}

/* Bibliothèque : couvertures actualisées */
.resourcelist .librarybook{display:flex;align-items:center;gap:18px}.librarycover{display:block;width:90px;height:auto;flex:0 0 90px;border-radius:4px;box-shadow:0 3px 10px #17344826}

.ai-panel{padding:20px;margin:20px 0;border:1px solid #b9d9d9;border-radius:14px;background:#eef8f6}.ai-panel textarea,.ai-panel select{display:block;width:100%;box-sizing:border-box;margin:12px 0}.ai-panel button{margin:8px 8px 8px 0}.ai-panel label{display:block;margin:12px 0}.ai-answer,.ai-observation p{white-space:pre-wrap}.ai-observation{padding:12px;background:white;margin:12px 0;border-left:3px solid #00858b}.ai-observation small{display:block}.ai-footnote{font-size:.9em;color:#45616a}.ai-panel input[type=checkbox]{width:auto;margin:0 10px}

.lessonsteps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:20px 0 10px}.lessonsteps button{padding:12px 8px;border:1px solid #b9d8d8;border-radius:12px;background:#fff;color:#123d51;font:inherit;cursor:pointer}.lessonsteps button.active{background:#087f86;color:#fff;border-color:#087f86}.lessonbuttons{display:flex;justify-content:space-between;gap:12px;margin:24px 0 4px}.lessonbuttons button{padding:12px 16px;border:1px solid #b9d8d8;border-radius:12px;background:#fff;color:#123d51;font:inherit;cursor:pointer}.lessonbuttons button:disabled{opacity:.5;cursor:default}.notebookquestion{background:#edf7f5;border-left:4px solid #087f86;padding:16px;line-height:1.6}#lessonbody>details{margin:22px 0;padding:14px;border:1px solid #b9d8d8;border-radius:12px}#lessonbody>details summary{cursor:pointer;font-weight:600}#lessonstepstatus{color:#087f86;font-weight:600}[data-lesson-stage][hidden]{display:none!important}@media(max-width:650px){.lessonsteps{grid-template-columns:repeat(2,minmax(0,1fr))}.lessonbuttons{flex-wrap:wrap}.lessonbuttons button{flex:1}}

.lessonsteps{position:sticky;top:0;z-index:3;background:#faf7f0;padding:8px 0;margin-top:12px}[data-lesson-stage] h3{scroll-margin-top:100px}#lesson .lessonimage{max-height:180px;object-fit:cover}#lessonstepstatus{scroll-margin-top:100px}

.interactivefilters{display:flex;flex-wrap:wrap;align-items:end;gap:18px;padding:18px;background:#edf7f5;border-radius:14px;margin:16px 0}.interactivefilters label{display:grid;gap:6px;flex:1;min-width:200px}.interactivefilters select{width:100%;padding:12px;border:1px solid #bdd4d4;border-radius:8px;font:inherit}.workspacecard label:has([aria-label^="Réponse interactive"]),.workspacecard label:has([aria-label^="Mon raisonnement"]){display:grid;gap:8px;margin:16px 0;font-weight:600}.workspacecard [aria-label^="Réponse interactive"],.workspacecard [aria-label^="Mon raisonnement"]{width:100%;box-sizing:border-box;padding:12px;border:1px solid #bdd4d4;border-radius:8px;background:#fff;font:inherit;font-weight:400}.workspacecard textarea{resize:vertical}.workspacecard button{margin:4px 6px 4px 0}

/* Carnet : logo dimensionné dans la feuille externe, compatible avec la politique de sécurité. */
#journal .journal-logo{display:block;width:120px;max-width:100%;height:auto;object-fit:contain;margin:12px 0 18px}
#journal{overflow-x:hidden}
#journalrows{max-width:100%;overflow-x:auto}
#journal table{table-layout:fixed}
#journal th,#journal td{overflow-wrap:anywhere;vertical-align:top}

.direction-mode .hero,.direction-mode .courses,.direction-mode .workbench,.direction-mode .profiles,.direction-mode #levelslabel,.direction-mode #nav,.direction-mode #notebook,.direction-mode .principles{display:none!important}.direction-table{overflow-x:auto}.direction-table table{width:100%;border-collapse:collapse}.direction-table td,.direction-table th{padding:12px;border-bottom:1px solid #d7e3e3;text-align:left;vertical-align:top}.report-readable{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.65}.workspacecard textarea{width:100%;box-sizing:border-box}


.loginportals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}
.loginportals button{padding:14px 8px;min-height:64px;font-weight:600}
.loginportals button[aria-pressed="true"]{background:#00848c;color:white;border-color:#00848c}
.loginportals button:focus-visible{outline:3px solid #f8b83f;outline-offset:3px}
@media(max-width:550px){.loginportals{grid-template-columns:1fr}.loginportals button{min-height:44px}}

.class-report-preview{overflow-x:auto;margin:16px 0}.class-report-preview table{width:100%;border-collapse:collapse}.class-report-preview td,.class-report-preview th{padding:10px;border-bottom:1px solid #d7e3e3;text-align:left;vertical-align:top}.class-report-meta{color:#526b76;font-size:.9em}.pdf-export{margin:10px 0}

/* Navigation et formulaires pour téléphone, tablette et poste de classe. */
#mobile-navigation{display:none}.sidebar{overflow-y:auto;max-height:100dvh}.shell,main,#workspace,#workspacebody,.workspacegrid,.workspacecard,.toolcard{min-width:0}.responsive-table{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.workspacecard pre{max-width:100%}.toolactions{flex-wrap:wrap}.toolactions a,.toolactions button{max-width:100%;overflow-wrap:anywhere}.toolcard details{margin-top:10px}.toolcard summary{cursor:pointer;color:#087f86}
@media(max-width:1024px){
 .sidebar{position:relative;inset:auto;width:100%;height:auto;max-height:none;padding:14px 18px;border-right:0;border-bottom:1px solid var(--line);display:block;overflow:visible}
 .sidebar .brand{flex-direction:row;align-items:center;gap:12px;width:calc(100% - 90px)}.schoollogo{width:100px;height:67px}.brand>span{font-size:19px;margin:0}.sidebar>.school{font-size:11px;margin:6px 0 0}.sidebottom{display:none}
 #mobile-navigation{display:block;position:absolute;right:18px;top:24px;min-height:44px}
 body:not(.mobile-nav-open) #spacenav,body:not(.mobile-nav-open) #nav,body:not(.mobile-nav-open) #levelslabel,body:not(.mobile-nav-open) #spacelabel,body:not(.mobile-nav-open) #notebook{display:none!important}
 #spacenav,#nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0}nav button{width:100%;margin:0;min-height:44px;font-size:14px;padding:10px;text-align:left;white-space:normal}.navlabel{display:block;margin-top:16px}.notebook{position:static;margin:6px 0;font-size:14px}.shell{margin-left:0;width:100%}
 .topbar{height:auto;min-height:64px;padding:12px 18px;flex-wrap:wrap;gap:12px}#accountbar{flex-wrap:wrap;min-width:0;max-width:100%;font-size:14px}#accountbar button{font-size:14px;min-height:44px;padding:9px 12px}.profiles{flex-wrap:wrap;max-width:100%}.profiles button{min-height:44px}.breadcrumb{font-size:12px}
 main{width:100%;max-width:100%;padding:22px 18px}.workspacegrid,.dashboardstats,.toolgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspacecard{padding:18px;overflow-wrap:anywhere}h1{font-size:32px;overflow-wrap:anywhere}h2{font-size:25px}.interactivefilters label{min-width:0;flex:1 1 210px}.interactivefilters{padding:14px;gap:12px}input,select,textarea{min-width:0;max-width:100%}.skip{left:18px}
 .direction-table,.class-report-preview{max-width:100%;overflow-x:auto}.direction-table table,.class-report-preview table{min-width:700px}.responsive-table table{min-width:600px}
 dialog{max-height:calc(100dvh - 24px);width:calc(100vw - 24px);max-width:850px;padding:22px}#connection{max-width:520px}.loginlogo{width:170px;height:112px}
}
@media(max-width:600px){
 body{font-size:16px}.sidebar{padding:12px 14px}.schoollogo{width:80px;height:55px}.brand>span{font-size:17px}#mobile-navigation{right:14px;top:19px}#spacenav,#nav{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{padding:10px 14px;gap:8px}.breadcrumb{display:none}#accountbar{gap:7px}#accountname{flex-basis:100%;overflow-wrap:anywhere}main{padding:18px 14px}.workspacegrid,.dashboardstats,.toolgrid{grid-template-columns:1fr}.workspacecard{padding:15px}.interactivefilters{display:grid;grid-template-columns:1fr}.interactivefilters label{width:100%}h1{font-size:28px;line-height:1.2;letter-spacing:-.5px}h2{font-size:23px}h3{font-size:19px}.workspacecard button,.toolactions button,.toolactions a{min-height:44px}input,select,textarea{font-size:16px!important}.heroactions,.workbench,.sectionhead{flex-wrap:wrap}.sectionhead{gap:12px}.meter{max-width:100%;width:140px}.heroactions a{max-width:100%;overflow-wrap:anywhere}.timer{max-width:100%}.timer button,.timer select{min-height:44px}.principles{grid-template-columns:1fr;gap:12px}.principles p{font-size:13px}pre{max-width:100%;font-size:13px}.report-readable{font-size:15px;line-height:1.6}.loginlogo{width:145px;height:96px}dialog{padding:20px;max-height:calc(100dvh - 16px);width:calc(100vw - 16px)}#connection{margin:auto}.loginportals{gap:7px;margin:14px 0}.loginportals button{font-size:15px;padding:10px;min-height:44px}#connection h2{font-size:24px}#connection p{font-size:15px}#connection input{width:100%;min-height:44px}.lessonimage{height:140px}footer{padding:16px 0}.copyright{font-size:10px;padding:12px 14px}.toast{width:calc(100% - 28px);max-width:520px;text-align:center;overflow-wrap:anywhere}
}


[data-download-restricted="true"]{display:none!important}
.download-notice{padding:18px;border:1px solid #b7d6d8;border-radius:12px;background:#eef8f7}

#pilot-report{position:fixed;right:18px;bottom:18px;z-index:20;background:#00848c;color:white;border-radius:28px;padding:12px 18px;box-shadow:0 3px 14px #173b4b33}
#pilot-report[hidden],#pilot-manage[hidden]{display:none!important}
#pilot-dialog{width:min(640px,calc(100vw - 32px));max-height:88dvh;overflow:auto;border:1px solid #bad2d5;border-radius:18px;padding:24px;background:#faf7f0;color:#173b4b}
#pilot-dialog label,.pilot-report-card label{display:block;margin:14px 0}
#pilot-dialog textarea,#pilot-dialog select,.pilot-report-card textarea,.pilot-report-card select{display:block;width:100%;box-sizing:border-box;margin-top:7px;font:inherit;padding:12px;border:1px solid #bad2d5;border-radius:10px;background:white;color:#173b4b}
.pilot-report-card{padding:18px;border:1px solid #bad2d5;border-radius:12px;background:white;margin:15px 0;overflow-wrap:anywhere;white-space:pre-wrap}
@media(max-width:600px){#pilot-report{right:10px;bottom:10px;font-size:14px;padding:12px}#pilot-dialog{padding:18px}#pilot-dialog textarea,#pilot-dialog select{font-size:16px}}
