:root{--as-bg:#071f16;--as-card:rgba(255,255,255,.075);--as-border:rgba(243,210,122,.24);--as-gold:#f3d27a;--as-text:#f8f7ed;--as-muted:#d8ccb0;--as-green:#1e5c43;--as-red:#ef7777}*{box-sizing:border-box}.as-db-page{margin:0;background:radial-gradient(circle at top,#14442f,var(--as-bg) 55%);color:var(--as-text);font-family:system-ui,-apple-system,Segoe UI,sans-serif;min-height:100vh}.as-db-main{max-width:1200px;margin:auto;padding:72px 18px 80px}.as-db-home{position:fixed;top:14px;left:14px;z-index:20;text-decoration:none;color:#071f16;background:var(--as-gold);padding:10px 14px;border-radius:999px;font-weight:900;box-shadow:0 10px 30px rgba(0,0,0,.25)}.as-db-hero{padding:26px 0 22px}.as-db-hero h1{font-size:clamp(2rem,5vw,4rem);margin:.35em 0}.as-db-hero p{max-width:860px;color:var(--as-muted);line-height:1.65}.as-db-pill{display:inline-block;border:1px solid var(--as-border);border-radius:999px;padding:9px 12px;color:var(--as-gold);background:rgba(255,255,255,.06);font-weight:800}.as-db-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.as-db-card{grid-column:span 12;background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.045));border:1px solid var(--as-border);border-radius:22px;padding:20px;box-shadow:0 18px 46px rgba(0,0,0,.23)}.half{grid-column:span 6}.third{grid-column:span 4}.two-third{grid-column:span 8}.as-db-card h2{margin-top:0;color:var(--as-gold)}.as-db-small{color:var(--as-muted);line-height:1.5}.as-db-hidden{display:none!important}.as-db-form{display:grid;gap:12px}.as-db-form.inline{grid-template-columns:1fr 1fr auto;align-items:end}.as-db-form label{display:grid;gap:6px;color:var(--as-muted);font-weight:700}.as-db-form input,.as-db-form select,.as-db-form textarea{width:100%;border-radius:14px;border:1px solid rgba(243,210,122,.24);background:rgba(0,0,0,.28);color:var(--as-text);padding:12px 13px;font:inherit}.as-db-form textarea{min-height:120px}.as-db-btn{border:0;border-radius:14px;background:var(--as-gold);color:#071f16;padding:12px 16px;font-weight:950;cursor:pointer}.as-db-btn.secondary{background:rgba(255,255,255,.12);color:var(--as-text);border:1px solid var(--as-border)}.as-db-btn.danger{background:var(--as-red);color:#230505}.as-db-actions{display:flex;gap:10px;flex-wrap:wrap}.as-db-topbar{justify-content:space-between;align-items:center}.as-db-msg{position:fixed;top:70px;right:18px;z-index:50;max-width:420px;border-radius:18px;padding:14px 16px;font-weight:850;box-shadow:0 20px 60px rgba(0,0,0,.35)}.as-db-msg.ok{background:#123d2c;color:#d8ffe9;border:1px solid #4cc486}.as-db-msg.err{background:#3d1212;color:#ffd8d8;border:1px solid #ef7777}.as-db-credentials{position:fixed;right:18px;bottom:18px;z-index:60;max-width:430px;background:#0b2d20;border:1px solid var(--as-gold);border-radius:18px;padding:16px;box-shadow:0 22px 70px rgba(0,0,0,.45)}.as-db-credentials strong{color:var(--as-gold)}.as-db-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.as-db-tab{border:1px solid var(--as-border);background:rgba(255,255,255,.07);color:var(--as-text);border-radius:999px;padding:10px 13px;font-weight:850;cursor:pointer}.as-db-tab.active{background:var(--as-gold);color:#071f16}.as-db-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:12px}.kpi{background:rgba(0,0,0,.22);border:1px solid rgba(243,210,122,.18);border-radius:16px;padding:14px}.kpi b{display:block;font-size:2rem;color:var(--as-gold)}.as-db-list{display:grid;gap:10px}.as-db-item{border:1px solid rgba(243,210,122,.15);background:rgba(0,0,0,.18);border-radius:16px;padding:12px}.as-db-table-wrap{overflow:auto}.as-db-table{width:100%;border-collapse:collapse;min-width:650px}.as-db-table th,.as-db-table td{border-bottom:1px solid rgba(243,210,122,.14);padding:11px;text-align:left;vertical-align:top}.as-db-table th{color:var(--as-gold);background:rgba(0,0,0,.18)}.as-directory{display:grid;gap:10px}.dir-region,.dir-org,.dir-family,.dir-class,.dir-student{border-left:3px solid var(--as-gold);padding:8px 10px;background:rgba(0,0,0,.16);border-radius:10px}.dir-org{margin-left:18px;border-color:#8ee0aa}.dir-family,.dir-class{margin-left:36px;border-color:#77c7ff}.dir-student{margin-left:54px;border-color:#d6a5ff}.as-directory.small{font-size:.92rem}.as-tree-preview{display:grid;gap:8px;color:var(--as-muted);font-weight:800}.as-tree-preview .indent{margin-left:22px}.as-tree-preview .indent2{margin-left:44px}.as-tree-preview .indent3{margin-left:66px}@media(max-width:850px){.half,.third,.two-third{grid-column:span 12}.as-db-main{padding-top:76px}.as-db-form.inline{grid-template-columns:1fr}.as-db-msg,.as-db-credentials{left:12px;right:12px;max-width:none}.as-db-table{min-width:560px}}
@media print{.as-db-home,.as-db-tabs,.as-db-btn,.as-db-msg,.as-db-credentials,.as-chat-widget,.as-ai-launcher{display:none!important}.as-db-page{background:white;color:#111}.as-db-card{box-shadow:none;background:white;color:#111;border:1px solid #ddd}.as-db-small{color:#333}.as-db-table th{color:#111;background:#eee}}
.as-db-note{border-left:4px solid #f3d27a;padding:10px 12px;border-radius:10px;background:rgba(243,210,122,.08);color:#f8f7ed;line-height:1.55}.as-db-mini-actions{display:flex;gap:6px;flex-wrap:wrap}.as-db-btn.tiny{padding:7px 9px;border-radius:10px;font-size:.84rem}.as-db-muted{opacity:.62}



/* v25 - contraste et lisibilité du bloc de récupération */
.as-db-recovery{
  margin-top:1rem;
  padding:1rem;
  border:1px solid rgba(243,210,122,.28);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(7,31,22,.92), rgba(16,56,40,.90));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 10px 30px rgba(0,0,0,.22);
}
.as-db-recovery h3{margin:.2rem 0 .4rem;color:var(--as-gold);font-size:1.4rem;}
.as-db-recovery .as-db-small{color:#f7e9bb;line-height:1.65;}
.as-db-recovery-step{
  margin:1rem 0 .55rem;
  color:#fff7dc;
  font-size:1rem;
  font-weight:900;
  letter-spacing:.01em;
}
.as-db-recovery .as-db-form{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(243,210,122,.16);
  border-radius:18px;
  padding:14px;
}
.as-db-recovery .as-db-form + .as-db-form{margin-top:14px;}
.as-db-recovery .as-db-form label{
  color:var(--as-gold);
  font-weight:800;
}
.as-db-recovery .as-db-form input{
  border-radius:14px;
  border:1px solid rgba(243,210,122,.34);
  background:rgba(255,255,255,.10);
  color:var(--as-text);
  padding:13px 14px;
}
.as-db-recovery .as-db-form input::placeholder{color:#d8ccb0;opacity:1;}
.as-db-recovery .as-db-btn{margin-top:.25rem;}
.as-db-recovery .as-db-btn.ok{background:#1c9a52;color:#fff;}


/* v34 - tableaux établissement/famille/élèves lisibles sur mobile */
.as-db-main,
.as-db-grid,
.as-db-card{min-width:0;}
.as-db-card{max-width:100%;overflow:hidden;}
.as-db-table-wrap,
.as-mobile-table-scroll{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  padding-bottom:12px;
  scrollbar-width:thin;
  scrollbar-color:#f3d27a rgba(255,255,255,.12);
}
.as-db-table-wrap::-webkit-scrollbar,
.as-mobile-table-scroll::-webkit-scrollbar{height:10px;}
.as-db-table-wrap::-webkit-scrollbar-track,
.as-mobile-table-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.10);border-radius:999px;}
.as-db-table-wrap::-webkit-scrollbar-thumb,
.as-mobile-table-scroll::-webkit-scrollbar-thumb{background:#f3d27a;border-radius:999px;}
.as-db-table{table-layout:auto;}
.as-db-table th,
.as-db-table td{white-space:nowrap;}
.as-db-table td:first-child{white-space:normal;min-width:190px;max-width:260px;overflow-wrap:anywhere;word-break:break-word;}
.as-db-table td:last-child{min-width:150px;}
.as-db-mini-actions{min-width:max-content;}
.as-db-table-wrap:has(.as-db-table)::before,
.as-mobile-table-scroll:has(.as-db-table)::before{
  content:'← Glisser horizontalement pour voir toutes les colonnes →';
  display:none;
  margin:0 0 10px;
  color:#f3d27a;
  font-weight:900;
  font-size:.9rem;
}
@media(max-width:850px){
  .as-db-page{overflow-x:hidden;}
  .as-db-main{max-width:100vw;padding-left:12px;padding-right:12px;}
  .as-db-card{padding:14px;border-radius:20px;}
  .as-db-table{width:max-content;min-width:640px;font-size:.92rem;}
  .as-db-table th,.as-db-table td{padding:10px 12px;}
  .as-db-table-wrap:has(.as-db-table)::before,
  .as-mobile-table-scroll:has(.as-db-table)::before{display:block;}
}


/* v38 - arborescence pliable et glisser-déposer */
.as-tree-actions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 10px;}
.as-tree-help{border:1px dashed rgba(243,210,122,.32);background:rgba(243,210,122,.07);padding:10px;border-radius:14px;}
.as-tree-group{border:1px solid rgba(243,210,122,.16);border-radius:16px;background:rgba(0,0,0,.12);padding:8px;margin:8px 0;}
.as-tree-group.nested{margin-left:8px;background:rgba(255,255,255,.035);}
.as-tree-group>summary{cursor:pointer;font-weight:950;color:#fff7dc;list-style:none;display:flex;align-items:center;gap:8px;overflow-wrap:anywhere;}
.as-tree-group>summary::-webkit-details-marker{display:none;}
.as-tree-group>summary::after{content:'▾';margin-left:auto;color:#f3d27a;font-size:.9rem;}
.as-tree-group:not([open])>summary::after{content:'▸';}
.as-tree-board{display:grid;gap:9px;margin-top:10px;}
.as-drop-zone{border:1px solid rgba(243,210,122,.18);background:rgba(255,255,255,.045);border-radius:16px;padding:10px;display:grid;gap:8px;min-height:50px;transition:border-color .15s, background .15s, transform .15s;}
.as-drop-zone>strong{display:block;color:#fff;font-size:.95rem;overflow-wrap:anywhere;}
.as-drop-zone.drag-over{border-color:#f3d27a;background:rgba(243,210,122,.15);transform:scale(1.01);}
.as-draggable{cursor:grab;user-select:none;touch-action:none;}
.as-draggable:active{cursor:grabbing;}
.as-draggable.dragging{opacity:.55;outline:2px dashed #f3d27a;}
.as-directory .dir-class,.as-directory .dir-family,.as-directory .dir-student,.as-directory .dir-org,.as-directory .dir-region{margin-left:0;overflow-wrap:anywhere;word-break:break-word;}
.as-directory .dir-student span{display:block;color:#d8ccb0;font-size:.88em;margin-top:2px;}
.as-db-select.tiny{max-width:220px;border-radius:10px;border:1px solid rgba(243,210,122,.28);background:rgba(0,0,0,.24);color:#f8f7ed;padding:7px 9px;font:inherit;font-size:.84rem;font-weight:800;}
.as-db-select.tiny option{background:#082317;color:#f8f7ed;}
@media(max-width:850px){
  .as-tree-group{padding:7px;border-radius:14px;}
  .as-tree-group.nested{margin-left:0;}
  .as-drop-zone{padding:9px;}
  .as-db-select.tiny{max-width:100%;width:100%;}
}

/* v57 - tableau de bord pédagogique intelligent */
.as-pedago-bar{
  position:relative;
  min-width:120px;
  height:24px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(243,210,122,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.as-pedago-bar span{
  position:absolute;
  inset:0 auto 0 0;
  display:block;
  background:linear-gradient(90deg, rgba(34,181,115,.75), rgba(243,210,122,.78));
  border-radius:999px;
}
.as-pedago-bar b{
  position:relative;
  z-index:1;
  display:flex;
  height:100%;
  align-items:center;
  justify-content:center;
  color:#fffaf0;
  font-size:.82rem;
  text-shadow:0 1px 2px rgba(0,0,0,.55);
}
.as-pedago-alert{
  border-left:5px solid rgba(243,210,122,.65) !important;
}
.as-pedago-alert.ok{border-left-color:#2fb46c !important;background:rgba(47,180,108,.12) !important;}
.as-pedago-alert.info{border-left-color:#6fb5ff !important;background:rgba(111,181,255,.12) !important;}
.as-pedago-alert.warning{border-left-color:#f3d27a !important;background:rgba(243,210,122,.12) !important;}
.as-pedago-alert.danger{border-left-color:#ef7777 !important;background:rgba(239,119,119,.13) !important;}
@media(max-width:760px){
  .as-pedago-bar{min-width:96px;}
}


/* v58 - centre de notifications internes */
.as-notification-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:22px;
  height:22px;
  padding:0 7px;
  margin-left:6px;
  border-radius:999px;
  background:#f3d27a;
  color:#102117;
  font-size:.78rem;
  font-weight:950;
}
.as-notification-actions{margin-bottom:12px;}
.as-notification-item.unread{
  border-color:rgba(243,210,122,.48)!important;
  background:rgba(243,210,122,.10)!important;
}
.as-notification-item.read{opacity:.82;}
.as-notification-head{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.as-notification-unread{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:4px 8px;
  background:rgba(34,181,115,.22);
  border:1px solid rgba(34,181,115,.45);
  color:#d8ffe9;
  font-weight:900;
  font-size:.78rem;
}


/* v61 devoirs : cartes et impression */
.as-assignment-card p{white-space:pre-wrap;line-height:1.55;}
.as-db-topbar h2{margin:0;}
@media print{
  .as-db-tabs,.as-db-actions,.as-db-btn,#loginBox,.as-home-button,.as-module-menu-button,.as-ai-button{display:none!important;}
  .as-db-card{box-shadow:none!important;border:1px solid #bbb!important;background:white!important;color:#111!important;}
}


/* v64 - cartes d'abonnement établissement */
.as-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:12px}
.as-plan-card{border:1px solid rgba(243,210,122,.28);background:rgba(255,255,255,.06);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:10px;min-height:260px}
.as-plan-card h3{margin:6px 0 0;color:#f3d27a}
.as-plan-period{display:inline-flex;border:1px solid rgba(243,210,122,.35);border-radius:999px;padding:5px 9px;font-weight:900;color:#f3d27a;background:rgba(0,0,0,.18)}
.as-plan-price strong{font-size:1.7rem;color:#fffaf0}.as-plan-price span{color:#eadfbd;margin-left:4px}
.as-plan-card ul{margin:0;padding-left:18px;color:#eadfbd;line-height:1.55}.as-plan-card .as-db-btn{margin-top:auto}


.as-expired-panel{
  border:1px solid rgba(220,38,38,.26);
  background:linear-gradient(135deg,rgba(254,242,242,.96),rgba(255,247,237,.96));
  color:#7f1d1d;
  border-radius:18px;
  padding:18px;
  box-shadow:0 12px 32px rgba(127,29,29,.08);
}
.as-expired-panel h2{margin:0 0 8px;color:#991b1b;}
.as-expired-panel p{margin:.45rem 0;line-height:1.55;}
.as-expired-panel .as-db-actions{margin-top:12px;}
[data-tab="subscription"].active,[data-tab="backups"].active{box-shadow:0 0 0 2px rgba(5,150,105,.18) inset;}


/* v70 - popups parents devoirs + purge journaux événementiels */
.as-event-cleanup-label{max-width:220px;margin:0;}
.as-event-cleanup-label select{min-width:160px;}
.as-parent-popup-backdrop{position:fixed;inset:0;z-index:9999;background:rgba(3,18,12,.72);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:18px;}
.as-parent-popup{width:min(520px,100%);background:linear-gradient(145deg,#102c20,#173e2d);border:1px solid rgba(243,210,122,.42);box-shadow:0 22px 70px rgba(0,0,0,.45);border-radius:26px;padding:26px;color:#fff7df;position:relative;text-align:center;}
.as-parent-popup h2{margin:8px 0 10px;color:#f3d27a;font-size:1.55rem;}
.as-parent-popup p{font-size:1.03rem;line-height:1.55;margin:0 0 10px;}
.as-parent-popup-icon{width:62px;height:62px;margin:0 auto 10px;border-radius:20px;display:flex;align-items:center;justify-content:center;background:rgba(243,210,122,.16);font-size:2rem;border:1px solid rgba(243,210,122,.35);}
.as-parent-popup-close{position:absolute;top:10px;right:12px;border:0;background:rgba(255,255,255,.10);color:#fff7df;border-radius:999px;width:34px;height:34px;font-size:1.4rem;cursor:pointer;}
.as-parent-popup-actions{justify-content:center;margin-top:18px;}
@media(max-width:640px){.as-event-cleanup-label{max-width:100%;width:100%;}.as-event-cleanup-label select{width:100%;}.as-parent-popup{padding:22px 16px;}.as-parent-popup-actions{flex-direction:column;}.as-parent-popup-actions .as-db-btn{width:100%;}}

.as-recent-report-cleanup{justify-content:flex-end;margin:10px 0 16px;padding:10px;border:1px solid rgba(243,210,122,.18);border-radius:14px;background:rgba(0,0,0,.12);}
.as-recent-report-cleanup .as-event-cleanup-label{margin-right:4px;}

/* v76 - arborescence horizontale sous le tableau de bord sur grand écran */
.as-overview-dashboard-card,
.as-overview-tree-card{grid-column:span 12;}
.as-overview-tree-card{overflow:hidden;}
.as-directory-horizontal{width:100%;}
.as-tree-sections{display:grid;gap:10px;margin-top:10px;}
.as-tree-column{min-width:0;}
@media(min-width:851px){
  #tab-overview .as-overview-tree-card{padding:22px;}
  .as-directory-horizontal{
    overflow-x:auto;
    overflow-y:hidden;
    padding-bottom:12px;
    scrollbar-width:thin;
    scrollbar-color:#f3d27a rgba(255,255,255,.12);
  }
  .as-directory-horizontal::-webkit-scrollbar{height:10px;}
  .as-directory-horizontal::-webkit-scrollbar-track{background:rgba(255,255,255,.10);border-radius:999px;}
  .as-directory-horizontal::-webkit-scrollbar-thumb{background:#f3d27a;border-radius:999px;}
  .as-directory-horizontal .as-tree-group{min-width:0;}
  .as-directory-horizontal .as-tree-group.nested{margin-left:0;}
  .as-directory-horizontal .as-tree-sections{
    grid-template-columns:repeat(3,minmax(260px,1fr));
    align-items:start;
    gap:14px;
    min-width:880px;
  }
  .as-directory-horizontal .as-tree-column{
    height:100%;
    margin:0;
    background:rgba(255,255,255,.04);
  }
  .as-directory-horizontal .as-tree-board{
    grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
    align-items:start;
  }
  .as-directory-horizontal .as-drop-zone{min-width:0;}
}
@media(min-width:1180px){
  .as-directory-horizontal .as-tree-sections{min-width:0;}
}
@media(max-width:850px){
  .as-tree-sections{display:grid;grid-template-columns:1fr;}
}


/* v77 - fonds d'écran pour les devoirs dans l'espace élève */
.as-student-homework-panel{position:relative;overflow:hidden;}
.as-student-homework-topbar{align-items:flex-start;margin-bottom:14px;}
.as-student-homework-topbar h2{margin:0 0 4px;}
.as-student-theme-label{display:grid;gap:6px;min-width:190px;color:#eadfbd;font-weight:900;font-size:.92rem;}
.as-student-theme-label select{width:100%;}
.as-student-assignment-list{gap:14px;}
.as-student-assignment-card{position:relative;overflow:hidden;min-height:178px;border:1px solid rgba(255,255,255,.22);box-shadow:0 18px 42px rgba(0,0,0,.28);isolation:isolate;}
.as-student-assignment-card::before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(135deg,rgba(21,73,51,.92),rgba(7,31,22,.96));}
.as-student-assignment-card::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(3,15,10,.22),rgba(3,15,10,.72));}
.as-homework-content{position:relative;z-index:1;display:grid;gap:10px;color:#fff9e8;}
.as-homework-head{display:flex;gap:10px;align-items:flex-start;}
.as-homework-head strong{display:block;color:#fffaf0;font-size:1.08rem;line-height:1.25;}
.as-homework-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border-radius:16px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);font-size:1.35rem;box-shadow:0 10px 24px rgba(0,0,0,.18);}
.as-homework-meta{display:block;margin-top:3px;color:#fff0c7;}
.as-homework-badges{display:flex;gap:7px;flex-wrap:wrap;}
.as-homework-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;background:rgba(0,0,0,.24);border:1px solid rgba(255,255,255,.28);color:#fffaf0;font-size:.78rem;font-weight:950;letter-spacing:.01em;}
.as-homework-badge.status.todo{background:rgba(243,210,122,.24);border-color:rgba(243,210,122,.55);color:#fff7d6;}
.as-homework-badge.status.done{background:rgba(47,180,108,.28);border-color:rgba(47,180,108,.58);color:#dfffea;}
.as-homework-badge.due{background:rgba(255,255,255,.14);}
.as-student-assignment-card p{margin:.15rem 0 .25rem;color:#fffdf2;text-shadow:0 1px 2px rgba(0,0,0,.28);}
.as-student-assignment-card .as-db-btn.ok{background:#dfffea;color:#062415;border:1px solid rgba(223,255,234,.72);}
.as-student-assignment-card .as-db-btn[disabled]{opacity:.72;cursor:not-allowed;}
.as-student-assignment-card.completed{border-color:rgba(47,180,108,.45);}
.as-student-assignment-card.completed::after{background:linear-gradient(180deg,rgba(3,15,10,.35),rgba(3,15,10,.78));}
.as-homework-bg-stars::before{background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.88) 0 1px,transparent 2px),radial-gradient(circle at 72% 28%,rgba(255,240,196,.9) 0 1px,transparent 2px),radial-gradient(circle at 38% 62%,rgba(255,255,255,.75) 0 1px,transparent 2px),linear-gradient(135deg,#122b58,#1c1241 55%,#07091f);}
.as-homework-bg-garden::before{background:radial-gradient(circle at 12% 18%,rgba(255,238,166,.85),transparent 15%),radial-gradient(circle at 85% 18%,rgba(143,224,170,.55),transparent 20%),linear-gradient(135deg,#14543a,#1c6a44 48%,#083321);}
.as-homework-bg-notebook::before{background:repeating-linear-gradient(0deg,rgba(255,255,255,.16) 0 1px,transparent 1px 30px),linear-gradient(90deg,rgba(239,119,119,.34) 0 2px,transparent 2px 58px),linear-gradient(135deg,#2b4262,#173454 55%,#0b2238);}
.as-homework-bg-mosque::before{background:radial-gradient(circle at 50% 0%,rgba(243,210,122,.55),transparent 20%),radial-gradient(ellipse at 50% 100%,rgba(243,210,122,.20),transparent 34%),linear-gradient(135deg,#103b32,#0d2e4f 58%,#081f25);}
.as-homework-bg-mosque .as-homework-content::before{content:'☪';position:absolute;right:12px;top:-22px;font-size:6.2rem;color:rgba(243,210,122,.18);z-index:-1;}
.as-homework-bg-sand::before{background:radial-gradient(circle at 16% 22%,rgba(255,255,255,.32),transparent 13%),linear-gradient(135deg,#8a5f25,#b88635 52%,#654019);}
.as-homework-bg-sky::before{background:radial-gradient(circle at 14% 18%,rgba(255,238,166,.9),transparent 15%),radial-gradient(ellipse at 70% 24%,rgba(255,255,255,.50),transparent 24%),linear-gradient(135deg,#2274a8,#5aa9d6 56%,#0c4d78);}
.as-homework-bg-stars::after,.as-homework-bg-notebook::after,.as-homework-bg-mosque::after{background:linear-gradient(180deg,rgba(3,15,10,.18),rgba(3,15,10,.68));}
.as-homework-bg-sand::after,.as-homework-bg-sky::after,.as-homework-bg-garden::after{background:linear-gradient(180deg,rgba(3,15,10,.10),rgba(3,15,10,.62));}
@media(min-width:920px){
  #studentAssignments.as-student-assignment-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
  .as-student-assignment-card{min-height:220px;}
}
@media(max-width:640px){
  .as-student-homework-topbar{display:grid;gap:12px;}
  .as-student-theme-label{min-width:0;width:100%;}
  .as-student-assignment-card{min-height:0;}
}
@media print{
  .as-student-assignment-card::before,.as-student-assignment-card::after{display:none!important;}
  .as-student-assignment-card{background:white!important;color:#111!important;box-shadow:none!important;}
  .as-homework-content,.as-homework-head strong,.as-student-assignment-card p{color:#111!important;text-shadow:none!important;}
  .as-homework-badge{color:#111!important;border-color:#bbb!important;background:#f2f2f2!important;}
}


/* v78 - correction lisibilité des menus déroulants espace établissement / élève */
.as-db-page,
.as-db-form select,
.as-db-select,
.as-event-cleanup-label select,
.as-student-theme-label select{
  color-scheme: dark;
}
.as-db-form select,
.as-db-select,
.as-event-cleanup-label select,
.as-student-theme-label select{
  background-color:#213f31;
  color:#fff8dd;
  border-color:rgba(243,210,122,.42);
  font-weight:850;
}
.as-db-form select:focus,
.as-db-select:focus,
.as-event-cleanup-label select:focus,
.as-student-theme-label select:focus{
  outline:3px solid rgba(243,210,122,.38);
  outline-offset:2px;
  background-color:#243f31;
}
.as-db-form select option,
.as-db-form select optgroup,
.as-db-select option,
.as-db-select optgroup,
.as-event-cleanup-label select option,
.as-event-cleanup-label select optgroup,
.as-student-theme-label select option,
.as-student-theme-label select optgroup{
  background-color:#082317 !important;
  color:#fff8dd !important;
  font-weight:800;
}
.as-db-form select option:checked,
.as-db-select option:checked,
.as-event-cleanup-label select option:checked,
.as-student-theme-label select option:checked{
  background-color:#f3d27a !important;
  color:#071f16 !important;
  font-weight:950;
}
.as-db-form select option:disabled,
.as-db-select option:disabled,
.as-event-cleanup-label select option:disabled,
.as-student-theme-label select option:disabled{
  color:#d8ccb0 !important;
  opacity:1;
}


/* v83 - tableau de bord élève intelligent */
.as-student-dashboard-grid{align-items:start;}
.as-student-smart-dashboard-card{grid-column:span 12;overflow:hidden;position:relative;}
.as-student-smart-dashboard-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 10% 10%,rgba(243,210,122,.16),transparent 30%),radial-gradient(circle at 90% 0%,rgba(47,180,108,.14),transparent 26%);pointer-events:none;}
.as-student-smart-dashboard{position:relative;z-index:1;display:grid;gap:16px;}
.as-student-hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;}
.as-student-eyebrow{margin:0 0 5px;color:#f3d27a;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem;font-weight:950;}
.as-student-hero h2{margin:0 0 4px;font-size:clamp(1.45rem,3vw,2.15rem);}
.as-student-hero-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.as-student-kpis{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;}
.as-student-kpi{border:1px solid rgba(243,210,122,.22);background:rgba(255,255,255,.055);border-radius:16px;padding:12px;display:grid;gap:3px;min-height:86px;}
.as-student-kpi strong{font-size:1.85rem;color:#fffaf0;line-height:1;}
.as-student-kpi span{font-size:.82rem;color:#eadfbd;font-weight:850;}
.as-student-kpi.danger{border-color:rgba(239,119,119,.48);background:rgba(239,119,119,.14);}
.as-student-smart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.as-student-priority-card,.as-student-steps-card,.as-student-badge-card{display:flex;gap:12px;align-items:flex-start;border:1px solid rgba(243,210,122,.22);background:rgba(0,0,0,.16);border-radius:18px;padding:14px;min-height:150px;}
.as-student-card-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border-radius:16px;background:rgba(243,210,122,.14);border:1px solid rgba(243,210,122,.28);font-size:1.35rem;}
.as-student-smart-grid h3{margin:0 0 6px;color:#f3d27a;font-size:1.02rem;}
.as-student-smart-grid p{margin:0;color:#fff7df;line-height:1.45;}
.as-student-steps-card ol{margin:0;padding-left:18px;color:#fff7df;line-height:1.55;}
.as-student-steps-card li span{display:block;color:#eadfbd;font-size:.82rem;}
.as-student-badge-progress{height:10px;margin-top:10px;border-radius:999px;background:rgba(255,255,255,.14);overflow:hidden;border:1px solid rgba(255,255,255,.10);}
.as-student-badge-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f3d27a,#2fb46c);}
.as-student-progress-item strong,.as-student-mistake-item strong{color:#fffaf0;}
@media(min-width:920px){.as-student-notifications-card{grid-column:span 4;}.as-student-homework-panel{grid-column:span 8;}.as-student-dashboard-grid>.half{grid-column:span 6;}}
@media(max-width:980px){.as-student-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}.as-student-smart-grid{grid-template-columns:1fr;}.as-student-hero{display:grid;}.as-student-hero-actions{justify-content:flex-start;}}
@media(max-width:560px){.as-student-kpis{grid-template-columns:1fr 1fr;gap:8px;}.as-student-kpi{min-height:76px;padding:10px;}.as-student-kpi strong{font-size:1.55rem;}.as-student-priority-card,.as-student-steps-card,.as-student-badge-card{padding:12px;min-height:0;}.as-student-hero-actions .as-db-btn{width:100%;justify-content:center;}}

/* v85 - parcours automatique par niveau + tableau de bord parents */
.as-student-path-card,
.as-family-smart-dashboard-card{grid-column:span 12;overflow:hidden;position:relative;}
.as-path-wrap{display:grid;gap:14px;position:relative;z-index:1;}
.as-path-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.as-path-head h2{margin:0 0 5px;}
.as-path-score{min-width:120px;border:1px solid rgba(243,210,122,.25);background:rgba(243,210,122,.10);border-radius:18px;padding:12px;text-align:center;}
.as-path-score strong{display:block;font-size:1.85rem;color:#f3d27a;line-height:1;}
.as-path-score span{display:block;margin-top:4px;color:#eadfbd;font-size:.82rem;font-weight:900;}
.as-path-progress{margin-top:-2px;}
.as-path-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;}
.as-path-step{position:relative;display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:flex-start;border:1px solid rgba(243,210,122,.20);border-radius:18px;padding:12px;background:rgba(0,0,0,.16);min-height:128px;}
.as-path-step.completed{border-color:rgba(47,180,108,.55);background:rgba(47,180,108,.12);}
.as-path-step.current{border-color:rgba(243,210,122,.65);box-shadow:0 0 0 2px rgba(243,210,122,.12) inset;background:rgba(243,210,122,.12);}
.as-path-step.unlocked{border-color:rgba(90,169,214,.38);}
.as-path-step.locked{opacity:.72;filter:saturate(.75);}
.as-path-icon{width:42px;height:42px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:rgba(243,210,122,.14);border:1px solid rgba(243,210,122,.30);font-size:1.25rem;}
.as-path-step strong{display:block;color:#fffaf0;line-height:1.25;margin-bottom:4px;}
.as-path-step p{margin:0;color:#eadfbd;font-size:.9rem;line-height:1.35;}
.as-path-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;}
.as-path-meta span,.as-path-lock{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);color:#fff8dd;font-size:.74rem;font-weight:900;}
.as-path-step .as-db-btn{align-self:center;white-space:nowrap;}
.as-family-dashboard-grid{align-items:start;}
.as-family-smart-dashboard{display:grid;gap:16px;}
.as-family-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:2px 0 4px;}
.as-family-hero h2{margin:0 0 4px;font-size:clamp(1.45rem,3vw,2.1rem);}
.as-family-priority{min-width:220px;border:1px solid rgba(243,210,122,.35);border-radius:18px;background:rgba(243,210,122,.12);padding:12px;display:grid;gap:4px;}
.as-family-priority strong{color:#f3d27a;text-transform:uppercase;font-size:.75rem;letter-spacing:.08em;}
.as-family-priority span{color:#fffaf0;font-weight:950;}
.as-family-priority small{color:#eadfbd;font-weight:850;}
.as-family-kpis{grid-template-columns:repeat(5,minmax(115px,1fr));}
.as-family-child-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;}
.as-family-child-card{border:1px solid rgba(243,210,122,.22);background:rgba(0,0,0,.14);border-radius:18px;padding:14px;display:grid;gap:12px;}
.as-family-child-top{display:flex;gap:10px;align-items:flex-start;}
.as-family-child-top>span{width:40px;height:40px;border-radius:15px;background:rgba(243,210,122,.14);border:1px solid rgba(243,210,122,.26);display:flex;align-items:center;justify-content:center;font-size:1.25rem;}
.as-family-child-top strong{display:block;color:#fffaf0;}
.as-family-child-top p{margin:3px 0 0;color:#eadfbd;font-size:.88rem;line-height:1.35;}
.as-family-notifications-card{grid-column:span 4;}
.as-family-children-card{grid-column:span 8;}
.as-family-assignments-card{grid-column:span 7;}
.as-family-detail-card{grid-column:span 5;}
.as-family-detail-path{margin:12px 0 16px;}
.as-family-detail-path .as-path-steps{grid-template-columns:1fr;}
.as-family-detail-path .as-path-step{min-height:0;}
.as-path-wrap.compact .as-path-steps{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));max-height:460px;overflow:auto;padding-right:4px;}
.as-path-wrap.compact .as-path-step{min-height:0;}
@media(min-width:920px){.as-student-path-card{grid-column:span 12;}.as-student-notifications-card{grid-column:span 4;}}
@media(max-width:980px){.as-path-head,.as-family-hero{display:grid;}.as-path-score,.as-family-priority{min-width:0;width:100%;}.as-family-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}.as-family-notifications-card,.as-family-children-card,.as-family-assignments-card,.as-family-detail-card{grid-column:span 12;}.as-path-step{grid-template-columns:40px 1fr;}.as-path-step .as-db-btn,.as-path-lock{grid-column:2;justify-self:start;}}
@media(max-width:560px){.as-path-steps,.as-path-wrap.compact .as-path-steps,.as-family-child-grid{grid-template-columns:1fr;}.as-family-kpis{grid-template-columns:1fr 1fr;}.as-family-priority{padding:10px;}.as-path-step{padding:11px;}}

/* v86 - bibliothèque de devoirs et correction automatique */
.as-assignment-library-card{grid-column:span 12;}
.as-assignment-template-filter{display:grid;gap:5px;color:var(--as-muted);font-weight:900;min-width:190px;}
.as-assignment-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:12px;}
.as-assignment-template-card{display:flex;flex-direction:column;justify-content:space-between;gap:12px;border:1px solid rgba(243,210,122,.18);border-radius:18px;padding:14px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.18));min-height:210px;}
.as-assignment-template-card h3{margin:.55rem 0 .35rem;color:#fff7dc;font-size:1.02rem;line-height:1.25;}
.as-assignment-template-card p{margin:.25rem 0;line-height:1.45;}
.as-assignment-answer-panel{margin:12px 0;padding:12px;border:1px dashed rgba(243,210,122,.32);border-radius:16px;background:rgba(0,0,0,.18);display:grid;gap:10px;}
.as-assignment-answer-panel label{display:grid;gap:6px;color:#fff7dc;font-weight:900;}
.as-assignment-answer-panel textarea{width:100%;min-height:96px;resize:vertical;border-radius:14px;border:1px solid rgba(243,210,122,.25);background:rgba(0,0,0,.28);color:var(--as-text);padding:11px 12px;font:inherit;line-height:1.5;}
.as-correction-box{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;border-radius:16px;padding:12px;margin-top:8px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);}
.as-correction-box.ok{border-color:rgba(139,236,170,.45);background:rgba(30,129,74,.18);}
.as-correction-box.todo{border-color:rgba(255,200,115,.45);background:rgba(160,89,16,.18);}
.as-correction-score{min-width:68px;text-align:center;border-radius:14px;background:rgba(0,0,0,.24);padding:9px;}
.as-correction-score strong{display:block;color:var(--as-gold);font-size:1.15rem;}
.as-correction-score span{font-size:.78rem;color:var(--as-muted);font-weight:900;}
.as-correction-box p{margin:.35rem 0;}
.as-correction-expected{margin-top:6px;border-left:3px solid var(--as-gold);padding:7px 9px;background:rgba(243,210,122,.08);border-radius:9px;color:#fff7dc;}
@media(max-width:850px){.as-assignment-template-grid{grid-template-columns:1fr}.as-correction-box{grid-template-columns:1fr}.as-correction-score{text-align:left;display:flex;gap:8px;align-items:center}.as-assignment-template-filter{width:100%;}}

/* v87 - statistiques direction, certificats PDF et révision intelligente */
.as-direction-stats-grid .as-db-card,
.as-student-revision-card,
.as-student-certificates-card{overflow:hidden;}
.as-direction-kpis{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));}
.as-stat-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.75rem;}
.as-stat-list>div{border:1px solid rgba(245,213,130,.18);background:rgba(255,255,255,.05);border-radius:16px;padding:.85rem;}
.as-stat-list strong{display:block;font-size:1.45rem;color:#f8d879;line-height:1;}
.as-stat-list span{font-size:.84rem;color:rgba(255,255,255,.75);}
.as-smart-revision{display:flex;flex-direction:column;gap:1rem;}
.as-smart-revision-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;}
.as-revision-session{min-width:120px;border:1px solid rgba(68,205,154,.35);background:rgba(20,150,110,.12);border-radius:18px;padding:.85rem;text-align:center;}
.as-revision-session strong{display:block;color:#b9ffe7;font-size:.9rem;}
.as-revision-session span{display:block;color:#f8d879;font-weight:900;font-size:1.25rem;margin-top:.2rem;}
.as-revision-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;}
.as-revision-item{display:flex;gap:.75rem;align-items:flex-start;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:18px;padding:.85rem;}
.as-revision-item.ok{border-color:rgba(68,205,154,.28);background:rgba(68,205,154,.08);}
.as-revision-item.mistake{border-color:rgba(245,158,11,.35);background:rgba(245,158,11,.08);}
.as-revision-item.overdue_assignment{border-color:rgba(239,68,68,.38);background:rgba(239,68,68,.08);}
.as-revision-icon{font-size:1.35rem;line-height:1.1;}
.as-revision-item>div{flex:1;min-width:0;}
.as-revision-item strong{color:#fff;}
.as-revision-item p{margin:.12rem 0 .2rem;color:#f8d879;font-weight:700;}
.as-revision-item .as-db-small{display:block;margin-top:.2rem;}
.as-revision-steps{border:1px dashed rgba(245,213,130,.32);border-radius:18px;padding:.85rem;background:rgba(0,0,0,.12);}
.as-revision-steps ol{margin:.5rem 0 0 1.2rem;padding:0;}
.as-certificate-wrap{display:flex;flex-direction:column;gap:1rem;}
.as-certificate-head{display:flex;justify-content:space-between;gap:1rem;align-items:center;}
.as-certificate-count{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,rgba(245,213,130,.35),rgba(68,205,154,.22));color:#fff;font-weight:900;border:1px solid rgba(245,213,130,.32);}
.as-certificate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem;}
.as-certificate-card{display:flex;align-items:center;gap:.75rem;border:1px solid rgba(245,213,130,.25);border-radius:18px;padding:.85rem;background:linear-gradient(135deg,rgba(245,213,130,.10),rgba(68,205,154,.08));}
.as-certificate-card>div{flex:1;min-width:0;}
.as-certificate-card strong{color:#fff;}
.as-certificate-card p{margin:.15rem 0 0;color:rgba(255,255,255,.72);font-size:.86rem;}
.as-certificate-icon{font-size:1.55rem;}
.as-certificate-empty{border:1px dashed rgba(255,255,255,.22);border-radius:18px;padding:1rem;color:rgba(255,255,255,.75);background:rgba(255,255,255,.04);}
.as-family-detail-revision,.as-family-detail-certificates{margin:1rem 0;}
@media (max-width:720px){
  .as-smart-revision-head,.as-certificate-head{flex-direction:column;align-items:stretch;}
  .as-revision-session{text-align:left;}
  .as-revision-item,.as-certificate-card{flex-direction:column;align-items:flex-start;}
}

/* v88 - mode professeur rapide, évaluations et messagerie interne */
.as-quick-assignment-card{border:1px solid rgba(245,213,130,.24);background:linear-gradient(135deg,rgba(245,213,130,.10),rgba(68,205,154,.08));}
.as-quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:.75rem;align-items:end;margin-top:.85rem;}
.as-quick-grid label,.as-message-form label{display:grid;gap:.35rem;color:var(--as-muted);font-weight:900;font-size:.9rem;}
.as-quick-grid select,.as-message-form select,.as-message-form input,.as-message-form textarea{width:100%;border-radius:14px;border:1px solid rgba(243,210,122,.25);background:rgba(0,0,0,.28);color:var(--as-text);padding:.75rem;font:inherit;}
.as-message-form textarea{min-height:110px;resize:vertical;}
.as-evaluation-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.7rem;margin:.8rem 0;}
.as-kind-badge,.as-homework-badge.eval{display:inline-flex;align-items:center;border-radius:999px;padding:.18rem .55rem;font-size:.76rem;font-weight:900;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff7dc;}
.as-kind-badge.evaluation,.as-homework-badge.eval{background:rgba(147,51,234,.22);border-color:rgba(216,180,254,.38);}
.as-kind-badge.homework{background:rgba(20,184,166,.16);border-color:rgba(94,234,212,.28);}
.as-student-assignment-card.evaluation{box-shadow:inset 0 0 0 1px rgba(216,180,254,.24);}
.as-message-form{display:grid;gap:.75rem;margin-bottom:1rem;}
.as-message-form .as-message-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.7rem;}
.as-messages-list{display:grid;gap:.75rem;}
.as-message-item{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);border-radius:18px;padding:.9rem;}
.as-message-item.unread{border-color:rgba(245,213,130,.42);background:rgba(245,213,130,.10);}
.as-message-head{display:flex;justify-content:space-between;gap:.8rem;align-items:flex-start;}
.as-message-head strong{color:#fff7dc;}
.as-message-head span{font-size:.78rem;color:var(--as-muted);white-space:nowrap;}
.as-message-item p{white-space:pre-wrap;margin:.55rem 0;color:var(--as-text);}
.as-tab-badge{display:inline-flex;min-width:20px;height:20px;align-items:center;justify-content:center;border-radius:999px;background:#ef4444;color:#fff;font-size:.72rem;margin-left:.25rem;padding:0 .35rem;}
.as-tab-badge.as-db-hidden{display:none;}
@media(max-width:720px){.as-quick-grid,.as-message-form .as-message-grid{grid-template-columns:1fr}.as-message-head{flex-direction:column}.as-message-head span{white-space:normal}}

/* v92 - cohérence des largeurs sur écran de bureau */
.as-student-dashboard-grid > .as-db-card,
.as-family-dashboard-grid > .as-db-card,
.as-direction-stats-grid > .as-db-card{
  min-width:0;
}
.as-path-step > div{min-width:0;}
.as-path-step strong,
.as-path-step p{overflow-wrap:anywhere;word-break:normal;}
@media (min-width:920px){
  /* Le parcours principal doit avoir exactement la largeur du tableau de bord élève. */
  .as-student-dashboard-grid > .as-student-smart-dashboard-card,
  .as-student-dashboard-grid > .as-student-path-card{
    grid-column:1 / -1 !important;
    width:100%;
    max-width:none;
  }
  /* Cartes principales des autres vues : largeur cohérente avec leur tableau de bord. */
  .as-family-dashboard-grid > .as-family-smart-dashboard-card,
  .as-direction-stats-grid > .as-direction-stats-overview-card{
    grid-column:1 / -1 !important;
    width:100%;
  }
  /* Le parcours compact reste lisible sans superposition sur grand écran. */
  .as-student-path-card .as-path-wrap.compact .as-path-steps{
    grid-template-columns:repeat(3,minmax(0,1fr));
    max-height:560px;
    gap:12px;
  }
  .as-student-path-card .as-path-step{
    min-height:150px;
    height:auto;
  }
}
@media (min-width:920px) and (max-width:1120px){
  .as-student-path-card .as-path-wrap.compact .as-path-steps{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* v93 - Centre IA */
.as-ai-center-grid{align-items:start}.as-ai-meter{height:16px;border-radius:999px;background:#202b3c;overflow:hidden;margin:14px 0}.as-ai-meter>div{height:100%;width:0;background:linear-gradient(90deg,#22c55e,#eab308);transition:width .35s}.as-ai-meter>div.level-warning{background:#f59e0b}.as-ai-meter>div.level-critical,.as-ai-meter>div.level-blocked{background:#ef4444}.as-ai-pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.as-ai-pack{padding:16px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:rgba(12,22,38,.78);display:flex;flex-direction:column;gap:8px}.as-ai-pack h3{margin:0}.as-ai-pack>strong{font-size:1.45rem;color:#f6c453}.as-ai-chart{height:240px;display:flex;align-items:flex-end;gap:5px;padding:16px 8px 0;border-bottom:1px solid rgba(255,255,255,.16);overflow-x:auto}.as-ai-day{height:100%;min-width:18px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}.as-ai-day i{width:12px;background:linear-gradient(180deg,#60a5fa,#8b5cf6);border-radius:6px 6px 0 0}.as-ai-day span{font-size:.65rem;opacity:.72}@media(max-width:700px){.as-ai-chart{height:190px}.as-ai-day{min-width:15px}}

.as-ai-simulator{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}.as-ai-simulator label{display:grid;gap:6px;font-size:.9rem}.as-ai-simulator input{width:100%;box-sizing:border-box}.as-ai-alert{display:grid;gap:4px;padding:12px;border-radius:12px;margin:8px 0;background:rgba(255,255,255,.06)}.as-ai-alert.ok{border-left:4px solid #55d68b}.as-ai-alert.notice{border-left:4px solid #60a5fa}.as-ai-alert.warning{border-left:4px solid #fbbf24}.as-ai-alert.danger{border-left:4px solid #fb7185}@media(max-width:800px){.as-ai-simulator{grid-template-columns:1fr}}
