.report-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.report-cards p,.work-heading p{font-size:13px;color:#64748b;line-height:1.6}.work-heading h1{font-size:26px;margin:0 0 10px}.grade-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:16px 0}.grade-toolbar input{width:auto;min-height:0;border:0;font-size:11px}.grade-pending-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #e7ebef}.grade-pending-row span{display:grid;gap:5px;font-size:13px}.grade-pending-row small{color:#738094;font-size:11px}.grades-pending{margin-top:16px}.work-panel [type=number]{max-width:150px}.work-panel [type=checkbox]{width:16px;min-height:16px}.budget-real-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.budget-real-summary>div{border:1px solid #e1e6ed;border-radius:7px;background:#fff;padding:16px}.budget-real-summary small{display:block;font-size:11px;color:#758295;margin-bottom:7px}.budget-real-summary strong{font-size:19px;font-weight:600;color:#263142}.budget-envelopes{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px}.budget-envelopes form{display:grid;gap:8px;padding:14px;border:1px solid #e2e7ee;border-radius:7px}.budget-envelopes form small{font-size:10px;color:#64748b}.budget-envelopes form button{justify-self:start}.budget-dialog{width:min(780px,calc(100vw - 24px))}.budget-dialog fieldset{padding:0;border:0;min-width:0}.budget-dialog select[multiple]{min-height:100px}.budget-dialog textarea,.um-dialog textarea{width:100%;border:1px solid #dce3ed;border-radius:6px;min-height:75px;padding:9px;color:#334155;font:inherit}.budget-dialog .um-fields{margin:14px 0}.work-panel .section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.work-panel .section-head h2{margin:0}.work-panel td small{display:block;color:#738094;font-size:11px;max-width:320px;white-space:normal}.global-admin-panel .budget-real-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.global-admin-panel .budget-real-summary strong{font-size:16px}
@media(max-width:620px){.report-cards{grid-template-columns:1fr}.budget-real-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.budget-real-summary>div{padding:10px}.budget-real-summary strong{font-size:16px}.budget-real-summary small{font-size:10px}.grade-pending-row{align-items:start}.work-heading h1{font-size:22px}.work-panel{padding:14px}.work-panel .section-head{align-items:start;flex-wrap:wrap}.work-panel th,.work-panel td{padding:9px 7px}.work-panel [type=number]{width:80px}.report-cards .secondary-btn{margin-top:6px}}

.auth-brand img{width:240px;max-width:100%;height:auto}.auth-brand{display:block}.operation-comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px}.operation-comparison dt{font-size:11px;color:#758094;margin-top:12px}.operation-comparison dd{font-size:12px;margin:4px 0;overflow-wrap:anywhere;white-space:pre-wrap}@media(max-width:620px){.operation-comparison{grid-template-columns:1fr}}

.student-report-link{display:block;font-size:11px;margin-top:4px;color:#2563eb}.um-dialog .work-panel h3{font-size:14px;margin-top:0}

body .brand{display:flex;align-items:center;gap:12px}.work-panel .um-box table,.um-dialog .um-box table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.work-panel .um-box th,.um-dialog .um-box th{padding:11px 14px;border-bottom:1px solid #e1e6ed;background:#f8fafc;color:#64748b;font-weight:600;text-align:left}.work-panel .um-box td,.um-dialog .um-box td{padding:12px 14px;border-bottom:1px solid #e7ecf2;text-align:left;vertical-align:middle}.work-panel .um-box tr:last-child td,.um-dialog .um-box tr:last-child td{border-bottom:0}.work-panel a.secondary-btn,.um-dialog a.secondary-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.work-panel input[type=checkbox]{padding:0;width:16px;height:16px;min-height:16px}
@media(max-width:620px){.work-panel .um-box th,.work-panel .um-box td,.um-dialog .um-box th,.um-dialog .um-box td{padding:9px 7px}}

.grade-editor{min-width:0}.grade-fieldset{min-width:0;border:0;padding:0;margin:20px 0}.grade-fieldset legend{font-size:14px;font-weight:600;margin-bottom:12px}.grade-evaluations{display:grid;gap:9px;margin-bottom:12px}.grade-evaluation{display:grid;grid-template-columns:minmax(140px,1fr) 110px 65px 38px;gap:10px;align-items:end;padding:10px;background:#f8fafc;border:1px solid #e4e9f0;border-radius:7px}.grade-evaluation label,.grade-score-controls label,.grade-feedback{display:grid;gap:5px;font-size:11px;color:#64748b}.grade-evaluation input{width:100%;min-width:0}.grade-evaluation [data-share]{font-size:12px;align-self:center;color:#64748b}.grade-evaluation button{min-width:36px;min-height:36px}.grade-entry-table [data-mark]{min-width:225px}.grade-entry-table th[scope=row]{min-width:160px;vertical-align:top!important;background:white!important;color:#334155!important}.grade-entry-table th[scope=row] small{display:block;margin-top:6px;font-weight:400;color:#64748b}.grade-entry-table td{vertical-align:top!important}.grade-score-controls{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.grade-score-controls .grade-absence{display:flex;align-items:center;gap:6px;min-height:36px}.grade-score-controls [type=number]{width:90px!important;min-height:36px}.grade-feedback{margin-top:10px;min-width:0}.grade-feedback textarea{width:100%;min-width:0;min-height:60px;border:1px solid #dce3ed;border-radius:6px;padding:8px;font:12px "Albert Sans",sans-serif;color:#334155;resize:vertical}.grade-retake{border-top:1px solid #dbe3ee;margin-top:12px;padding-top:10px}.grade-retake>strong{display:block;margin-bottom:9px;font-size:12px;color:#2563eb}.grade-mean-cell{min-width:165px}.grade-mean-cell [data-mean]{font-size:20px;color:#2563eb}.grade-mean-cell [data-academic]{display:block;margin:7px 0 12px;line-height:1.5}.grade-entry-table td:last-child{min-width:240px}.grade-mobile-label{display:none}.grade-review-detail{margin-top:6px;font-size:11px;line-height:1.5;color:#64748b}.grade-repeat-confirm{display:flex;align-items:start;gap:8px;margin-top:10px;font-size:12px;color:#9a3412}.grade-repeat-confirm input{flex:none}.grade-student-comment{white-space:pre-wrap;overflow-wrap:anywhere}.grade-history-list{margin-top:10px;display:grid;gap:8px}.grade-history-list article{padding:9px;border:1px solid #e4e9f0;border-radius:6px}.grade-history-list small{display:block;color:#64748b}.grade-status-tag{display:block;margin-top:6px;font-size:11px;color:#9a3412}
@media(max-width:700px){.grade-evaluation{grid-template-columns:minmax(0,1fr) 65px 40px}.grade-evaluation>label:first-child{grid-column:1/-1}.grade-evaluation input,.grade-evaluation button,.grade-score-controls [type=number]{min-height:44px}.grade-editor .grade-entry-box{overflow:visible;border:0}.grade-entry-table,.grade-entry-table tbody,.grade-entry-table tr,.grade-entry-table th[scope=row],.grade-entry-table td{display:block;width:100%;min-width:0!important;max-width:100%;white-space:normal!important}.grade-entry-table thead{display:none}.grade-entry-table tr{border:1px solid #e1e6ed;border-radius:8px;overflow:hidden;margin:0 0 16px;background:white}.grade-entry-table th[scope=row]{background:#f8fafc!important;border:0!important;font-size:14px!important;padding:14px!important}.grade-entry-table td{padding:14px!important;border:0!important;border-top:1px solid #e7ecf2!important}.grade-mobile-label{display:block;margin-bottom:12px;font-size:13px;color:#334155}.grade-score-controls{justify-content:space-between}.grade-score-controls .grade-absence{min-height:44px}.grade-feedback textarea{min-height:74px;font-size:13px}.grade-mean-cell [data-mean]:before{content:'Moyenne : ';font-size:13px;font-weight:400;color:#64748b}.grade-editor .form-actions{display:grid;grid-template-columns:1fr}.grade-editor .form-actions button{width:100%;min-height:44px}.grade-repeat-confirm{line-height:1.5}}

.budget-dialog .budget-derived-year{padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;display:grid;gap:5px}.budget-derived-year>span,.budget-derived-year small{font-size:12px;color:#64748b}.budget-choices{min-width:0;border:1px solid #e2e8f0!important;border-radius:7px;padding:12px!important;margin:0!important}.budget-choices legend{font-size:13px;font-weight:600}.budget-choices>[data-choices]{max-height:220px;overflow:auto;margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.budget-choices>[data-choices=modules]{grid-template-columns:minmax(0,1fr)}.budget-check-row{display:flex!important;align-items:center;gap:9px!important;min-height:36px;padding:5px 7px;cursor:pointer;border-radius:5px}.budget-check-row:hover{background:#f1f5f9}.budget-check-row[hidden]{display:none!important}.budget-check-row input[type=checkbox]{width:16px!important;min-height:16px!important;height:16px;flex:none;padding:0!important;accent-color:#2563eb}.budget-check-row span{min-width:0;overflow-wrap:anywhere}.budget-choices small,.budget-dialog label>small{font-size:12px;color:#64748b;line-height:1.5}.budget-choices small{display:block;margin-top:8px}@media(max-width:700px){.budget-choices>[data-choices]{grid-template-columns:minmax(0,1fr)}.budget-check-row{min-height:44px}.budget-choices{padding:10px!important}.budget-choices>[data-choices]{max-height:220px}}

.budget-pie-panel{display:flex;align-items:center;gap:24px;padding:20px;margin:16px 0;background:white;border:1px solid #e2e8f0;border-radius:8px}.budget-pie{width:130px;height:130px;border-radius:50%;flex:none;background:conic-gradient(#2563eb var(--budget-angle),#e4edf9 0)}.budget-pie-panel h2{font-size:17px}.budget-choices [hidden]{display:none!important}@media(max-width:620px){.budget-pie-panel{gap:16px;padding:14px}.budget-pie{width:90px;height:90px}.budget-pie-panel h2{font-size:15px}}

.budget-campus-filter,.budget-project-campuses{display:flex;flex-wrap:wrap;gap:12px;border:1px solid #dce4ee;border-radius:7px;padding:12px;margin:12px 0}.budget-campus-filter label,.budget-project-campuses label{display:flex;align-items:center;gap:8px;min-height:32px}.budget-project-campuses small{width:100%;color:#64748b}.budget-date-range{border:1px solid #dce4ee;border-radius:7px;padding:12px}.budget-date-head{display:flex;justify-content:space-between;align-items:center;text-transform:capitalize}.budget-date-head button,.budget-date-grid button{min-height:40px;border:0;border-radius:5px;background:white;color:#334155;font:14px Albert Sans,sans-serif;cursor:pointer}.budget-date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.budget-date-grid span{text-align:center;font-size:12px;color:#64748b}.budget-date-grid button[aria-pressed=true]{background:#e7efff;color:#2056bb}.budget-date-grid .outside{color:#a4aebc}.budget-date-range p{font-size:12px;color:#64748b}.budget-date-grid button:focus-visible{outline:2px solid #2563eb}.budget-real-summary{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}@media(max-width:620px){.budget-real-summary{grid-template-columns:1fr 1fr}.budget-campus-filter label,.budget-project-campuses label{min-height:44px}.budget-date-grid button{min-height:44px}.budget-date-range{padding:8px}}

.document-upload .form-grid>*{min-width:0}.document-upload input,.document-upload select{max-width:100%;min-width:0}.document-group-choices{max-height:220px;overflow:auto;display:grid;gap:6px;padding:8px 0}.document-group-choices label{display:flex;align-items:center;gap:8px}.document-group-choices input{width:auto}.document-upload [hidden]{display:none!important}.work-files article>div{min-width:0;overflow-wrap:anywhere}@media(max-width:620px){.document-upload .form-grid{grid-template-columns:minmax(0,1fr)}.document-upload input,.document-upload select{font-size:16px}.work-files article{flex-wrap:wrap}.work-files article .secondary-btn{max-width:100%}}

.budget-four-values{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:700px){.budget-four-values{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Budget: one compact native accordion row per real expense or forecast. */
.budget-project-list{min-width:0;margin-top:16px;border-top:1px solid #e5eaf1}
.budget-project-item{min-width:0;border-bottom:1px solid #e5eaf1}
.budget-project-item>summary{list-style:none;display:grid;grid-template-columns:14px minmax(0,1fr) 120px minmax(100px,180px) minmax(90px,110px);align-items:center;gap:12px;padding:13px 4px;cursor:pointer;min-width:0;min-height:46px;box-sizing:border-box;font-size:12px;color:#475569}
.budget-project-item>summary::-webkit-details-marker{display:none}
.budget-project-item>summary:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
.budget-project-item>summary:hover{background:#f8faff}
.budget-project-arrow{font-size:22px;line-height:1;transition:transform .15s;text-align:center}
.budget-project-item[open]>summary .budget-project-arrow{transform:rotate(90deg)}
.budget-project-title,.budget-project-campus{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.budget-project-title{font-weight:600;color:#334155;font-size:13px}
.budget-project-mobile-nature{display:none}
.budget-project-amount{font-size:13px;font-weight:600;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.budget-project-nature{justify-self:start;font-size:11px;border-radius:4px;padding:3px 7px;background:#edf2fa;color:#526887}
.budget-project-nature.real{background:#e8f0ff;color:#245cbd}
.budget-project-detail{padding:16px 26px 20px;background:#fbfcfe;border-top:1px solid #edf0f5;min-width:0}
.budget-project-detail h3{margin:0 0 10px;font-size:15px;overflow-wrap:anywhere}
.budget-project-description{font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;color:#64748b}
.budget-project-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0;min-width:0}
.budget-project-meta>div{min-width:0}.budget-project-meta .wide{grid-column:1/-1}
.budget-project-meta dt{font-size:11px;color:#7b899d;margin-bottom:4px}
.budget-project-meta dd{margin:0;font-size:12px;line-height:1.5;color:#475569;overflow-wrap:anywhere}
.budget-project-expenses{border-top:1px solid #e5eaf1;margin:16px 0}
.budget-project-expenses>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;font-size:13px;border-bottom:1px solid #edf0f5}
.budget-project-expenses span{min-width:0;overflow-wrap:anywhere}.budget-project-expenses strong{white-space:nowrap;font-weight:600;font-variant-numeric:tabular-nums}
@media(max-width:800px){.budget-project-item>summary{grid-template-columns:14px minmax(0,1fr) 105px 100px}.budget-project-campus{display:none}}
@media(max-width:620px){.budget-project-item>summary{grid-template-columns:12px minmax(0,1fr) auto;gap:8px;min-height:48px;padding:12px 0}.budget-project-nature{display:none}.budget-project-mobile-nature{display:inline;font-weight:400;color:#64748b;font-size:11px}.budget-project-title,.budget-project-amount{font-size:12px}.budget-project-detail{padding:14px 10px}.budget-project-meta{grid-template-columns:minmax(0,1fr)}.budget-project-detail>button{min-height:44px}.budget-project-expenses>div{font-size:12px;gap:8px}}
@media(prefers-reduced-motion:reduce){.budget-project-arrow{transition:none}}

.budget-weproc-list{margin-top:24px}.budget-weproc-heading{padding:14px 0 6px}.budget-weproc-heading h3{font-size:14px;margin:0 0 8px;font-weight:600}.budget-weproc-heading h3 small{font-size:11px;color:#64748b;margin-left:6px;font-weight:400}.budget-weproc-heading p{font-size:12px;line-height:1.6;margin:0 0 8px}.budget-invoice-review{font-size:12px;color:#8a5b24;line-height:1.6;border-left:2px solid #d4b78a;padding-left:10px}

.budget-weproc-heading .budget-project-nature{display:inline-block;margin:0 6px 6px 0}
.budget-envelope-filter{min-width:0;max-width:440px}

.budget-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:1;min-width:0}.budget-section-heading h2,.budget-section-heading h3{margin:0}.budget-section-total{font-size:17px;line-height:1.3;font-weight:650;color:#263346;white-space:nowrap;font-variant-numeric:tabular-nums}.budget-projects-heading{flex-wrap:wrap;gap:12px}.budget-projects-heading .budget-section-heading{min-width:min(100%,260px)}.budget-weproc-heading>.budget-section-heading{margin-bottom:10px}@media(max-width:620px){.budget-section-heading{align-items:flex-start;gap:8px}.budget-section-heading h2,.budget-section-heading h3{font-size:13px}.budget-section-total{font-size:15px}.budget-projects-heading{margin-bottom:8px}}

.budget-envelope-position{margin:0 0 20px}.budget-envelope-position>.budget-section-heading{margin-bottom:12px;flex-wrap:wrap}.budget-envelope-position h2{font-size:17px}.budget-envelope-position>.budget-section-heading>span{font-size:12px;color:#64748b}.budget-envelope-position .budget-real-summary{margin-bottom:10px}@media(max-width:620px){.budget-envelope-position h2{font-size:15px}.budget-envelope-position .budget-four-values strong{font-size:18px;overflow-wrap:anywhere}.budget-envelope-position .budget-section-heading{gap:5px}}

.budget-projects-title{display:flex;align-items:center;gap:7px;min-width:0;flex-wrap:wrap}.budget-projects-title h2 small{font-size:11px;color:#64748b;margin-left:6px;font-weight:400}.budget-add-icon{display:inline-grid;place-items:center;flex:none;width:28px;height:28px;padding:0;border:0;border-radius:5px;background:transparent;color:#64748b;font:22px/1 "Albert Sans",sans-serif;cursor:pointer}.budget-add-icon:hover{background:#edf3ff;color:#2563eb}.budget-add-icon:focus-visible{outline:2px solid #2563eb;outline-offset:2px}

.budget-meter-panel{margin:0 0 20px}.budget-meter-panel h2{font-size:17px;margin:0 0 12px}.budget-meter-panel .dash-budget-meter{margin-top:0}

.budget-project-actions{display:flex;gap:8px;flex-wrap:wrap}.budget-deletions{margin-top:16px}.budget-deletions h3{font-size:15px}

.work-calendar-day.public-holiday{background:repeating-linear-gradient(135deg,#edf0f4,#edf0f4 4px,#dce3eb 4px,#dce3eb 8px)!important;color:#526174!important;opacity:1!important;cursor:not-allowed}.work-holiday-legend{font-size:12px;color:#64748b}
