.teacher-grade-locked .absence-box,.teacher-grade-locked .grade-box{pointer-events:none}
.grade-unlock-trigger{display:inline-flex;align-items:center;gap:4px;margin-left:auto;border:1px solid #0088cc;border-radius:3px;background:#fff;color:#0088cc;padding:3px 7px;font-size:10px;font-weight:600;cursor:pointer}.grade-unlock-trigger:hover{background:#eaf7fc}
.grade-unlock-dialog{width:min(480px,calc(100vw - 32px))}.grade-unlock-dialog form{display:block!important;position:static!important;width:auto!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;background:#fff!important}.grade-unlock-dialog .grade-unlock-body{gap:7px}.grade-unlock-dialog .grade-unlock-body label{color:#333;font-size:12px;font-weight:650}.grade-unlock-dialog textarea{display:block;width:100%;min-height:125px;padding:10px;border:1px solid #cbd3db;border-radius:3px;resize:vertical;font:inherit}.grade-unlock-dialog textarea:focus{border-color:#0088cc;box-shadow:0 0 0 2px #0088cc22;outline:0}.grade-unlock-dialog .grade-unlock-close{width:auto!important;height:auto!important;margin:0!important;padding:0!important}.grade-unlock-dialog form>footer .button{width:auto!important;margin:0!important}
.year-end-grade-dialog{width:min(590px,calc(100vw - 28px))}.year-end-grade-dialog form{display:block!important;position:static!important;width:auto!important;margin:0!important;padding:0!important;border:0!important;background:#fff!important;box-shadow:none!important}.year-end-action-options{display:grid;gap:8px;margin:0;padding:0;border:0}.year-end-action-options legend{margin-bottom:8px;color:#333;font-size:12px;font-weight:700}.year-end-action-options label{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid #d8dee6;border-radius:6px;background:#fff;cursor:pointer}.year-end-action-options label:has(input:checked){border-color:var(--theme-primary,#0088cc);background:#f2f9fd}.year-end-action-options label.is-disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.35)}.year-end-action-options input{flex:0 0 16px;width:16px;height:16px;margin-top:2px}.year-end-action-options span{display:grid;gap:2px}.year-end-action-options strong{font-size:13px}.year-end-action-options small{color:#77838f;font-size:10px;font-weight:400}.year-end-reason,.year-end-exam{display:grid;gap:10px;margin-top:13px;padding-top:13px;border-top:1px solid #e6e9ed}.year-end-reason label,.year-end-exam label{display:grid;gap:5px;font-size:11px}.year-end-reason textarea{min-height:74px;resize:vertical}.subject-year-status{display:inline-flex;margin-left:6px;padding:2px 6px;border-radius:9px;font-size:9px;font-weight:700;text-transform:uppercase}.subject-year-status.incomplete{background:#fff3cd;color:#8a6700}.subject-year-status.corigent{background:#fde5e5;color:#b42318}.subject-year-status.exam_recorded{background:#e4f4ea;color:#18794e}@media(max-width:600px){.year-end-grade-dialog .form-grid{grid-template-columns:1fr}.year-end-action-options label{padding:9px}}
.catalog-year-finalization{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:14px 16px;border:1px solid #dce3e9;border-left:4px solid var(--theme-primary,#0088cc);border-radius:7px;background:#fff}.catalog-year-finalization>div{display:grid;gap:2px}.catalog-year-finalization p{margin:0}.catalog-year-finalization strong{font-size:14px}.catalog-year-finalization small{color:#77838f;font-size:10px}.catalog-year-finalization form{margin:0}@media(max-width:650px){.catalog-year-finalization{align-items:stretch;flex-direction:column}.catalog-year-finalization .button{width:100%}}
.catalog-year-finalization.is-finalized{border-left-color:#2da56b;background:#f2fbf6}
.catalog-year-end-admin-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;padding:13px 15px;border:1px solid #d9e2e9;border-radius:7px;background:#f8fbfd}.catalog-year-end-admin-actions>div{display:grid;gap:2px}.catalog-year-end-admin-actions p{margin:0}.catalog-year-end-admin-actions strong{font-size:13px}.catalog-year-end-admin-actions small{color:#77838f;font-size:10px}.catalog-year-end-admin-actions form{margin:0}.catalog-admin-year-end form{margin:0}@media(max-width:650px){.catalog-year-end-admin-actions{align-items:stretch;flex-direction:column}.catalog-year-end-admin-actions .button{width:100%}}
.year-end-exempt-reason{display:grid;gap:10px;margin-top:13px;padding-top:13px;border-top:1px solid #e6e9ed}.year-end-exempt-reason label{display:grid;gap:5px;font-size:11px}.year-end-exempt-reason textarea{min-height:74px;resize:vertical}.subject-year-status.exempt{background:#e8eef9;color:#3157a4}
.subject-exam-result{display:flex;align-items:center;justify-content:center;gap:5px;padding:5px 8px;border-top:1px solid color-mix(in srgb,var(--theme-primary,#0088cc),#fff 72%);background:color-mix(in srgb,var(--theme-primary,#0088cc),#fff 94%);color:#60738b;font-size:10px}.subject-exam-result strong{color:var(--theme-primary,#0088cc);font-size:14px}.subject-exam-result small{margin-left:2px;color:#77838f;font-size:8px}
