:root{--fond: #eaedf1;--surface: #ffffff;--carte-interne: #eef1f4;--encre-fort: #060709;--encre: #060709;--texte: #060709;--secondaire: #3e4953;--sourdine: #6d7880;--meta: #a1aaac;--accent: #2f4858;--marine: #1d2d3a;--glacier: #c3d0d9;--glacier-doux: #e9eef2;--primaire: #060709;--primaire-doux: #2f4858;--sur-primaire: #ffffff;--bordure: rgba(6, 7, 9, .12);--bordure-bouton: rgba(6, 7, 9, .12);--lisere: transparent;--pale: #eef1f4;--onglets-fond: #dfe4ea;--filet: #e5e7eb;--ok-fond: #c3d0d9;--ok-encre: #1d2d3a;--ok-bord: transparent;--moyen-fond: #f5f7fa;--moyen-encre: #060709;--moyen-bord: rgba(6, 7, 9, .08);--haut-fond: #1d2d3a;--haut-encre: #ffffff;--haut-bord: transparent;--rouge-fond: #1d2d3a;--rouge-encre: #ffffff;--eed-fond: #e9eef2;--eed-encre: #1d2d3a;--eed-bord: transparent;--pill-fond: #e9eef2;--pill-encre: #1d2d3a;--verre: rgba(255, 255, 255, .8);--voile-fond: rgba(6, 7, 9, .4);--anneau: rgba(47, 72, 88, .2);--anneau-champ: rgba(47, 72, 88, .15);--info-fond: #e9eef2;--info-bord: transparent;--info-titre: #1d2d3a;--filet-tableau: rgba(47, 72, 88, .35);--filet-entete: #2f4858;--rouge-signal: #b42318;--info-signal: #1e6fb8;--etape-1: #2e7d32;--etape-1-fond: #dcefdd;--etape-1-encre: #1b5e20;--etape-2: #e0a800;--etape-2-fond: #fff3c4;--etape-2-encre: #6b4d00;--etape-3: #c62828;--etape-3-fond: #fadbd8;--etape-3-encre: #7f1d1d;--urgence-1: var(--etape-1);--urgence-2: var(--etape-2);--urgence-3: var(--etape-3);--urgence-4: #8e1616;--ombre-repos: 0 1px 2px rgba(6, 7, 9, .04), 0 4px 16px rgba(6, 7, 9, .03);--ombre-survol: 0 2px 4px rgba(6, 7, 9, .06), 0 12px 32px rgba(6, 7, 9, .06);--transition: .2s cubic-bezier(.4, 0, .2, 1)}:root[data-theme=sombre]{--fond: #0b1117;--surface: #151d25;--carte-interne: #1e2832;--encre-fort: #f2f6fa;--encre: #e9eef3;--texte: #e9eef3;--secondaire: #b9c4ce;--sourdine: #93a2ae;--meta: #8794a0;--accent: #9db4c8;--marine: #b8c9d8;--glacier: #b8c9d8;--glacier-doux: #243240;--primaire: #e9eef3;--primaire-doux: #9db4c8;--sur-primaire: #0b1117;--bordure: rgba(255, 255, 255, .14);--bordure-bouton: rgba(255, 255, 255, .14);--lisere: rgba(255, 255, 255, .06);--pale: #19232c;--onglets-fond: #161f27;--filet: rgba(255, 255, 255, .1);--ok-fond: #2b3b49;--ok-encre: #b8c9d8;--ok-bord: transparent;--moyen-fond: #1e2832;--moyen-encre: #c9d4de;--moyen-bord: rgba(255, 255, 255, .12);--haut-fond: #b8c9d8;--haut-encre: #0b1117;--haut-bord: transparent;--rouge-fond: #b8c9d8;--rouge-encre: #0b1117;--eed-fond: #243240;--eed-encre: #b8c9d8;--eed-bord: transparent;--pill-fond: #243240;--pill-encre: #b8c9d8;--verre: rgba(6, 11, 18, .8);--voile-fond: rgba(0, 0, 0, .55);--anneau: rgba(157, 180, 200, .35);--anneau-champ: rgba(157, 180, 200, .25);--info-fond: #1a242e;--info-bord: transparent;--info-titre: #b8c9d8;--filet-tableau: rgba(157, 180, 200, .35);--filet-entete: #9db4c8;--rouge-signal: #ff8a80;--info-signal: #6cb4ee;--etape-1: #66bb6a;--etape-1-fond: #1f3b26;--etape-1-encre: #a5e2ad;--etape-2: #f4c542;--etape-2-fond: #3d3210;--etape-2-encre: #ffd866;--etape-3: #ef5350;--etape-3-fond: #4a1f1c;--etape-3-encre: #ffb3ad;--urgence-1: var(--etape-1);--urgence-2: var(--etape-2);--urgence-3: var(--etape-3);--urgence-4: #9b1c1c;--ombre-repos: 0 1px 2px rgba(0, 0, 0, .3), 0 4px 16px rgba(0, 0, 0, .25);--ombre-survol: 0 2px 4px rgba(0, 0, 0, .35), 0 12px 32px rgba(0, 0, 0, .3)}:root[data-theme=sombre] .point-role.role-direction{background:#f2f6fa}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--fond);color:var(--texte);font-family:Arial,Helvetica Neue,Helvetica,sans-serif;font-size:15px;font-weight:400;line-height:1.55;letter-spacing:-.005em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{color:var(--encre-fort);line-height:1.25;margin:0}h1,h2{font-weight:600;letter-spacing:-.02em}h1{font-size:22px}h2{font-size:32px;line-height:1.15;margin-bottom:4px}h3{font-size:17px;font-weight:600;letter-spacing:-.01em;margin:24px 0 8px}.num,.carte-stat .valeur,.donut-total,.pastille,.point-evenement,.legende-valeur,.barre-valeur,.compte-section,.chapitre-compte{font-variant-numeric:tabular-nums}button{font:inherit;cursor:pointer}a{color:var(--encre)}:focus-visible{outline:none;box-shadow:0 0 0 4px var(--anneau);border-radius:10px}.entete{background:var(--verre);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--bordure);color:var(--encre);padding:12px 32px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;position:sticky;top:0;z-index:10}.entete .marque{display:flex;align-items:center;gap:8px;font-weight:600;font-size:16px;letter-spacing:-.01em;color:var(--encre-fort)}.entete .role{display:inline-flex;align-items:center;gap:8px;background:var(--pale);color:var(--secondaire);border-radius:999px;padding:4px 14px;font-size:13px}.point-role{width:8px;height:8px;border-radius:999px;flex-shrink:0}.point-role.role-enseignant{background:#c3d0d9}.point-role.role-equipe{background:#2f4858}.point-role.role-direction{background:#060709}:root[data-theme=sombre] .point-role.role-equipe{background:#9db4c8}.entete .pousse{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.bouton-entete{display:inline-flex;align-items:center;gap:6px;background:none;color:var(--sourdine);border:none;border-radius:6px;padding:6px 8px;font-size:13px;font-weight:500;transition:color var(--transition)}.bouton-entete svg{stroke-width:1.5}.bouton-entete:hover{color:var(--encre-fort);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.page{max-width:1440px;margin:0 auto;padding:48px 32px 96px}.sous-titre{color:var(--sourdine);margin:2px 0 24px}.grille-cartes{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin:16px 0 32px}.carte-stat{position:relative;background:var(--surface);border:none;border:1px solid var(--lisere);border-radius:16px;padding:32px;box-shadow:var(--ombre-repos);display:flex;flex-direction:column;gap:8px}.carte-stat .valeur{font-size:48px;font-weight:600;letter-spacing:-.02em;line-height:1;color:var(--encre);font-variant-numeric:tabular-nums;padding-right:44px}.carte-stat .nom{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--encre)}.stat-icone{position:absolute;top:24px;right:24px;color:var(--encre);opacity:.55;display:inline-flex}.carte-stat.cliquable{text-align:left;cursor:pointer;font:inherit;transition:box-shadow var(--transition),transform var(--transition)}.carte-stat.cliquable:hover{box-shadow:var(--ombre-survol);transform:translateY(-2px) scale(1.005)}.grille-cartes.compacte{grid-template-columns:repeat(auto-fill,minmax(164px,1fr));gap:14px;margin:16px 0 24px}.grille-cartes.compacte .carte-stat{padding:16px 16px 14px;border-radius:14px;gap:4px}.grille-cartes.compacte .carte-stat .valeur{font-size:30px;padding-right:28px}.grille-cartes.compacte .carte-stat .nom{font-size:10px;letter-spacing:.08em}.grille-cartes.compacte .stat-icone{top:13px;right:13px}.grille-boutons-profil{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 16px}.grille-boutons-profil .bouton{width:100%;justify-content:center}@media (max-width: 560px){.grille-boutons-profil{grid-template-columns:1fr}}.bouton.securite{background:#1d2d3a;color:#fff}.bouton.securite:hover{background:#2f4858}:root[data-theme=sombre] .bouton.securite{background:#b8c9d8;color:#0b1117}:root[data-theme=sombre] .bouton.securite:hover{background:#cbd2f0}.bouton.actif-bleu{background:var(--accent);color:var(--sur-primaire)}.bouton.actif-bleu:hover{opacity:.92}.table-eleves{table-layout:fixed;width:100%;min-width:640px}.table-evals{table-layout:fixed;width:100%;min-width:760px}.table-evals th:nth-child(1){width:11%}.table-evals th:nth-child(2){width:16%}.table-evals th:nth-child(3){width:13%}.table-evals th:nth-child(4){width:20%}.table-evals th:nth-child(5){width:20%}.table-evals th:nth-child(6){width:20%}.table-dossiers{table-layout:fixed;width:100%;min-width:820px}.table-dossiers th:nth-child(1){width:24%}.table-dossiers th:nth-child(2){width:20%}.table-dossiers th:nth-child(3){width:11%}.table-dossiers th:nth-child(4){width:15%}.table-dossiers th:nth-child(5){width:13%}.table-dossiers th:nth-child(6){width:17%}.rangee-cliquable{cursor:pointer}.rangee-cliquable:hover td{background:var(--glacier-doux)}.hero-connexion{position:relative;overflow:hidden;border-radius:28px;min-height:420px;display:flex;align-items:center;padding:48px;margin:8px 0 28px;box-shadow:var(--ombre-survol);background:#1d2d3a}.hero-fond{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 42%;transform:scaleX(-1);animation:hero-zoom 1.8s cubic-bezier(.2,.7,.3,1) both}.hero-voile{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,#131c4af0,#131c4ad1 34%,#131c4a59 62%,#131c4a0d)}.hero-texte{position:relative;max-width:60%}.hero-texte>*{animation:hero-entree .7s cubic-bezier(.2,.7,.3,1) both}.hero-texte>*:nth-child(2){animation-delay:.12s}.hero-texte>*:nth-child(3){animation-delay:.22s}.hero-texte>*:nth-child(4){animation-delay:.3s}.hero-texte>*:nth-child(5){animation-delay:.38s}.hero-logo{width:56px;height:56px;border-radius:50%;background:#fffffff0;display:flex;align-items:center;justify-content:center;margin-bottom:20px;box-shadow:0 4px 16px #00000040}.hero-texte h1{margin:0 0 12px;color:#fff;font-size:clamp(40px,6vw,64px);letter-spacing:-.02em}.hero-sous-titre{margin:0 0 4px;color:#cbd2f0;font-size:16px}.hero-devise{margin:18px 0 0;font-size:17px;font-style:italic;color:#fff}@keyframes hero-entree{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes hero-zoom{0%{transform:scaleX(-1) scale(1.08)}to{transform:scaleX(-1) scale(1)}}@media (max-width: 640px){.hero-connexion{min-height:380px;padding:24px;align-items:flex-end}.hero-texte{max-width:100%}.hero-voile{background:linear-gradient(180deg,#131c4a0d,#131c4a73 40%,#131c4af2 85%)}}@media (prefers-reduced-motion: reduce){.hero-fond,.hero-texte>*{animation:none}}.onglets.sous-onglets{margin-bottom:16px}.onglets.onglets-direction{display:flex;width:fit-content;margin-top:-16px}.calendrier-case.information{box-shadow:inset 0 0 0 2px var(--info-signal)}.calendrier-case.information .calendrier-numero{color:var(--info-signal);font-weight:700}.pastille-couleur.info-signal{background:var(--info-signal)}.jour-information-note{margin:0 0 8px;padding:8px 12px;border-radius:10px;background:var(--info-signal);color:#fff;font-size:14px}.calendrier-case.sensible{box-shadow:inset 0 0 0 2px var(--rouge-signal)}.calendrier-etiquette{display:block;font-size:10px;line-height:1.2;font-weight:600;letter-spacing:.02em;color:var(--sourdine);margin-top:2px}.calendrier-case.jour-conge,.calendrier-case.fin-de-semaine{background:var(--glacier-doux)}.calendrier-case.jour-conge .calendrier-numero,.calendrier-case.fin-de-semaine .calendrier-numero{color:var(--sourdine)}.calendrier-case:disabled.fin-de-semaine{opacity:.9}.calendrier-case.jour-pedagogique{background:var(--accent)}.calendrier-case.jour-pedagogique .calendrier-numero,.calendrier-case.jour-pedagogique .calendrier-etiquette{color:#fff}.calendrier-case.jour-examen{box-shadow:inset 0 -4px 0 var(--etape-2)}.calendrier-case.jour-examen .calendrier-etiquette{color:var(--etape-2-encre)}.calendrier-case.jour-classe,.calendrier-case.jour-ontario{box-shadow:inset 0 0 0 2px var(--etape-2)}.calendrier-case.jour-examen.sensible{box-shadow:inset 0 0 0 2px var(--rouge-signal),inset 0 -4px 0 var(--etape-2)}.calendrier-case:disabled.jour-conge,.calendrier-case:disabled.jour-pedagogique{opacity:.9}.jour-scolaire-note{margin:0 0 8px;padding:8px 12px;border-radius:10px;background:var(--glacier-doux);color:var(--encre);font-size:14px}.jour-scolaire-note.jour-pedagogique{background:var(--accent);color:#fff}.jour-scolaire-note.jour-examen{background:var(--etape-2-fond);color:var(--etape-2-encre)}.legende-scolaire{margin-top:-4px}.legende-source{color:var(--meta);font-size:12px}.pastille-couleur.exemple-conge{background:var(--glacier-doux);border:1px solid var(--bordure)}.pastille-couleur.exemple-pedagogique{background:var(--accent)}.pastille-couleur.exemple-examen{background:var(--etape-2)}.pastille-couleur.exemple-classe{background:transparent;border:2px solid var(--etape-2)}.calendrier-case.sensible .calendrier-numero{color:var(--rouge-signal);font-weight:700}.pastille-couleur.rouge-signal{background:var(--rouge-signal)}.jour-sensible-note{margin:0 0 8px;padding:8px 12px;border-radius:10px;background:var(--rouge-signal);color:#fff;font-weight:500}:root[data-theme=sombre] .jour-sensible-note{color:#0b1117}.surcharge-note{color:var(--rouge-signal)}.point-evenement.niveau{min-width:34px;font-variant-numeric:tabular-nums}.division-groupe{display:flex;align-items:center;gap:12px;margin:24px 0 12px}.division-groupe:first-of-type{margin-top:8px}.division-groupe h3{margin:0;white-space:nowrap}.division-groupe:after{content:"";flex:1;height:2px;background:var(--filet-entete);border-radius:1px}.panneau-cliquable{cursor:pointer;transition:box-shadow var(--transition)}.panneau-cliquable:hover,.panneau-cliquable:focus-visible{box-shadow:var(--ombre-survol)}.table-eleves th:nth-child(1){width:32%}.table-eleves th:nth-child(2){width:12%}.table-eleves th:nth-child(3){width:13%}.table-eleves th:nth-child(4){width:25%}.table-eleves th:nth-child(5){width:18%}th .th-tri{background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:2px;transition:color var(--transition)}th .th-tri:hover{color:var(--encre-fort)}th .th-tri .tri-possible{opacity:.45;font-size:12px}th .th-tri:hover .tri-possible{opacity:1}th .th-tri .tri-sens{font-size:12px;color:var(--accent);font-weight:700}:root[data-theme=sombre] th .th-tri .tri-sens{color:var(--accent)}.bouton-nu{background:none;border:none;padding:0;margin:0;font:inherit;cursor:pointer;display:inline-flex;align-items:center;transition:transform var(--transition),opacity var(--transition)}.bouton-nu:hover{transform:translateY(-1px);opacity:.85}.fil-ariane{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 16px}.fil-ariane .ou-suis-je{color:var(--sourdine);font-size:13px}.carte-stat.cliquable[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent),var(--ombre-repos)}.panneau{background:var(--surface);border:none;border:1px solid var(--lisere);border-radius:16px;padding:24px 32px;margin-bottom:24px;box-shadow:var(--ombre-repos)}.callout-note{background:var(--pale);border-radius:12px;padding:16px 20px;color:var(--secondaire);margin:0 0 24px}.filtres{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end;margin-bottom:16px}.filtres label,.champ label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--encre);margin-bottom:6px}select,input[type=text],input[type=search],input[type=date],input[type=email],input[type=password],textarea{font:inherit;border:1px solid var(--bordure);border-radius:10px;padding:12px 14px;background:var(--surface);color:var(--encre);max-width:100%;transition:box-shadow var(--transition),border-color var(--transition)}input::placeholder,textarea::placeholder{color:var(--meta)}select:hover,input:hover,textarea:hover{box-shadow:var(--ombre-repos)}select:focus-visible,input:focus-visible,textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 4px var(--anneau-champ)}textarea{width:100%;resize:vertical;min-height:96px}.defile{overflow-x:auto;border:1px solid var(--lisere);border-radius:16px;background:var(--surface);box-shadow:var(--ombre-repos)}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--sourdine);padding:14px 16px;border-bottom:2px solid var(--filet-entete);white-space:nowrap;background:var(--surface)}td{padding:12px 16px;border-bottom:1px solid var(--filet-tableau);vertical-align:top;color:var(--texte)}tr:last-child td{border-bottom:none}.num{font-variant-numeric:tabular-nums}.etiquette{display:inline-block;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:500;white-space:nowrap;border:1px solid transparent}.etiquette.ok{background:var(--ok-fond);color:var(--ok-encre);border-color:var(--ok-bord)}.etiquette.rouge{background:var(--urgence-3);color:#fff;border-color:transparent}.etiquette.urgence-0{background:var(--pale);color:var(--secondaire);border-color:var(--bordure-bouton)}.etiquette.urgence-1{background:var(--etape-1-fond);color:var(--etape-1-encre);border-color:transparent}.etiquette.urgence-2{background:var(--etape-2-fond);color:var(--etape-2-encre);border-color:transparent}.etiquette.urgence-3{background:var(--urgence-3);color:#fff;border-color:transparent}.etiquette.urgence-4{background:var(--urgence-4);color:#fff;border-color:transparent;font-weight:600}.pastille-etape.urgence-3{background:var(--urgence-3)}.pastille-etape.urgence-4{background:var(--urgence-4)}.etiquette.moyen{background:var(--moyen-fond);color:var(--moyen-encre);border-color:var(--moyen-bord)}.etiquette.haut{background:var(--haut-fond);color:var(--haut-encre);border-color:var(--haut-bord)}.etiquette.neutre{background:var(--pale);color:var(--secondaire);border-color:var(--bordure-bouton)}.etiquette.eed{background:var(--eed-fond);color:var(--eed-encre);border-color:var(--eed-bord)}.etiquette.feu-vert{background:var(--etape-1-fond);color:var(--etape-1-encre);border-color:transparent}.etiquette.feu-jaune{background:var(--etape-2-fond);color:var(--etape-2-encre);border-color:transparent}.etiquette.feu-rouge{background:var(--etape-3-fond);color:var(--etape-3-encre);border-color:transparent}.pastille-etape.feu-vert{background:var(--etape-1)}.pastille-etape.feu-jaune{background:var(--etape-2)}.pastille-etape.feu-rouge{background:var(--etape-3)}.etiquette.etape-1{background:var(--etape-1-fond);color:var(--etape-1-encre);border-color:transparent}.etiquette.etape-2{background:var(--etape-2-fond);color:var(--etape-2-encre);border-color:transparent}.etiquette.etape-3{background:var(--etape-3-fond);color:var(--etape-3-encre);border-color:transparent}.pastille-etape{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:0;margin-right:2px}.pastille-etape.etape-1{background:var(--etape-1)}.pastille-etape.etape-2{background:var(--etape-2)}.pastille-etape.etape-3{background:var(--etape-3)}.pastille{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:var(--primaire);color:var(--sur-primaire);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.bouton{display:inline-flex;align-items:center;gap:6px;background:var(--primaire);color:var(--sur-primaire);border:none;border-radius:12px;padding:12px 22px;font-weight:500;font-size:15px;letter-spacing:-.01em;transition:background var(--transition),box-shadow var(--transition)}.bouton:hover{background:var(--primaire-doux);box-shadow:var(--ombre-repos)}.bouton.secondaire{background:var(--surface);color:var(--encre);border:1px solid var(--bordure);font-weight:600}.bouton.secondaire:hover{background:var(--pale);box-shadow:var(--ombre-repos)}.bouton.discret{background:none;border:none;color:var(--accent);padding:4px 6px;font-weight:600;font-size:13px;border-radius:8px;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--sourdine);text-decoration-thickness:1px;transition:background var(--transition),text-decoration-color var(--transition)}.bouton.discret:hover{background:none;color:var(--marine);text-decoration-color:var(--marine)}td .bouton.discret{font-size:14px}.bouton.danger{background:var(--surface);color:var(--marine);border:1px solid var(--bordure);font-weight:500}.bouton.danger:hover{background:var(--glacier-doux)}.bouton.fantome{background:none;color:var(--accent);border:none;font-weight:500}.bouton.fantome:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.rangee-boutons{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.bouton-legende{display:inline-flex;align-items:center;gap:8px;background:none;border:none;padding:4px 0;color:var(--encre);font-weight:600;font-size:14px}.bouton-legende svg{transition:transform var(--transition);color:var(--sourdine)}.bouton-legende[aria-expanded=true] svg{transform:rotate(180deg)}.groupe-form{position:relative;border:none;background:var(--carte-interne);border-radius:16px;padding:16px 20px 12px 28px;margin:0 0 16px}.groupe-form:before{content:"";position:absolute;left:12px;top:16px;bottom:16px;width:3px;border-radius:999px;background:var(--glacier)}.groupe-form .champ:last-child{margin-bottom:4px}.no-champ{display:inline-block;color:var(--accent);font-weight:600;margin-right:6px;font-variant-numeric:tabular-nums}.champ{margin-bottom:16px}.boite-connexion{max-width:460px;margin:28px auto 0}.formulaire-connexion{background:var(--surface);border-radius:16px;padding:28px 28px 24px;box-shadow:var(--ombre-repos)}.formulaire-connexion h2{font-size:24px;margin-bottom:4px}.formulaire-connexion .aide{margin:0 0 18px}.formulaire-connexion .champ input,.formulaire-connexion .champ select{width:100%}.formulaire-connexion input:disabled{opacity:.6;cursor:not-allowed}.bouton.pleine{width:100%;justify-content:center}.bouton:disabled{opacity:.45;cursor:not-allowed}.separateur{display:flex;align-items:center;gap:12px;margin:22px 0 16px;color:var(--sourdine);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em}.separateur:before,.separateur:after{content:"";flex:1;height:1px;background:var(--filet)}.note-demo{margin:16px 0 0}.aide{display:block;font-size:13px;color:var(--secondaire);margin-top:4px}.avertissement{background:var(--haut-fond);color:var(--haut-encre);border-radius:12px;padding:14px 18px;margin:12px 0;font-size:14px}.info{background:var(--info-fond);color:var(--secondaire);border-radius:12px;padding:20px 24px;margin:16px 0;font-size:15px;line-height:1.55}.info strong{font-weight:600;color:var(--info-titre)}.case{display:flex;align-items:flex-start;gap:10px;margin:10px 0}.case input{margin-top:3px;width:18px;height:18px;accent-color:var(--accent)}.case span{font-size:14px}.legende-champ{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--encre);margin-bottom:6px;padding:0}.connexion{max-width:760px;margin:64px auto;padding:0 32px}.connexion .logo{font-size:40px}.connexion h1{font-size:clamp(40px,7vw,56px);font-weight:600;letter-spacing:-.03em;line-height:1.05;margin:12px 0 8px}.connexion .sous-titre{font-size:17px;letter-spacing:-.005em;color:var(--sourdine);margin-bottom:48px}.aiguille{transform-origin:50% 50%;animation:rotation-aiguille 40s ease-in-out infinite}@keyframes rotation-aiguille{to{transform:rotate(360deg)}}.groupe-profils{margin-top:16px}.groupe-profils .section-divider{margin-top:48px}.section-divider{margin:32px 0 20px}.section-line{border:none;height:1px;background:var(--filet-tableau);margin:0 0 14px}.section-divider.no-line .section-line{display:none}.section-divider.no-line{margin-top:24px}.section-header{display:flex;align-items:baseline;gap:8px;margin:0;font-weight:400;line-height:1.4}.section-number{color:var(--accent);font-size:13px;font-weight:500;font-variant-numeric:tabular-nums}.section-dash{color:var(--meta);font-size:13px}.section-title{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--encre-fort)}.section-leader{flex:1;min-width:24px;border-bottom:1px dotted var(--filet-entete);margin:0 6px 4px}.section-count{font-size:12px;color:var(--meta);white-space:nowrap;font-variant-numeric:tabular-nums}.section-count .fort{color:var(--encre-fort);font-weight:500;font-style:normal}.section-count .actif{color:var(--accent);font-weight:500}.section-count em{font-style:italic}.compte-section{color:var(--meta);font-weight:400;font-size:12px}.boutons-profils{display:flex;flex-wrap:wrap;gap:12px}.bouton-profil{position:relative;background:var(--surface);border:none;border-radius:12px;padding:20px 36px 20px 20px;text-align:left;font-size:17px;color:var(--encre-fort);font-weight:600;letter-spacing:-.01em;box-shadow:var(--ombre-repos);transition:box-shadow var(--transition),transform var(--transition)}.bouton-profil:hover{box-shadow:var(--ombre-survol);transform:translateY(-1px)}.bouton-profil .detail{display:block;font-size:13px;font-weight:400;letter-spacing:-.005em;color:var(--meta);margin-top:4px}.bouton-profil:after{content:"";position:absolute;top:12px;right:12px;width:6px;height:6px;border-radius:999px}.groupe-profils.role-enseignant .bouton-profil:after{background:#c3d0d9}.groupe-profils.role-equipe .bouton-profil:after{background:#2f4858}.groupe-profils.role-direction .bouton-profil:after{background:#060709}:root[data-theme=sombre] .groupe-profils.role-equipe .bouton-profil:after{background:#9db4c8}:root[data-theme=sombre] .groupe-profils.role-direction .bouton-profil:after{background:#f2f6fa}.voile{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--voile-fond);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:flex-start;justify-content:center;padding:48px 24px;z-index:50;overflow-y:auto}.modale{background:var(--surface);border-radius:16px;max-width:960px;width:100%;padding:32px 40px;box-shadow:0 24px 48px #0f172a1f,0 4px 8px #0f172a0a}.modale .panneau{background:var(--carte-interne);border-color:var(--lisere);box-shadow:none}.modale-entete{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.modale-entete h2{flex:1}.modale-entete>div:first-child{flex:1}.fermer{background:none;border:none;border-radius:8px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;color:var(--secondaire);transition:background var(--transition)}.fermer svg{stroke-width:2}.fermer:hover{background:var(--pale);color:var(--encre)}.fiche-nom{font-size:22px;font-weight:600;letter-spacing:-.015em;color:var(--encre-fort)}.fiche-meta{font-size:13px;color:var(--meta);margin:4px 0 0}.fiche-badges{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 0}.fiche-anterieurs{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-top:10px}.fiche-sep{border:none;border-top:1px solid var(--lisere);margin:24px 0}.section-fiche{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--sourdine);margin:32px 0 12px}.section-fiche svg{color:var(--sourdine);flex-shrink:0}.bloc-contenu{background:var(--carte-interne);border:1px solid var(--lisere);border-radius:12px;padding:16px 20px}.bloc-contenu p{margin:0 0 8px;color:var(--secondaire)}.bloc-contenu p:last-child{margin-bottom:0}.bloc-contenu strong{color:var(--encre);font-weight:600}.grille-tuteurs{display:flex;flex-direction:column;gap:8px}.carte-tuteur{background:var(--carte-interne);border-radius:10px;padding:12px 16px;display:flex;flex-direction:column;gap:4px}.tuteur-nom{font-weight:600;color:var(--encre)}.tuteur-lien{font-weight:400;color:var(--meta)}.tuteur-coordonnees{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13px;color:var(--meta)}.tuteur-coordonnees svg{flex-shrink:0}.ligne-temps{list-style:none;margin:0;padding:0 0 0 6px;position:relative}.ligne-temps:before{content:"";position:absolute;left:4px;top:6px;bottom:6px;width:2px;background:var(--lisere)}.lt-item{position:relative;padding:0 0 20px 22px}.lt-item:last-child{padding-bottom:0}.lt-point{position:absolute;left:0;top:5px;width:10px;height:10px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 3px var(--surface)}.lt-entete{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lt-auteur{font-weight:600;font-size:14px;color:var(--encre)}.lt-date{font-size:12px;color:var(--meta)}.lt-texte{margin:4px 0 0;font-size:14px;color:var(--secondaire);line-height:1.55}.pill-etape{background:var(--pill-fond);color:var(--pill-encre);font-weight:500;font-size:12px;padding:3px 8px;border-radius:6px}.zone-action{background:var(--fond);border:1px solid var(--lisere);border-radius:14px;padding:24px;margin-top:32px}.zone-action-titre{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--encre);margin:0 0 16px}.zone-action-titre svg{stroke-width:2;color:var(--encre)}.courriel{background:var(--surface);border:none;border-radius:12px;padding:16px 20px;margin-bottom:12px;box-shadow:var(--ombre-repos)}.courriel .meta{font-size:12px;color:var(--sourdine);margin-bottom:4px}.courriel .objet{font-weight:600;color:var(--encre);margin-bottom:4px}.courriel .corps{font-size:13px;white-space:pre-wrap}.journal{list-style:none;padding:0;margin:8px 0}.journal li{border-left:2px solid var(--bordure);padding:4px 0 4px 14px;margin-bottom:12px}.journal .qui{font-weight:600;color:var(--encre);font-size:13.5px}.journal .quand{color:var(--sourdine);font-size:12px}.onglets{display:inline-flex;gap:4px;background:var(--onglets-fond);border-radius:12px;padding:4px;margin-bottom:24px;flex-wrap:wrap}.onglet{background:none;border:none;border-radius:8px;padding:7px 18px;font-size:14px;font-weight:600;color:var(--secondaire);transition:background var(--transition),color var(--transition),box-shadow var(--transition)}.onglet:hover{color:var(--encre)}.onglet[aria-selected=true]{background:var(--surface);color:var(--encre);box-shadow:0 1px 2px #0f172a0f,0 2px 8px #0f172a0a}.filtre-multiple{border:none;padding:0;margin:0}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip-filtre{background:var(--surface);border:1px solid var(--bordure);border-radius:999px;padding:5px 14px;font-size:13px;font-weight:600;color:var(--secondaire);transition:background var(--transition),color var(--transition),border-color var(--transition)}.chip-filtre:hover{color:var(--encre);background:var(--pale)}.chip-filtre[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fdfcf8}.chip-filtre.urgence-1[aria-pressed=true]{background:var(--urgence-1);border-color:var(--urgence-1);color:#fff}.chip-filtre.urgence-2[aria-pressed=true]{background:var(--urgence-2);border-color:var(--urgence-2);color:#3d2e00}.chip-filtre.urgence-3[aria-pressed=true]{background:var(--urgence-3);border-color:var(--urgence-3);color:#fff}.chip-filtre.urgence-4[aria-pressed=true]{background:var(--urgence-4);border-color:var(--urgence-4);color:#fff}.etoile-securite{color:var(--urgence-3);display:inline-flex;vertical-align:-2px;margin-left:4px}.liste-etapes{margin:12px 0 0;padding-left:20px}.liste-etapes li{margin-bottom:8px;font-size:14px}.liste-etapes strong{color:var(--encre)}.calendrier-entete{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:8px}.calendrier{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendrier-jour-nom{text-align:center;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--sourdine);padding:6px 0}.calendrier-case{background:var(--carte-interne);border:1px solid var(--lisere);border-radius:12px;min-height:68px;padding:8px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;font:inherit;transition:background var(--transition),box-shadow var(--transition),transform var(--transition)}.calendrier-case.vide{background:none}.calendrier-case:not(.vide):hover{background:var(--pale);box-shadow:var(--ombre-repos);transform:translateY(-1px)}.calendrier-case[aria-pressed=true]{background:var(--surface);box-shadow:inset 0 0 0 2px var(--accent),var(--ombre-repos)}.calendrier-case:disabled{cursor:default;opacity:.65}.calendrier-numero{font-size:13px;font-weight:600;color:var(--secondaire)}.calendrier-points{display:flex;gap:4px;flex-wrap:wrap}.point-evenement{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;color:#fff;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.legende-calendrier{display:flex;gap:20px;margin-bottom:12px}.legende-calendrier li{padding:0}.kanban{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:16px;overflow-x:auto;padding-bottom:8px}.kanban-colonne{background:var(--onglets-fond);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px;min-height:160px}.kanban-titre{margin:0 0 4px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--encre)}.kanban-carte{background:var(--surface);border:1px solid var(--lisere);border-radius:12px;padding:12px 14px;text-align:left;font:inherit;display:flex;flex-direction:column;gap:6px;transition:box-shadow var(--transition),transform var(--transition)}.kanban-carte:hover{box-shadow:0 4px 12px #0f172a14;transform:translateY(-1px)}.kanban-carte[draggable=true]{cursor:grab}.kanban-carte[draggable=true]:active{cursor:grabbing}.kanban-carte.en-deplacement{opacity:.45}.kanban-colonne{transition:background var(--transition),box-shadow var(--transition)}.kanban-colonne.survol{background:var(--glacier-doux);box-shadow:inset 0 0 0 2px var(--accent)}.kanban-colonne.refuse{opacity:.55}.kanban-nom{font-weight:600;color:var(--encre-fort);font-size:14.5px}.kanban-meta{font-size:12.5px;color:var(--meta)}.kanban-etiquettes{display:flex;gap:6px;flex-wrap:wrap}.chronologie{list-style:none;margin:0;padding:0;position:relative}.chronologie:before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:var(--lisere)}.chrono-jour{position:relative;margin:20px 0 6px;padding-left:28px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--encre)}.chronologie>li:first-child .chrono-jour{margin-top:0}.chrono-liste{list-style:none;margin:0;padding:0}.chrono-ev{position:relative;padding:6px 0 6px 28px}.chrono-point{position:absolute;left:1px;top:12px;width:14px;height:14px;border-radius:999px;border:3px solid var(--surface)}.chrono-titre{font-weight:600;color:var(--encre-fort)}.chrono-detail{color:var(--secondaire);margin-left:6px}.taches{list-style:none;margin:0;padding:0}.tache{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid var(--filet-tableau)}.tache:last-child{border-bottom:none}.tache-icone{color:var(--sourdine);margin-top:3px;flex-shrink:0}.bandeau-maj{position:sticky;top:0;z-index:60;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:10px 16px;background:var(--marine);color:#fff;font-weight:500}:root[data-theme=sombre] .bandeau-maj{color:#0b1117}.bandeau-maj .bouton{background:#fff;color:#1d2d3a}:root[data-theme=sombre] .bandeau-maj .bouton{background:#0b1117;color:#e9eef3}.tache-case{width:16px;height:16px;margin:3px 0 0;flex-shrink:0;accent-color:var(--accent);cursor:pointer}.tache-lien{border:none;background:none;padding:0;margin:0;font:inherit;font-weight:600;color:var(--accent);cursor:pointer;text-align:left;text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color var(--transition)}.tache-lien:hover,.tache-lien:focus-visible{text-decoration-color:currentColor}.tache.accomplie .tache-titre{color:var(--sourdine);text-decoration:line-through}.tache-corps{flex:1;display:flex;flex-direction:column;gap:2px}.tache-titre{font-weight:600;color:var(--encre-fort)}.tache-detail{font-size:13px;color:var(--meta)}.grille-graphiques{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}.grille-bord{display:grid;gap:24px;margin-bottom:24px}.grille-bord-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grille-bord-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width: 1024px){.grille-bord-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.grille-bord-2,.grille-bord-3{grid-template-columns:minmax(0,1fr)}}.grille-graphiques .pleine-largeur{grid-column:1 / -1}.graphique{margin:0}.graphique figcaption{margin-bottom:16px}.graphique figcaption strong{font-size:15px;font-weight:600;color:var(--encre);letter-spacing:-.01em}.donut-ligne{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.donut-total{font-size:28px;font-weight:600;letter-spacing:-.02em;fill:var(--encre)}.donut-libelle{font-size:10px;fill:var(--sourdine);letter-spacing:.08em;text-transform:uppercase}.legende{list-style:none;padding:0;margin:0;flex:1;min-width:160px}.legende li{display:flex;align-items:center;gap:10px;padding:4px 0;font-size:13px}.pastille-couleur{width:10px;height:10px;border-radius:3px;flex-shrink:0}.legende-nom{flex:1;color:var(--texte)}.legende-valeur{color:var(--secondaire);font-weight:600;white-space:nowrap}.barre-valeur{font-size:12px;font-weight:400;fill:var(--encre);font-variant-numeric:tabular-nums}.barre-nom{font-size:11px;fill:var(--sourdine)}.repartition-total{margin:0 0 12px;font-size:13px;color:var(--sourdine)}.repartition-total .num{font-size:22px;font-weight:600;color:var(--encre-fort);margin-right:4px}.repartition{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.repartition-ligne{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:12px}.repartition-nom{font-size:14px;color:var(--texte)}.repartition-piste{height:22px;background:var(--pale);border-radius:999px;overflow:hidden}.repartition-barre{display:block;height:100%;border-radius:999px;transition:width .4s cubic-bezier(.4,0,.2,1)}.repartition-valeur{font-size:14px;color:var(--sourdine);white-space:nowrap}.graphique path.seg{stroke:var(--surface);stroke-width:2}.graphique line.grille{stroke:var(--pale)}.graphique line.base{stroke:var(--bordure)}@keyframes apparaitre-segment{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.graphique svg path,.graphique svg circle{transform-origin:center;animation:apparaitre-segment .8s cubic-bezier(.4,0,.2,1) both}.graphique svg path:nth-of-type(2){animation-delay:80ms}.graphique svg path:nth-of-type(3){animation-delay:.16s}.graphique svg path:nth-of-type(4){animation-delay:.24s}.graphique svg path:nth-of-type(5){animation-delay:.32s}.graphique svg path:nth-of-type(6){animation-delay:.4s}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.devise{margin-top:64px;text-align:center;font-size:13px;color:var(--meta)}.devise .edia{display:block;margin-top:6px;font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--sourdine)}.ornement{height:1px;background:#0607090f;margin:24px 0;font-size:0}:root[data-theme=sombre] .ornement{background:#ffffff14}@media (max-width: 1024px){.page{padding:32px 24px 72px}.panneau{padding:20px 24px}h2{font-size:28px}}@media (max-width: 640px){.page{padding:20px 14px 64px}.entete{padding:10px 14px}h2{font-size:24px}.sous-titre{margin-bottom:16px}.carte-stat{padding:20px}.carte-stat .valeur{font-size:34px}.grille-cartes{gap:12px;margin:12px 0 24px}.panneau{padding:16px;border-radius:12px;margin-bottom:16px}th,td{padding:10px 12px}.calendrier-case{min-height:50px;padding:5px;border-radius:8px}.point-evenement{min-width:16px;height:16px;font-size:10px}.voile{padding:10px 6px}.modale{padding:18px 14px;border-radius:12px}.groupe-form{padding:12px 12px 8px 22px}.filtres>div{flex:1 1 140px;min-width:0}.filtres select,.filtres input{width:100%}.filtres .bouton{flex:1 1 100%;justify-content:center}.rangee-boutons .bouton{flex:1 1 auto;justify-content:center}.chrono-ev{padding-left:22px}.kanban{grid-auto-columns:minmax(220px,1fr)}}.lien-courriel{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.lien-courriel:hover{color:var(--encre-fort)}
