@font-face{font-family:Figtree;src:url(/assets/Figtree-Regular-qX1wkSCE.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Figtree;src:url(/assets/Figtree-Medium-B1bjs2yU.ttf) format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Figtree;src:url(/assets/Figtree-SemiBold-DAjxDCyp.ttf) format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Figtree;src:url(/assets/Figtree-Bold-Cx6RhLpw.ttf) format("truetype");font-weight:700;font-display:swap}:root{font-family:Figtree,system-ui,sans-serif;color:#20251f;background:#f7f4ee;font-size:15px;font-synthesis:none;--green: #2e6554;--dark: #223e34;--coral: #c53e36;--border: #e6e7de;--muted: #71766b;--warm: #f7f4ee}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button{color:inherit}h1,h2,h3,p{margin:0}h1{font-size:34px;letter-spacing:-1.1px;font-weight:600;line-height:1.2}h2{font-size:21px;font-weight:600;letter-spacing:-.5px}h3{font-size:16px;font-weight:600;line-height:1.4}p{line-height:1.6}small{font-size:12px;line-height:1.5;color:var(--muted)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #c53e36;outline-offset:4px}label{font-weight:500;font-size:13px;display:block;color:#424b3f}input:not([type=checkbox]):not([type=file]),select,textarea{display:block;width:100%;border:1px solid #dce0d5;background:#fff;border-radius:9px;padding:11px 12px;color:#29322a;min-height:43px}label input,label select,label textarea{margin-top:7px}input[type=checkbox]{accent-color:var(--green);width:18px;height:18px}textarea{resize:vertical;min-height:90px;line-height:1.6}input::placeholder,textarea::placeholder{color:#85897f}select{width:auto;cursor:pointer;font-size:13px}.app-shell{display:flex;min-height:100vh}.sidebar{width:249px;background:#f9f9f3;border-right:1px solid #e3e6da;position:fixed;inset:0 auto 0 0;z-index:30;display:flex;flex-direction:column;padding:33px 18px 15px}.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.7px;font-size:25px}.brand>span:last-child{white-space:nowrap}.brand small{display:block;font-size:8px;letter-spacing:1.7px;font-weight:500;color:#6d7567;margin-top:5px}.logo-mark{display:inline-flex;align-items:center;justify-content:center;width:35px;height:40px;color:#e35d4d;flex-shrink:0}.logo-mark svg{width:32px;height:32px}.brand-apostrophe{color:#ce503f}.workspace{display:flex;align-items:center;gap:10px;background:#eff0e6;border:1px solid #e5e7db;padding:12px 10px;border-radius:10px;margin:34px 0 28px}.workspace-icon{width:32px;height:34px;border-radius:7px;background:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--green);font-size:19px;position:relative}.workspace-icon span{font-size:12px;color:#e66551;position:absolute;right:-3px;bottom:1px}.workspace div{flex:1}.workspace strong{font-size:11px;letter-spacing:.7px}.workspace small{display:block;font-size:11px;margin-top:2px}.nav-label{font-size:9px;letter-spacing:1.5px;color:#89907e;font-weight:600;padding:0 13px;margin-bottom:10px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav a{min-height:43px;display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:8px;color:#646e5e;font-size:12px;font-weight:500;transition:background .15s}.sidebar nav a:hover{background:#edf0e4}.sidebar nav a.active{background:#e5ebd9;color:#304d38;font-weight:600}.sidebar nav a.active svg{color:#3c613d}.nav-count{margin-left:auto;padding:2px 6px;background:#d8e2cb;border-radius:5px;font-size:10px}.second-label{margin-top:29px}.sidebar-bottom{margin-top:auto;padding-top:25px}.sidebar-tip{padding:17px 12px;background:#f2eee1;border-radius:10px;margin:0 4px 18px;position:relative}.sidebar-tip>span{color:#c76242;position:absolute;right:11px;top:9px;font-size:28px}.sidebar-tip strong{font-size:11px;display:block;max-width:145px}.sidebar-tip p{font-size:10px;margin-top:5px;color:#818171}.user-button{display:flex;gap:9px;align-items:center;text-align:left;background:none;border:0;border-top:1px solid var(--border);width:100%;padding:16px 2px 0}.user-button div{flex:1}.user-button strong{font-size:11px;display:block}.user-button small{font-size:10px}.avatar{width:35px;height:35px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:12px;font-weight:600;flex-shrink:0}.avatar-lg{width:58px;height:58px;font-size:20px}.avatar-xl{width:87px;height:87px;font-size:30px}.pastel-0{background:#e3e9d4;color:#4e6542}.pastel-1{background:#f5dfd5;color:#9b4c38}.pastel-2{background:#f6eac5;color:#8a7130}.pastel-3{background:#dfe8e3;color:#466a61}.main-shell{margin-left:249px;width:calc(100% - 249px);min-width:0}.topbar{height:74px;border-bottom:1px solid #e6e7df;display:flex;justify-content:space-between;align-items:center;padding:0 38px;background:#faf9f5}.breadcrumb{display:flex;align-items:center;gap:11px;font-size:11px;color:#8a9084}.breadcrumb strong{font-weight:500;color:#505c4e}.topbar-right{display:flex;align-items:center;gap:17px}.today-label{font-size:11px;color:#777f70}.icon-button{width:34px;height:34px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:transparent;flex-shrink:0;color:#616c5b}.icon-button:hover{background:#ecefe4}.demo-pill{font-size:9px;font-weight:500;padding:6px 9px;background:#f5ebd3;color:#87632c;border-radius:5px}.mobile-toggle,.mobile-logo{display:none}main{padding:34px 38px 30px;max-width:1510px;margin:auto;min-height:calc(100vh - 135px)}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 27px}.page-head p{color:var(--muted);font-size:12px;margin-top:8px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:1.6px;color:#818775;display:block;margin-bottom:9px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;white-space:nowrap;border:1px solid transparent;border-radius:8px;padding:11px 15px;min-height:40px;font-weight:500;font-size:11px;line-height:1.4}.button.primary{background:#2e5846;color:#fff;border-color:#2e5846;box-shadow:0 2px 2px #203e3410}.button.primary:hover{background:#244b3a}.button.secondary{background:#fff;border-color:#dce1d3;color:#40533b}.button.light{background:#f6f3e9;color:#344639;margin-top:22px;padding:12px 17px}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:none;border:0;padding:7px 0;font-size:11px;font-weight:600;color:#3d654d}.back{margin:-7px 0 20px}.hero{position:relative;overflow:hidden;background:#263f35;border-radius:15px;display:flex;min-height:258px;color:#f4f2e5}.hero-copy{padding:29px 33px;position:relative;z-index:2;width:62%}.hero-kicker{font-size:8px;letter-spacing:1.5px;display:flex;gap:7px;align-items:center;color:#c2cdbb;font-weight:500}.live-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#d7cb8e}.hero h2{font-size:39px;line-height:1.05;letter-spacing:-1.2px;font-weight:500;margin:15px 0 12px}.hero h2>span{color:#e68169}.hero p{font-size:11px;color:#c2ccbe;max-width:370px;line-height:1.7}.hero-art{position:absolute;inset:0 0 0 auto;width:42%;overflow:hidden}.orbit{border:1px solid #6f88714f;border-radius:50%;position:absolute;width:315px;height:315px;top:7px;right:-9px;transform:rotate(-30deg)}.orbit.one:after,.orbit.two:after{content:"";position:absolute;top:20px;right:20px;bottom:20px;left:20px;border:1px solid #6f887139;border-radius:50%}.orbit.two{width:260px;height:260px;top:77px;right:22px}.art-card{display:flex;gap:17px;align-items:center;position:absolute;background:#f4e5cc;color:#44513a;transform:rotate(-10deg);padding:21px 24px;border-radius:12px;top:81px;right:56px;box-shadow:0 12px 35px #0002;font-size:15px;line-height:1.5}.art-card svg{width:28px;height:28px;color:#c95d44}.art-card strong{font-weight:600}.art-pill{position:absolute;background:#d4dfbf;display:flex;gap:7px;align-items:center;color:#455a3c;transform:rotate(6deg);border-radius:7px;font-size:10px;padding:10px 13px;bottom:39px;right:26px;box-shadow:0 6px 20px #0002}.art-star{position:absolute;font-size:57px;color:#e59b70;right:23px;top:29px;line-height:1}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:23px 0 29px}.kpi{position:relative;background:#fff;border:1px solid #e8e9e1;border-radius:11px;padding:21px 18px;display:flex;flex-direction:column;min-height:139px}.kpi-icon{position:absolute;right:15px;top:19px;border-radius:9px;display:flex;justify-content:center;align-items:center;width:34px;height:34px}.tone-0{background:#edf0e1;color:#76874d}.tone-1{background:#e4eee6;color:#557963}.tone-2{background:#faeadc;color:#bf8355}.tone-3{background:#f6e4df;color:#c17a65}.kpi-number{font-size:32px;font-weight:600;letter-spacing:-1px;line-height:1.2;margin-bottom:13px}.kpi>strong:not(.kpi-number){font-size:11px;font-weight:500}.kpi>span:not(.kpi-icon):not(.kpi-number){font-size:12px}.kpi small{font-size:9px;margin-top:5px;color:#939887}.dashboard-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:20px}.panel{background:#fff;border:1px solid #e5e8dd;border-radius:12px;padding:23px;min-width:0}.section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:19px}.section-head .eyebrow{font-size:8px;margin-bottom:7px}.section-head h2{font-size:17px}.section-head p{font-size:12px;color:var(--muted);margin-top:6px}.round-count{border-radius:50%;width:24px;height:24px;background:#f2f2e9;display:inline-flex;align-items:center;justify-content:center;font-size:10px;color:#738061}.session-card{display:flex;align-items:center;gap:16px;border:1px solid #e9e9de;border-radius:10px;padding:18px;margin-bottom:13px;background:#fbfbf6}.session-card.compact{padding:15px 11px;gap:12px}.date-block{width:47px;min-height:58px;border-radius:8px;background:#eeefdf;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}.date-block span{font-size:9px;text-transform:uppercase;color:#7c805e}.date-block strong{font-size:24px;font-weight:500;color:#525c3f;line-height:1.2}.session-info{flex:1;min-width:0}.session-info h3{font-size:13px;margin:6px 0 4px}.session-info p{font-size:9px;display:flex;align-items:center;gap:6px;color:#8c9180;flex-wrap:wrap}.session-info small{font-size:9px}.session-info .tag{font-size:8px;padding:3px 6px}.inline{display:flex;align-items:center;gap:9px}.between{justify-content:space-between}.tag{display:inline-flex;align-items:center;justify-content:center;gap:4px;border-radius:5px;padding:4px 8px;background:#f0f1e8;color:#6d775c;font-size:10px;font-weight:500;white-space:nowrap;line-height:1.3}.tag.present,.tag.validee,.tag.valide,.tag.termine,.tag.remise,.tag.recue{background:#e5efdf;color:#3e683d}.tag.the matique{color:#658051}.tag.absent,.tag.refusee,.tag.haute{background:#f9e6df;color:#a34937}.tag.retard,.tag.scolaire,.tag.preparation,.tag.planifiee,.tag.en_attente{background:#f8efd6;color:#8d7136}.tag.orientation,.tag.sortie{background:#e7eee6;color:#4b715b}.tag.educatif{background:#f8e7df;color:#a86443}.tag.en_cours,.tag.actif{background:#e5eee1;color:#527349}.tag.a_revoir{background:#f7e6da;color:#a26639}.task-row{display:flex;align-items:center;gap:10px;padding:14px 0;border-bottom:1px solid #eff0e7}.task-row:last-child{border-bottom:0}.task-row>div{flex:1;min-width:0}.task-row strong{font-size:11px;font-weight:500;display:block}.task-row small{display:block;font-size:9px;margin-top:5px;color:#919886}.task-row small span{margin:0 5px}.task-row .tag{font-size:8px}.task-check{width:17px;height:17px;min-width:17px;border:1px solid #d1d8c6;border-radius:5px;background:#fff;display:flex;align-items:center;justify-content:center;padding:0}.task-check.checked{background:var(--green);border-color:var(--green);color:#fff}.note-strip{background:#f0eee1;border:1px solid #e9e6d5;padding:17px 21px;display:flex;gap:13px;align-items:center;border-radius:10px;margin-top:24px}.note-strip>div{flex:1}.note-strip strong{font-size:11px;font-weight:600}.note-strip p{font-size:9px;color:#8a8c79;margin-top:3px}.note-strip .text-button{font-size:9px}.note-icon{color:#85906c}.footer{max-width:1510px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:18px 38px 23px;color:#89917d;font-size:9px}.footer>span>span{padding:0 7px;color:#c77d5a}.footer small{font-size:8px;color:#999e8e}.toolbar{display:flex;align-items:center;gap:14px;margin-bottom:25px}.search{display:flex;align-items:center;gap:9px;border:1px solid #e0e3d6;background:#fff;padding:0 12px;border-radius:9px;width:320px;color:#7c8871}.search input:not([type=checkbox]){border:0;background:transparent;padding:11px 0;min-width:0;font-size:12px}.search input:focus-visible{outline:none}.search:focus-within{outline:2px solid var(--green)}.toolbar select{max-width:240px}.muted{color:var(--muted);font-size:12px}.small{font-size:10px}.young-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.young-card{background:#fff;border:1px solid #e1e5d9;border-radius:12px;padding:23px 22px;text-align:left;transition:transform .2s,box-shadow .2s}.young-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #263f3508}.young-card h3{margin-top:19px;font-size:20px;letter-spacing:-.4px}.young-card p{font-size:11px;color:#808976;margin-top:5px}.group-label{display:block;font-size:10px;margin-top:8px;color:#8e9684}.young-goals{display:flex;justify-content:space-between;font-size:10px;margin:24px 0 9px;color:#7a856c}.young-goals strong{font-weight:500;color:#526a48}.progress{height:5px;overflow:hidden;background:#eff1e8;border-radius:5px}.progress i{display:block;height:100%;background:#8f9f6f;border-radius:5px;transition:width .3s}.young-footer{display:flex;align-items:center;justify-content:space-between;margin-top:15px;font-size:9px;color:#959d8a}.circle-arrow{width:27px;height:27px;background:#f3f5ec;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#61794e}.empty{text-align:center;padding:40px 15px;color:#808a74}.empty-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f0f2e5;color:#93a06e;margin:0 auto 16px}.empty h3{font-size:15px;color:#526148}.empty p{font-size:11px;max-width:350px;margin:8px auto 18px}.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.goal-card{border:1px solid #e4e7dc;border-radius:10px;padding:18px;margin-bottom:13px;background:#fff}.goal-card h3{margin:12px 0 7px;font-size:15px}.goal-card p{font-size:11px;color:#7d8871;margin-bottom:15px;white-space:pre-wrap}.goal-card small{font-size:10px}.green{color:#5b7b49;font-size:12px}.mt{margin-top:20px}.mb{margin-bottom:20px}.profile-head{display:flex;align-items:center;gap:22px;margin-bottom:28px}.profile-main{flex:1}.profile-head h1{margin-top:11px}.profile-head p{color:#7c8573;font-size:12px;margin:7px 0}.profile-head small{font-size:10px}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);background:#fff;border-radius:10px;padding:20px 10px;margin:23px 0}.profile-stats>div{text-align:center;border-right:1px solid #eceee3}.profile-stats>div:last-child{border:0}.profile-stats strong{font-size:27px;font-weight:500;display:block}.profile-stats span{font-size:10px;color:#7a866b;display:block;margin-top:4px}.tabs{display:flex;gap:25px;border-bottom:1px solid #e0e4d5;margin-bottom:26px;overflow:auto}.tabs button{border:0;background:transparent;padding:12px 0 15px;font-size:12px;font-weight:500;color:#89927b;white-space:nowrap;border-bottom:2px solid transparent}.tabs button.active{color:#43623c;border-color:#567d48}.body-text{white-space:pre-wrap;color:#68785c;font-size:13px;margin-top:10px;line-height:1.8}.timeline-item{position:relative;border-left:1px solid #e6ebdc;padding:0 0 23px 18px;margin-left:5px}.timeline-dot{position:absolute;background:#9aa77d;border:3px solid white;width:10px;height:10px;border-radius:50%;top:3px;left:-5px}.timeline-item h3{font-size:13px;margin:8px 0}.timeline-item p{white-space:pre-wrap;font-size:11px;color:#738165}.timeline-item small{font-size:9px}.timeline-item .tag{font-size:8px}.actions-end{display:flex;justify-content:flex-end;margin-bottom:20px}.homework-row{display:flex;gap:15px;align-items:flex-start;padding:23px 0;border-bottom:1px solid var(--border)}.homework-row>div{flex:1}.homework-row h3{margin-top:9px}.homework-row p{font-size:12px;color:#758067;white-space:pre-wrap;margin-top:8px}.homework-row small{display:block;margin-top:10px;font-size:10px}.internal{padding:10px;border-radius:6px;background:#f8f2e8;font-size:11px!important}.domain-section{margin:20px 0 28px}.domain-section>h2{font-size:17px;padding-bottom:12px;border-bottom:1px solid var(--border)}.competence-row{display:flex;align-items:center;gap:15px;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eff1e8;font-size:12px}.competence-row select{font-size:11px;min-height:33px;padding:7px;max-width:180px}.list-row{display:flex;align-items:center;gap:14px;padding:17px 0;border-bottom:1px solid #ecefe3;font-size:12px}.list-row:last-child{border:0}.list-row>div{flex:1;min-width:0}.list-row strong{font-size:12px;font-weight:500;display:block;overflow-wrap:anywhere}.list-row small{font-size:10px;display:block;margin-top:4px;overflow-wrap:anywhere}.session-detail-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}.session-detail-grid .panel>h2{margin-top:10px}.session-detail-grid .panel>h3{font-size:13px}.session-detail-grid .body-text{font-size:12px}.attendance-row{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid #ecefe3}.attendance-row>strong{flex:1;font-size:12px}.attendance-controls{display:flex;align-items:center;gap:8px}.attendance-controls select{font-size:11px;min-height:37px;max-width:160px;padding:8px}.late-field{display:flex;align-items:center;gap:4px;font-size:10px}.late-field input:not([type=checkbox]){max-width:60px;min-height:30px;font-size:11px;padding:7px}.unsaved{font-size:11px;color:#9a702f;margin-top:15px}.project-card{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden}.project-visual{height:125px;position:relative;display:flex;align-items:center;justify-content:center;gap:14px}.project-visual>span:not(.tag){font-size:20px;font-weight:500}.project-visual .tag{position:absolute;right:13px;top:13px;background:#ffffffa0}.project-body{padding:22px}.project-body h2{font-size:21px;margin:10px 0}.project-body>small{font-size:9px;text-transform:uppercase;letter-spacing:1px}.project-body p{font-size:12px;color:#7c876e;margin-bottom:20px;white-space:pre-wrap}.project-body .inline small{font-size:10px}.kanban{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.kanban-column{background:#eeefe6;border-radius:10px;padding:17px;min-height:300px}.kanban-column>.inline{margin-bottom:18px}.kanban-column>.inline h3{font-size:13px}.kanban-card{padding:17px;background:#fff;border:1px solid #e3e6d7;border-radius:9px;margin-bottom:12px}.kanban-card h3{margin:14px 0 8px;font-size:14px}.kanban-card p{font-size:11px;color:#7b876d;margin-bottom:13px;white-space:pre-wrap}.kanban-card>small{font-size:9px}.kanban-card select{width:100%;margin:15px 0 6px;font-size:11px;padding:8px;min-height:35px}.meeting-card h2{margin-top:17px;font-size:21px}.meeting-card>small{font-size:10px;display:block;margin-top:8px}.meeting-card h3{font-size:13px}.meeting-card .body-text{font-size:12px}.meeting-card .inline.mt{flex-wrap:wrap}.decision{background:#edf1e4;padding:15px;border-radius:8px;margin:18px 0;color:#546c43;font-size:12px}.decision h3{font-size:12px}.decision p{white-space:pre-wrap;font-size:11px;margin-top:6px}.team-card{text-align:center;padding:30px}.team-card h2{margin:18px 0 10px;font-size:19px}.team-card p{font-size:12px;margin-top:13px}.report-bar{margin-top:28px}.report-bar>div:first-child{display:flex;justify-content:space-between;font-size:12px;margin-bottom:11px}.report-bar span{color:#89927a;font-size:11px}.report-bar .progress{height:10px}.info-banner{background:#f3efdf;border:1px solid #e9e1c8;color:#847344;padding:13px 15px;border-radius:8px;font-size:11px;line-height:1.7;margin:13px 0}.cycle-card{position:relative}.cycle-card>.tag{position:absolute;right:20px;top:25px}.cycle-icon{width:49px;height:49px;border-radius:12px;background:#edf0df;color:#7a925b;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.cycle-card h2{font-size:23px;margin:14px 0 9px}.cycle-card>small{font-size:10px}.cycle-card>p{font-size:12px;color:#7d886e;margin:15px 0}.challenge{padding:17px;background:#f8f0e3;border-radius:9px;margin:17px 0}.challenge .eyebrow{color:#af8c61;font-size:8px}.challenge h3{font-size:13px;color:#8b6c45;line-height:1.6;white-space:pre-wrap}.reward-card h2{font-size:20px;margin-top:18px}.reward-card p{font-size:12px;color:#849074;margin:10px 0 23px}.reward-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:14px}.points{display:flex;align-items:center;gap:4px;color:#8a7340;font-size:15px}.submission{padding:22px 0;border-bottom:1px solid var(--border)}.submission h3{font-size:16px}.resource-note{display:flex;gap:9px;font-size:11px;align-items:center;color:#84946f;padding:0 0 17px;border-bottom:1px solid var(--border)}.file-icon{color:#789260;background:#f0f3e8;width:38px;height:43px;display:flex;justify-content:center;align-items:center;border-radius:7px}.message-panel{max-width:850px}.message-list{display:flex;flex-direction:column;align-items:flex-start;gap:16px;min-height:220px;max-height:500px;overflow:auto;margin-bottom:20px;padding:10px 5px}.message-list>.empty{align-self:center}.message{background:#eff2e8;border-radius:0 10px 10px;padding:13px 17px;max-width:82%}.message.mine{align-self:flex-end;background:#2e5846;border-radius:10px 0 10px 10px;color:#fff}.message p{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0}.message small{font-size:9px}.message.mine small{color:#c6d6bf}.message-input{display:flex;align-items:flex-end;gap:12px;border-top:1px solid var(--border);padding-top:18px}.message-input textarea{min-height:70px;font-size:13px}.account-panel{max-width:850px}.account-panel>h2{margin:18px 0 9px}.account-panel>p{font-size:12px;color:#7a876c;margin-bottom:12px}.security-block{display:flex;align-items:center;gap:15px;margin:25px 0;padding:25px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:#6d8553}.security-block>div{flex:1}.security-block h3{font-size:14px}.security-block p{font-size:11px;margin-top:5px;color:#7b886d}.account-row{flex-wrap:wrap}.danger{color:#b04c3e}.error{padding:13px 15px;background:#fae7e1;border:1px solid #ebc9bc;border-radius:8px;color:#9f3c2a;font-size:12px;line-height:1.6;margin:15px 0}.error-global{display:flex;align-items:center;gap:15px;justify-content:space-between;margin-top:0}.error button{background:transparent;color:inherit;font:inherit;border:0;text-decoration:underline}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#17291f66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;padding:25px}.modal{background:#fffef9;border-radius:16px;width:650px;max-width:100%;max-height:90vh;overflow:auto;padding:27px;box-shadow:0 25px 80px #15271f33}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px}.modal-head h2{font-size:23px;line-height:1.3}.modal-head .eyebrow{font-size:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 19px}.form-grid .wide{grid-column:1/-1}.form-grid label{font-size:12px}.form-grid input,.form-grid textarea,.form-grid select{font-size:13px}.form-grid select{width:100%}.required{color:#b5563f}.checkbox-label{display:flex;align-items:center;gap:10px;align-self:center;line-height:1.5;min-height:42px;font-size:12px}.checkbox-label input{margin-top:0;flex-shrink:0}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:30px;border-top:1px solid var(--border);padding-top:21px}.modal-content{font-size:13px;line-height:1.7}.modal-content h2{margin-bottom:15px}.modal-content label{margin-bottom:18px}.secret{display:block;background:#f0f2e7;border:1px solid #d9dfca;color:#385539;border-radius:8px;padding:18px;font-size:16px;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;margin:20px 0}.toast-region{position:fixed;bottom:25px;left:50%;transform:translate(-50%);z-index:150}.toast{background:#2c4a36;box-shadow:0 8px 30px #182c2420;color:#fff;padding:14px 22px;border-radius:10px;display:flex;gap:10px;align-items:center;font-size:12px;white-space:nowrap}.boot{height:70vh;display:flex;flex-direction:column;gap:18px;align-items:center;justify-content:center;color:#718262;font-size:13px}.spin{animation:rotate 1.5s linear infinite}@keyframes rotate{to{transform:rotate(360deg)}}.skip-link{position:fixed;top:-100px;left:270px;z-index:200;background:#fff;padding:10px}.skip-link:focus{top:10px}.login-page{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh}.login-art{background:#263f35;color:#edeedd;padding:50px 65px;position:relative;overflow:hidden;min-height:700px;display:flex;flex-direction:column}.login-art .brand{font-size:30px}.login-art .logo-mark{color:#ee916f}.login-eyebrow{font-size:10px;letter-spacing:2px;margin-top:100px;color:#bac8a8}.login-art h1{font-size:56px;font-weight:500;line-height:1.12;letter-spacing:-1.8px;margin-top:25px;position:relative;z-index:2}.login-art h1 em{font-style:normal;color:#edaa7b}.login-art>p{color:#b6c3aa;font-size:13px;margin-top:25px;position:relative;z-index:2}.login-art>small{font-size:10px;letter-spacing:.3px;color:#a0b08e;margin-top:auto;padding-top:130px}.login-shapes{position:absolute;right:-170px;bottom:-130px;width:460px;height:460px;border:1px solid #a3b3913b;border-radius:50%}.login-shapes span{position:absolute;top:25px;right:25px;bottom:25px;left:25px;border:1px solid #a3b3913b;border-radius:50%}.login-shapes span:nth-child(2){top:55px;right:55px;bottom:55px;left:55px}.login-shapes span:nth-child(3){top:90px;right:90px;bottom:90px;left:90px;background:#45634c33}.login-form-wrap{display:flex;align-items:center;justify-content:center;padding:40px;background:#faf9f4}.login-form{width:350px;max-width:100%}.login-form h2{font-size:31px;letter-spacing:-1px;margin:13px 0}.login-form>p{font-size:12px;color:#7f8c6f;margin-bottom:30px}.login-form label{margin-top:22px}.login-form .eyebrow{font-size:9px}.login-form input{font-size:14px;min-height:48px!important;background:#fffefb!important}.login-form details{margin:17px 0;font-size:11px;color:#7d886d;cursor:pointer}.login-form details label{margin-top:12px}.login-submit{width:100%;margin-top:13px;min-height:46px;font-size:12px}.login-form .login-help{text-align:center;font-size:10px;margin:22px 0 30px;line-height:1.8}.login-security{display:flex;align-items:center;justify-content:center;gap:7px;font-size:9px;color:#91a07b;padding-top:20px;border-top:1px solid #e3e7d8}.gate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:30px}.gate-form{width:420px;max-width:100%;background:#fffef9;border:1px solid var(--border);padding:30px;border-radius:14px}.gate-form h2{margin:18px 0 10px}.gate-form>p{font-size:12px;color:#7a886b;margin-bottom:20px}.gate-form label{margin:19px 0}.gate-form>.button{margin-top:15px}.modal .gate-form{padding:0;border:0;width:100%}@media(min-width:1450px){main{padding:40px 50px}.topbar{padding:0 50px}.hero{min-height:290px}.hero-copy{padding:35px 40px}.hero h2{font-size:46px}.hero p{font-size:13px}.hero-art{width:42%}.art-card{top:95px;right:95px;padding:25px 29px;font-size:18px}.art-pill{bottom:37px;right:60px}.orbit.one{right:15px;width:365px;height:365px}.orbit.two{right:60px}.art-star{right:67px}.kpi{min-height:155px}.kpi>strong:not(.kpi-number){font-size:13px}.kpi small{font-size:11px}.session-info h3{font-size:15px}.session-info p{font-size:11px}.task-row strong{font-size:13px}.task-row small{font-size:11px}.panel .section-head h2{font-size:20px}.sidebar nav a{font-size:13px}}@media(max-width:1100px){.sidebar{width:220px;padding:27px 14px 14px}.main-shell{margin-left:220px;width:calc(100% - 220px)}.brand{font-size:22px}.sidebar nav a{font-size:11px;gap:9px;padding:10px}.topbar{padding:0 25px}main{padding:30px 25px}.hero-copy{padding:27px;width:64%}.hero-art{width:38%}.art-card{right:-20px;top:90px;padding:17px;font-size:13px}.art-pill{right:-20px;font-size:9px}.hero h2{font-size:35px}.hero p{max-width:270px;font-size:10px}.art-star{right:20px;top:25px}.kpis{gap:10px}.kpi{padding:17px 13px}.kpi-icon{width:29px;height:29px;right:10px;top:17px}.kpi-icon svg{width:17px}.kpi-number{font-size:28px}.kpi>strong:not(.kpi-number){font-size:10px}.kpi small{font-size:8px}.dashboard-grid{grid-template-columns:1fr}.young-grid,.cards-grid{grid-template-columns:repeat(2,1fr)}.session-detail-grid{grid-template-columns:1fr}.kanban{gap:10px}.kanban-column{padding:12px}.kanban-card{padding:13px}.today-label{display:none}.login-art{padding:40px}.login-art h1{font-size:46px}.login-form-wrap{padding:30px}}@media(max-width:760px){.sidebar{transform:translate(-100%);width:250px;transition:transform .2s}.sidebar.open{transform:translate(0)}.sidebar-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c312750;z-index:29}.main-shell{margin-left:0;width:100%}.mobile-toggle{display:inline-flex}.topbar{height:61px;padding:0 17px;gap:10px}.breadcrumb{font-size:10px;gap:6px;flex:1}.breadcrumb>strong{max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-right{gap:4px}.demo-pill{font-size:8px;padding:4px 6px}.topbar-right .icon-button{width:30px}.topbar-right .icon-button:first-of-type{display:none}main{padding:27px 18px;min-height:calc(100vh - 120px)}h1{font-size:28px;letter-spacing:-.8px}.page-head{align-items:flex-start;gap:15px;margin-bottom:23px;flex-wrap:wrap}.page-head>div{width:100%}.page-head p{font-size:11px}.page-head .button{font-size:10px;padding:10px 13px}.eyebrow{font-size:8px}.hero{min-height:272px}.hero-copy{width:76%;padding:27px 23px}.hero h2{font-size:37px;margin-top:20px}.hero p{max-width:225px;font-size:10px}.hero-kicker{font-size:7px;letter-spacing:1px}.hero .button{font-size:10px;padding:10px 12px;margin-top:18px}.hero-art{width:29%}.art-card,.art-pill{display:none}.orbit{right:-160px;top:33px}.orbit.two{right:-160px;top:70px}.art-star{font-size:50px;right:9px;top:90px;color:#e89573}.kpis{grid-template-columns:repeat(2,1fr);margin:17px 0 22px;gap:12px}.kpi{min-height:133px;padding:18px 16px}.kpi-icon{width:30px;height:30px;top:16px;right:13px}.kpi-number{font-size:30px;margin-bottom:11px}.kpi>strong:not(.kpi-number){font-size:11px}.kpi small{font-size:9px}.panel{padding:19px 17px}.section-head h2{font-size:17px}.section-head .eyebrow{font-size:7px;letter-spacing:1px}.section-head>.text-button{font-size:9px}.session-card{padding:14px 11px;gap:10px}.session-card.compact{padding:13px 9px}.date-block{width:42px;min-height:53px}.date-block strong{font-size:23px}.session-info h3{font-size:12px}.session-info .inline{gap:6px;flex-wrap:wrap}.session-info p{font-size:9px}.session-card>.button{font-size:0;gap:0;padding:9px}.session-card>.button svg{font-size:14px}.task-row strong{font-size:11px}.task-row small{font-size:9px}.note-strip{padding:15px;gap:10px}.note-strip p{font-size:9px}.note-strip .text-button{display:none}.footer{padding:10px 18px 25px}.footer small{display:none}.young-grid,.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.young-card{padding:17px 14px}.young-card h3{font-size:17px;margin-top:15px}.young-card p{font-size:10px}.young-card .avatar-lg{width:46px;height:46px;font-size:17px}.young-card .tag{font-size:8px}.young-goals{margin-top:19px;font-size:9px}.toolbar{flex-wrap:wrap;gap:10px}.toolbar .search{width:100%}.toolbar select{width:100%;max-width:none}.toolbar .muted{font-size:10px}.tabs{gap:22px}.tabs button{font-size:11px}.profile-head{flex-wrap:wrap;gap:15px}.avatar-xl{width:66px;height:66px;font-size:24px}.profile-main{min-width:180px}.profile-head h1{font-size:25px;margin-top:8px}.profile-head p{font-size:11px}.profile-head .tag{font-size:8px}.profile-stats{grid-template-columns:repeat(2,1fr);gap:20px;padding:20px 0}.profile-stats>div:nth-child(2){border:0}.profile-stats strong{font-size:25px}.profile-stats span{font-size:9px}.attendance-row{flex-wrap:wrap;gap:10px}.attendance-row>strong{font-size:12px}.attendance-controls{width:100%;padding-left:45px;flex-wrap:wrap}.attendance-controls select{max-width:none;flex:1}.session-detail-grid>.panel>.section-head{align-items:flex-start;flex-wrap:wrap}.session-detail-grid .section-head>.button{font-size:10px}.kanban{grid-template-columns:1fr}.kanban-column{padding:15px;min-height:150px}.kanban-card{padding:16px}.kanban-card h3{font-size:15px}.kanban-card p,.kanban-card select{font-size:12px}.project-visual{height:105px;flex-direction:column;gap:6px}.project-visual>span:not(.tag){font-size:14px}.project-visual .tag{font-size:7px;top:8px;right:7px}.project-body{padding:16px 13px}.project-body h2{font-size:18px}.project-body p{font-size:11px}.project-body .inline{flex-wrap:wrap}.meeting-card{grid-column:1/-1}.team-card{padding:22px 14px}.team-card h2{font-size:17px}.cycle-card{grid-column:1/-1}.reward-card{padding:18px 15px}.reward-card h2{font-size:18px}.reward-card p{font-size:11px}.reward-card .points{font-size:13px}.reward-card .inline small{font-size:9px}.reward-card .button{width:100%}.report-bar>div:first-child{flex-wrap:wrap;gap:6px}.report-bar span{font-size:10px}.modal-backdrop{padding:13px}.modal{padding:22px 18px;max-height:93vh;border-radius:12px}.modal-head h2{font-size:21px}.form-grid{gap:19px;grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.modal-actions{position:sticky;bottom:-22px;background:#fffef9;padding:17px 0 5px}.modal-actions .button{flex:1}.message{max-width:90%}.message-input{flex-wrap:wrap}.message-input .button{margin-left:auto}.security-block{flex-wrap:wrap}.security-block .button{margin-left:35px}.account-row{gap:10px}.account-row>div{flex-basis:55%}.account-row .text-button{font-size:10px}.login-page{display:block}.login-art{display:none}.login-form-wrap{min-height:100vh;padding:35px 27px}.mobile-logo{display:flex;margin-bottom:35px}.login-form h2{font-size:32px}.login-form .eyebrow{font-size:8px}.login-form>p{font-size:12px}.gate{padding:20px}.gate-form{padding:25px 20px}.toast{max-width:92vw;font-size:11px;padding:13px 17px;white-space:normal}.toast-region{bottom:18px}.competence-row{gap:12px;font-size:11px}.competence-row select{max-width:140px;font-size:10px}.homework-row{flex-wrap:wrap}.body-text{font-size:12px}.resource-note{font-size:10px;line-height:1.7}.resource-note svg{flex-shrink:0}.note-strip strong{font-size:11px}.skip-link{left:15px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.badge-wall{display:flex;gap:8px;flex-wrap:wrap}.badge-wall .tag{padding:8px 12px;background:#f7edce;color:#8c722d}.sidebar{overflow-y:auto}.sidebar-tip{margin-bottom:12px}.sidebar-bottom{padding-top:18px}.sidebar .second-label{margin-top:22px}.report-filters{align-items:flex-end;padding:17px;background:#f0f1e7;border:1px solid #e2e6d8;border-radius:10px}.report-filters label{font-size:11px}.report-filters select{max-width:240px}.report-filters .button{min-height:43px}.report-filters input{min-width:145px}.rsvp-label{font-size:9px;display:block;font-weight:400;margin-top:4px}.journey>.panel,.journey form>.panel{margin:20px 0}.journey-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}.journey-field{display:flex;flex-direction:column;gap:8px;min-width:0}.journey-field>span,dt{font-size:12px;font-weight:700;color:var(--muted, #65756a)}.journey-field p,.journey-history p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.6}.journey-field textarea{min-height:95px;resize:vertical}.journey input,.journey select,.journey textarea,.journey-filters input,.journey-filters select{border:1px solid #d9dfd5;border-radius:10px;padding:11px;background:#fff;font:inherit;width:100%;box-sizing:border-box}.journey input[type=checkbox]{width:auto}.journey-repeat,.journey-history{padding:18px 0;border-bottom:1px solid #e3e7dd}.journey-repeat dd{margin:7px 0;white-space:pre-wrap}.journey-follow{padding:20px;background:#f0f2e8;border-radius:14px;margin:18px 0}.journey-follow .inline{margin-top:15px}.journey-history p{margin:12px 0}.journey-table{overflow:auto;margin-top:20px}.journey-table table{width:100%;min-width:760px;border-collapse:collapse;text-align:left}.journey-table th,.journey-table td{padding:15px 12px;vertical-align:top;border-bottom:1px solid #e3e7dd;max-width:260px;overflow-wrap:anywhere}.journey-table th{font-size:12px;color:#526957}.journey-table small{display:block;margin-top:7px}.journey-table .tag{margin:3px}.journey-table input{margin-top:8px}.journey-counters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.journey-counters button{cursor:pointer;text-align:left;font:inherit}.journey-counters strong{display:block;font-size:36px;margin-bottom:8px}.journey-counters .selected{outline:2px solid #315c4a}.journey-filters{display:flex;gap:15px}.journey-save{position:sticky;bottom:20px;display:flex;justify-content:flex-end;gap:12px;padding:15px;background:#f6f7ed;border:1px solid #d9dfd5;border-radius:16px;z-index:2}.drive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0}.drive-card{display:flex;gap:15px;align-items:flex-start;border:1px solid #e1e5da;border-radius:16px;padding:20px;color:inherit;text-decoration:none}.drive-card>div{flex:1}.drive-card small,.drive-card span{display:block;line-height:1.5;margin-top:7px}.drive-card span{font-size:11px;color:#315c4a}.drive-card:hover{background:#f0f2e8}@media(max-width:700px){.journey-fields,.drive-grid{grid-template-columns:1fr}.journey-counters{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-filters{flex-direction:column}.journey>.section-head{align-items:flex-start;flex-direction:column;gap:14px}}.agenda-panel{padding:24px;min-width:0}.agenda-top,.agenda-period,.agenda-navigation,.agenda-filters{display:flex;align-items:center;gap:12px}.agenda-top,.agenda-period{justify-content:space-between}.agenda-view-switch{display:flex;background:#f0f2e9;border-radius:14px;padding:5px;gap:3px}.agenda-view-switch button{border:0;background:transparent;border-radius:10px;padding:11px 18px;font:inherit;font-weight:650;cursor:pointer;color:#607063}.agenda-view-switch button[aria-pressed=true]{background:#2b5343;color:#fff;box-shadow:0 3px 8px #214c3520}.agenda-filters{margin:22px 0}.agenda-filters .search{flex:1;min-width:160px}.agenda-filters select,.agenda-date-jump input{border:1px solid #dfe4d9;background:#fff;border-radius:10px;padding:11px;font:inherit;min-width:0}.agenda-period h2{font-size:24px;text-transform:capitalize;margin:0 0 7px}.agenda-period small{color:#6e7a6d}.agenda-legend{display:flex;flex-wrap:wrap;gap:18px;margin:20px 0;font-size:12px;color:#586b5b}.agenda-legend span{display:flex;align-items:center;gap:7px}.agenda-legend i{height:8px;width:8px;border-radius:50%;background:#386957}.agenda-legend i.scolaire{background:#be7b45}.agenda-legend i.orientation{background:#8172ac}.agenda-legend i.sortie{background:#4b8aa2}.agenda-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #e0e5da;border-left:1px solid #e0e5da;border-radius:12px;overflow:hidden}.agenda-weekday{text-align:center;padding:13px 3px;font-size:12px;font-weight:650;color:#607263}.agenda-month-grid>.agenda-weekday{border-right:1px solid #e0e5da;border-bottom:1px solid #e0e5da;background:#f6f7f0}.agenda-month-cell{min-height:136px;padding:8px;min-width:0;border-right:1px solid #e0e5da;border-bottom:1px solid #e0e5da}.agenda-month-cell.outside{background:#f7f8f3}.agenda-month-cell.outside .agenda-day-number{color:#a3aa9c}.agenda-day-number{border:0;background:transparent;border-radius:50%;height:30px;width:30px;font:inherit;font-weight:650;cursor:pointer;margin-bottom:6px;color:#3e5143}.agenda-day-number:hover{background:#e5ebdd}.is-today{background:#315b47!important;color:#fff!important;border-radius:50%}.today-cell{background:#f0f5ec}.agenda-event{display:flex;flex-direction:column;gap:4px;text-align:left;width:100%;min-width:0;overflow:hidden;border:0;border-left:3px solid #3c755c;border-radius:7px;background:#dfede4;color:#254d39;padding:7px;cursor:pointer;font:inherit;box-sizing:border-box}.agenda-event.scolaire{background:#f7eadb;border-color:#b77a40;color:#754b25}.agenda-event.orientation{background:#ede7f7;border-color:#8a73ae;color:#594578}.agenda-event.sortie{background:#e0eef4;border-color:#508ba2;color:#2b586d}.agenda-event:hover{filter:brightness(.96)}.agenda-event strong{font-size:12px;line-height:1.35;overflow:hidden;overflow-wrap:anywhere}.agenda-event small{font-size:10px;line-height:1.4}.agenda-event-time{font-size:10px;font-weight:700}.agenda-event.compact{flex-direction:row;align-items:baseline;padding:5px;gap:5px;margin-bottom:4px}.agenda-event.compact strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.agenda-event.compact .agenda-event-time{flex-shrink:0}.agenda-day-count{display:none}.agenda-more{font-size:10px!important;padding:3px!important}.agenda-time-scroll{overflow:auto;max-height:72vh;border:1px solid #e0e5da;border-radius:12px}.agenda-time-layout.week{min-width:820px}.agenda-time-layout.day{min-width:270px}.agenda-time-heading{display:grid;grid-template-columns:58px repeat(7,minmax(0,1fr));position:sticky;top:0;z-index:3;background:#f8f9f3;border-bottom:1px solid #dce3d6}.day .agenda-time-heading{grid-template-columns:58px 1fr}.agenda-time-heading>small{padding:15px 6px;color:#788473;font-size:10px}.agenda-time-heading button{background:transparent;border:0;border-left:1px solid #e0e5da;padding:10px;display:flex;align-items:center;justify-content:center;gap:9px;font:inherit;cursor:pointer;color:#526450}.agenda-time-heading button span{font-size:12px}.agenda-time-heading button strong{font-size:18px}.agenda-time-heading .current-day{background:#e1ecdd;color:#244b32}.agenda-time-body{display:flex;padding-right:0;position:relative}.agenda-time-labels{position:relative;width:58px;flex-shrink:0;background:#fafbf6}.agenda-time-labels span{position:absolute;right:7px;transform:translateY(-50%);font-size:10px;color:#71806d}.agenda-time-labels span:first-child{transform:translateY(3px)}.agenda-time-labels span:last-child{transform:translateY(-100%)}.agenda-time-column{position:relative;flex:1;min-width:0;border-left:1px solid #dce3d6;background-image:linear-gradient(to bottom,#e3e7dd 1px,transparent 1px)}.agenda-positioned{position:absolute;padding:1px 2px;box-sizing:border-box}.agenda-positioned .agenda-event{height:100%}.agenda-positioned .agenda-event-time{display:none}.agenda-time-layout.day .agenda-event strong{font-size:14px}.agenda-time-layout.day .agenda-event small{font-size:12px}.agenda-empty-period{padding:15px;background:#f3f5ec;color:#687765;border-radius:10px;margin-bottom:14px;font-size:13px}.agenda-year{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.agenda-mini-month{min-width:0}.agenda-month-title{border:0;background:transparent;color:#2c5742;font:inherit;font-weight:700;text-transform:capitalize;display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 2px;cursor:pointer}.agenda-mini-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.agenda-mini-grid .agenda-weekday{font-size:9px;padding:6px 0}.agenda-mini-grid>button{border:0;background:transparent;position:relative;min-height:27px;padding:4px 0 7px;color:#52634f;cursor:pointer;font:inherit;font-size:11px}.agenda-mini-grid>button:hover{background:#e7eddf;border-radius:8px}.agenda-mini-grid>button.outside{color:#b6bdad}.agenda-mini-grid i{position:absolute;bottom:2px;left:calc(50% - 2px);width:4px;height:4px;background:#c17849;border-radius:50%}.agenda-mini-grid .is-today i{background:#fff}.agenda-list>section>h3{text-transform:capitalize;margin:24px 0 13px;font-size:15px;color:#697a65}.agenda-list-event{display:flex;align-items:center;gap:20px;width:100%;text-align:left;padding:20px;margin:12px 0;border:1px solid #e1e6da;border-left:4px solid #3c755c;border-radius:14px;background:#fff;color:inherit;font:inherit;cursor:pointer}.agenda-list-event.scolaire{border-left-color:#b77a40}.agenda-list-event.orientation{border-left-color:#8a73ae}.agenda-list-event.sortie{border-left-color:#508ba2}.agenda-list-event:hover{background:#f7f9f1}.agenda-list-time{display:flex;flex-direction:column;gap:6px;min-width:65px;color:#52694f}.agenda-list-time small{font-size:11px}.agenda-list-info{flex:1;min-width:0}.agenda-list-info h3{margin:8px 0;font-size:17px;overflow-wrap:anywhere}.agenda-list-info p{display:flex;align-items:center;gap:6px;margin:0;font-size:12px;color:#798473}.agenda-mobile-hint{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1000px){.agenda-top,.agenda-period{align-items:flex-start;flex-direction:column}.agenda-top{gap:16px}.agenda-navigation{width:100%;flex-wrap:wrap}.agenda-year{gap:16px}.agenda-month-cell{padding:5px}.agenda-event.compact .agenda-event-time{display:none}.agenda-filters{flex-wrap:wrap}.agenda-filters .search{flex-basis:100%}}@media(max-width:600px){.agenda-panel{padding:14px}.agenda-view-switch{width:100%;box-sizing:border-box}.agenda-view-switch button{flex:1;padding:11px 3px;font-size:12px}.agenda-top{gap:12px}.agenda-export{font-size:12px}.agenda-period h2{font-size:20px}.agenda-navigation{gap:6px}.agenda-navigation .button{padding:9px;font-size:11px}.agenda-date-jump{flex:1;min-width:0}.agenda-date-jump input{width:100%;padding:8px 4px;font-size:11px;box-sizing:border-box}.agenda-navigation .icon-button{width:32px;height:32px;flex-shrink:0}.agenda-filters select{flex:1;max-width:100%;font-size:12px;padding:9px 5px}.agenda-legend{gap:12px;font-size:10px}.agenda-month-cell{min-height:75px;padding:4px 2px}.agenda-day-number{height:25px;width:25px;font-size:12px}.agenda-cell-events{display:none}.agenda-day-count{display:block;border:0;border-radius:5px;background:#e1ecdd;color:#315b47;font-size:9px;padding:4px 1px;width:100%;cursor:pointer}.agenda-weekday{font-size:10px}.agenda-mobile-hint{display:block;color:#78866f;line-height:1.5;margin-top:14px}.agenda-year{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.agenda-mini-grid{gap:1px}.agenda-mini-grid>button{font-size:10px;min-height:24px}.agenda-mini-grid .agenda-weekday{font-size:8px}.agenda-month-title{font-size:13px}.agenda-list-event{padding:14px 10px;gap:12px}.agenda-list-info h3{font-size:15px}.agenda-list-time{min-width:49px}.agenda-list-info small,.agenda-list-info .tag{font-size:10px}.agenda-list-event>svg{width:15px}.agenda-time-scroll{max-height:65vh}}.calendar-sync{max-width:760px;line-height:1.6}.calendar-sync-link{padding:20px;background:#f1f4e9;border-radius:14px;margin:20px 0}.calendar-sync-link input{display:block;width:100%;border:1px solid #dce2d4;border-radius:10px;padding:12px;margin:10px 0;font:inherit;box-sizing:border-box}.calendar-sync-link small{display:flex;align-items:flex-start;gap:8px;margin-top:16px;color:#657660}.calendar-sync-link small svg{flex-shrink:0;margin-top:4px}.calendar-sync-options{display:grid;grid-template-columns:1fr 1fr;gap:18px}.calendar-sync-options>section{padding:18px;border:1px solid #e1e6da;border-radius:14px}.calendar-sync-options h3{margin-top:0}.calendar-sync-options small{display:block;margin-top:12px;color:#71816b}.calendar-sync-controls{margin-top:20px;padding-top:16px;border-top:1px solid #e1e6da}@media(max-width:600px){.calendar-sync-options{grid-template-columns:1fr}.calendar-sync .inline{flex-wrap:wrap}.calendar-sync-link{padding:14px}}.homework-workspace{min-width:0}.homework-counters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.homework-counters button{font:inherit;text-align:left;cursor:pointer;color:inherit}.homework-counters strong{display:block;font-size:34px;margin-bottom:6px}.homework-counters .selected{outline:2px solid #315b47;background:#f2f6eb}.homework-counters .late strong{color:#b96646}.homework-toolbar{margin-bottom:28px}.homework-search-row{display:flex;align-items:flex-end;gap:15px}.homework-search-row>.search{flex:1}.homework-search-row>label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#657661}.homework-search-row select{min-width:115px}.homework-workspace select,.homework-workspace input[type=date],.homework-form input:not([type=checkbox]),.homework-form select,.homework-form textarea{font:inherit;border:1px solid #dfe5d6;border-radius:10px;background:#fff;padding:11px;min-width:0;box-sizing:border-box}.homework-status-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.homework-status-tabs button{font:inherit;font-size:12px;border:1px solid #e0e6d6;background:#f9faf5;border-radius:30px;color:#62745c;padding:9px 14px;cursor:pointer}.homework-status-tabs button[aria-pressed=true]{background:#315b47;color:#fff;border-color:#315b47}.homework-more-options{border-top:1px solid #e4e9dd;margin:18px 0;padding-top:14px}.homework-more-options summary{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:650;cursor:pointer;color:#536d49}.homework-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0}.homework-form-grid>label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:600;color:#64765b;min-width:0}.homework-form-grid input,.homework-form-grid select,.homework-form-grid textarea{width:100%;font-size:14px}.homework-form-grid .wide{grid-column:1/-1}.homework-form-grid .inline{flex-direction:row;align-items:center;font-weight:400}.homework-form-grid .inline input{width:auto}.homework-form textarea{min-height:95px;resize:vertical}.homework-form-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:24px}.homework-done-field{margin-top:20px}.homework-group{margin:28px 0}.homework-group-heading{display:flex;align-items:center;gap:14px;margin:0 0 16px}.homework-group-heading h2{font-size:18px;margin:0;text-transform:capitalize}.homework-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.homework-card{min-width:0;padding:22px;border:1px solid #e0e6d7;border-left:4px solid #a0b58b;border-radius:17px;background:#fffef9}.homework-card.is-late{border-left-color:#c37a55}.homework-card.is-done{border-left-color:#3e8060;background:#f3f8ef}.homework-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.homework-card-top>.inline{font-size:12px;color:#627855;gap:8px;min-width:0}.homework-card-top .tag{font-size:10px;flex-shrink:0}.homework-task{display:flex;align-items:flex-start;gap:12px;margin:22px 0 16px}.homework-task h3{margin:0;line-height:1.4;font-size:18px;overflow-wrap:anywhere}.homework-check{height:29px;width:29px;flex-shrink:0;border:1.5px solid #adbba2;border-radius:50%;background:#fff;display:grid;place-items:center;color:#fff;cursor:pointer}.homework-check.checked{background:#3c7453;border-color:#3c7453}.homework-check:disabled{opacity:.5;cursor:wait}.homework-card.is-done .homework-task h3{color:#6b7b62}.homework-card-meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:12px;color:#718169}.homework-card-meta>span{display:flex;align-items:center;gap:5px}.homework-card-meta .overdue{color:#b36949;font-weight:650}.homework-card-details{font-size:12px;color:#65775d;margin-top:20px}.homework-card-details summary{cursor:pointer;font-weight:600}.homework-card-details p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.homework-card-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.homework-card-actions .text-button{font-size:11px}@media(max-width:900px){.homework-cards{grid-template-columns:1fr}.homework-search-row{flex-wrap:wrap}.homework-search-row>.search{flex-basis:100%}.homework-search-row>label{flex:1}.homework-search-row select{width:100%}}@media(max-width:600px){.homework-counters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.homework-counters .panel{padding:16px}.homework-counters strong{font-size:28px}.homework-counters span{font-size:12px}.homework-form-grid{grid-template-columns:1fr;gap:16px}.homework-card{padding:18px}.homework-card-top>.inline{font-size:11px}.homework-card-top .tag{font-size:9px}.homework-task h3{font-size:16px}.homework-form-actions{align-items:stretch;flex-direction:column}.homework-status-tabs{gap:7px}.homework-status-tabs button{padding:8px 10px;font-size:11px}.homework-group-heading h2{font-size:16px}}.points-person{display:flex;align-items:center;gap:12px}.points-person small{display:block;margin-top:4px;color:#74826d;font-size:12px}.points-adjust label,.reward-form>label,.reward-form-grid label,.order-treatment label{display:flex;flex-direction:column;gap:8px;margin:18px 0;font-size:13px;font-weight:600;color:#5c7053}.points-adjust input,.points-adjust textarea,.reward-form input:not([type=checkbox]),.reward-form textarea,.order-treatment textarea{width:100%;padding:12px;border:1px solid #dce4d3;border-radius:10px;background:#fff;font:inherit;box-sizing:border-box}.points-adjust textarea,.reward-form textarea,.order-treatment textarea{min-height:90px;resize:vertical}.points-adjust>.button,.reward-form>.button{margin-top:20px}.points-adjust>small{color:#74826c;font-size:12px}.points-direction{display:flex;gap:8px;margin:22px 0;background:#eff3e8;padding:5px;border-radius:12px}.points-direction button{display:flex;align-items:center;justify-content:center;gap:9px;flex:1;border:0;background:transparent;border-radius:8px;padding:11px;font:inherit;color:#687b5c;cursor:pointer}.points-direction button[aria-pressed=true]{background:#355e43;color:#fff}.points-preview{background:#edf4e8;border-radius:10px;padding:14px}.reward-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.reward-form>.inline{flex-direction:row;align-items:center}.points-balance{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;background:#eaf1e1;margin-bottom:22px}.points-balance>div>strong{display:block;font-size:64px;letter-spacing:-2px;margin-top:14px;color:#2d563b}.points-balance>div>strong small{font-size:18px;letter-spacing:0;margin-left:12px}.points-balance p{font-size:13px;color:#6a7d5e}.points-balance>svg{color:#8aa377}.points-balance-actions{grid-column:1/-1;display:flex;gap:12px}.points-history-row{display:flex;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid #e5eadd}.points-history-row>span{font-weight:700;font-size:18px;min-width:58px}.points-history-row .credit{color:#3c8054}.points-history-row .debit{color:#b66d4e}.points-history-row small{display:block;margin-top:6px;color:#7a8772;font-size:11px}.points-history-row strong{font-size:13px;overflow-wrap:anywhere}.shop-workspace{min-width:0}.shop-personal-balance{display:flex;align-items:center;gap:14px;background:#e9f0df;padding:20px 24px;border:1px solid #dce6cf;border-radius:16px;margin-bottom:24px;color:#345938}.shop-personal-balance .text-button{margin-left:auto;font-size:12px}.shop-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:25px}.shop-summary>span{padding:18px;background:#f0f3e8;border-radius:14px;font-size:12px;color:#6c7e60}.shop-summary strong{font-size:27px;margin-right:8px;color:#365d3e}.shop-filters{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:24px 0}.shop-filters>.search{flex:1;min-width:180px}.shop-filters select{font:inherit;font-size:12px;padding:10px;border:1px solid #dfe6d5;border-radius:10px;background:#fff;max-width:100%;min-width:0}.shop-filters>label{font-size:12px;color:#6d7f61}.shop-balance-table{overflow:auto}.shop-balance-table table{width:100%;min-width:650px;text-align:left;border-collapse:collapse}.shop-balance-table th{font-size:12px;color:#718467;border-bottom:1px solid #e2e8d8;padding:15px 10px}.shop-balance-table td{padding:20px 10px;border-bottom:1px solid #e7ebdf}.shop-balance-table td>small{display:block;margin-top:4px;font-size:10px;color:#809074}.shop-balance-number{font-size:25px;color:#315d3a}.shop-balance-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.shop-balance-actions .button{padding:9px;font-size:11px}.shop-balance-actions .text-button{font-size:11px}.shop-catalogue{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.shop-reward{display:flex;flex-direction:column;min-width:0}.shop-reward.offline{opacity:.68}.shop-reward h2{font-size:19px;margin:23px 0 8px;overflow-wrap:anywhere}.shop-reward>p{font-size:13px;line-height:1.6;color:#78876b;white-space:pre-wrap;overflow-wrap:anywhere}.shop-gift{display:grid;place-items:center;height:60px;width:60px;flex-shrink:0;border-radius:17px;background:#eff3e5;color:#72935d}.shop-reward .tag{font-size:10px}.shop-reward-price{display:flex;gap:8px;align-items:baseline;margin:20px 0;color:#3c633f}.shop-reward-price strong{font-size:34px}.shop-reward-price span{font-size:12px}.shop-reward>.button{margin-top:auto;justify-content:center;padding:12px 8px;font-size:12px}.shop-reward>.button:disabled{opacity:.55;cursor:not-allowed}.shop-confirm{text-align:center}.shop-confirm .shop-gift{margin:auto}.shop-confirm p{line-height:1.7;color:#6d7e60}.shop-orders{display:grid;gap:18px}.shop-order-heading{display:flex;align-items:center;gap:16px}.shop-order-heading>div{flex:1;min-width:0}.shop-order-heading h2{font-size:19px;margin:0 0 7px;overflow-wrap:anywhere}.shop-order-heading small{color:#7b8a6f;font-size:12px}.shop-order-heading .tag{font-size:11px;max-width:140px}.shop-order-response{padding:16px;border-radius:11px;background:#f0f4e8;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6}.shop-order>small{display:block;color:#7d8a73;margin-top:14px}.shop-order-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:22px}.shop-order-actions .button{font-size:12px}.shop-order.annulee{border-color:#e3d9cb}.order-treatment textarea{font-size:14px}.order-treatment p{line-height:1.6;color:#75856b}@media(max-width:1050px){.shop-catalogue{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-summary{gap:10px}.shop-summary strong{display:block;margin-bottom:5px}}@media(max-width:650px){.shop-catalogue{grid-template-columns:1fr}.shop-personal-balance{flex-wrap:wrap;padding:18px}.shop-personal-balance .text-button{margin-left:0}.shop-summary>span{padding:13px;font-size:10px}.shop-summary strong{font-size:24px}.shop-order-heading{align-items:flex-start;gap:12px;flex-wrap:wrap}.shop-order-heading h2{font-size:17px}.shop-order-heading .tag{margin-left:72px;max-width:100%}.shop-order-heading .shop-gift{height:48px;width:48px}.shop-order-actions .button{flex:1;justify-content:center;padding:11px}.points-balance>div>strong{font-size:52px}.points-balance-actions{flex-wrap:wrap}.reward-form-grid{grid-template-columns:1fr;gap:0}.shop-balance-table{overflow:visible}.shop-balance-table table{min-width:0;display:block}.shop-balance-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.shop-balance-table tbody{display:grid;gap:16px}.shop-balance-table tr{display:grid;grid-template-columns:1fr auto;border:1px solid #e1e7d6;border-radius:14px;padding:15px;gap:12px}.shop-balance-table td{padding:0;border:0}.shop-balance-table td:nth-child(3){font-size:11px;color:#7b8b6d}.shop-balance-table td:nth-child(3):before{content:"Commandes en cours : "}.shop-balance-table td:last-child{grid-column:1/-1}.shop-balance-actions .button{flex:1;justify-content:center}.shop-balance-actions .text-button{width:100%;justify-content:center}.points-person .avatar{height:34px;width:34px;font-size:11px}.points-person small{font-size:10px}.points-person strong{font-size:13px}}.youth-initiative{background:#f3effb;border:1px solid #c4b0df;border-left:4px solid #8764ab}.origin-badge{display:inline-flex;width:fit-content;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:750;margin-bottom:8px;line-height:1.4}.origin-badge.from-young{color:#59347c;background:#e8dcf5}.origin-badge.from-team{color:#28594a;background:#e7f0eb}.login-form .remember-choice{display:flex;align-items:flex-start;flex-direction:row;gap:10px}.remember-choice input[type=checkbox]{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:var(--forest)}.remember-choice small{display:block;font-weight:400;margin-top:4px;line-height:1.5;color:var(--muted)}.connections-block{border-top:1px solid var(--line);padding-top:22px;width:100%}.connections-block .list-row{flex-wrap:wrap}.connections-block small{overflow-wrap:anywhere}.homework-origin-filter{display:grid;gap:10px;margin-bottom:18px}.homework-origin-filter small{color:var(--muted);line-height:1.5}.avatar{overflow:hidden}.avatar-photo{width:100%;height:100%;object-fit:cover;display:block}.personal-profile-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:30px;align-items:start}.personal-photo{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.personal-photo small{font-size:.74rem;color:var(--muted);line-height:1.6}.photo-upload{position:relative;cursor:pointer}.photo-upload input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.photo-upload:focus-within{outline:3px solid #abcfbb;outline-offset:3px}.photo-upload.disabled{opacity:.6;cursor:wait}.personal-bio{background:#f6f3ed;border-radius:18px;padding:24px}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}.profile-text-form{display:grid;gap:18px}.profile-text-form label{display:grid;gap:7px}.profile-text-form .inline{display:flex}.profile-text-form .inline input{width:auto}.profile-text-form small{color:var(--muted)}.bulk-accounts{display:grid;gap:16px;background:#f9f7f1}.bulk-accounts label{display:grid;gap:7px}.bulk-table-wrap{overflow-x:auto}.bulk-table-wrap table{width:100%;border-collapse:collapse;min-width:580px}.bulk-table-wrap th,.bulk-table-wrap td{text-align:left;padding:12px 9px;border-bottom:1px solid var(--line)}.bulk-table-wrap td small{display:block}.bulk-table-wrap select{max-width:240px;width:100%}@media(max-width:650px){.personal-profile-grid{grid-template-columns:1fr;gap:20px}.personal-bio{padding:18px}}.text-button.danger{color:#b03035}.resource-shortcut{border:1px solid var(--line, #e2e5de);border-radius:16px;overflow:hidden}.resource-shortcut .drive-card{border:0}.resource-controls{padding:0 16px 14px;flex-wrap:wrap;justify-content:space-between}@media(max-width:640px){.resource-shortcut{min-width:0}.resource-shortcut a{overflow-wrap:anywhere}}html{min-height:100%}.install-hero{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.install-hero>img{border-radius:22px;flex-shrink:0}.install-hero>div{flex:1;min-width:190px}.install-hero p{line-height:1.6}.install-guides{margin-top:22px}.install-guides ol{padding-left:24px;line-height:1.8}.install-guides li+li{margin-top:10px}.install-success{display:flex;gap:10px;align-items:center;color:#315c4a}@media(display-mode:standalone){.app-shell,.login-page,.boot{min-height:100dvh}}@media(max-width:760px){.topbar{height:calc(61px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);padding-left:max(17px,env(safe-area-inset-left));padding-right:max(17px,env(safe-area-inset-right))}.sidebar{padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}main{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right));padding-bottom:max(28px,env(safe-area-inset-bottom))}.modal{max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}}.install-public{max-width:1100px;margin:0 auto;padding:max(24px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}
