.course-closure-panel{margin:1rem 0;padding:1rem;border:1px solid #cbdde2;border-radius:1rem;background:#f5fbfc;color:#173f4f;min-width:0}
.course-closure-panel h3{margin:0;font-size:1.1rem;font-weight:800}
.course-closure-panel p{margin:.3rem 0;font-size:.86rem}
.course-closure-panel button{padding:.55rem .85rem;border:1px solid #b5cdd2;border-radius:.6rem;background:#fff;color:#173f4f;font-weight:700}
.course-closure-panel button.course-closure-primary{background:#17515d;color:#fff;border-color:#17515d}
.course-closure-panel button:disabled{opacity:.6;cursor:not-allowed}
.course-closure-buttons{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.75rem}
.course-closure-actions label{display:flex;align-items:center;gap:.5rem;margin-top:.65rem;font-weight:650}
.course-closure-panel .course-closure-error{color:#992b3c}
.course-closure-scroll{overflow:auto;margin:.7rem 0;border:1px solid #cbdde2;border-radius:.6rem}
.course-closure-scroll table{width:100%;text-align:center;border-collapse:collapse;background:#fff;font-size:.84rem;font-variant-numeric:tabular-nums}
.course-closure-scroll th,.course-closure-scroll td{padding:.5rem .7rem;border-bottom:1px solid #e4eef0;white-space:nowrap}
.course-closure-scroll thead{background:#e3f2f3}.course-closure-scroll th:first-child{text-align:left}
.course-closure-mark{padding:1rem 1.25rem;background:#f0f6ff;border:1px solid #d3e3fc;border-radius:1rem;color:#173f4f}
.course-closure-mark p{font-size:.77rem;font-weight:750;margin:0 0 .25rem}.course-closure-mark strong{font-size:1.25rem}
.course-closure-mark--aula{background:#f0faf6;border-color:#c9eadd;color:#174a3c}
.course-closure-mark-progress{display:flex;flex-wrap:wrap;gap:.15rem .55rem;font-size:.78rem;margin-top:.25rem}
.course-closure-mark-progress span+span::before{content:"·";margin-inline-end:.55rem}
.course-closure-mark-progress button{text-decoration:underline;font-weight:650}
.course-closure-panel select,.course-closure-panel textarea{border:1px solid #b5cdd2;border-radius:.5rem;padding:.45rem .65rem;background:#fff;color:inherit}
.course-closure-panel header label{display:block;margin:.5rem 0;font-size:.86rem;font-weight:700}
.course-closure-panel form label{align-items:stretch;flex-direction:column}
.course-closure-panel textarea{width:100%;resize:vertical}
.course-closure-reason{white-space:pre-wrap;overflow-wrap:anywhere}

.closure-requests{min-width:0;padding:1.25rem;background:#fff;border:1px solid #dbe7ea;border-radius:1.25rem;color:#173f4f}
.closure-requests header{display:flex;justify-content:space-between;align-items:start;gap:1rem;flex-wrap:wrap}
.closure-requests h2{font-size:1.25rem;font-weight:800}
.closure-requests p{margin:.45rem 0;font-size:.9rem}
.closure-requests button,.closure-requests select{color:inherit;background:#fff;border:1px solid #b5cdd2;border-radius:.65rem;padding:.5rem .7rem;font-size:.875rem}
.closure-requests button{font-weight:700}
.closure-requests button:disabled{opacity:.55;cursor:not-allowed}
.closure-requests button[aria-pressed=true],.closure-requests-actions button:first-child{background:#17515d;color:#fff;border-color:#17515d}
.closure-requests-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:.65rem;margin:1rem 0}
.closure-requests-filters label{display:grid;min-width:0;gap:.3rem;font-size:.85rem;font-weight:700}
.closure-requests-filters select{width:100%;text-overflow:ellipsis}
.closure-requests-views,.closure-requests-actions{display:flex;gap:.4rem;flex-wrap:wrap}
.closure-requests-views{margin:.5rem 0 .8rem}
.closure-requests-scroll{overflow:auto;margin-top:.75rem;border:1px solid #dbe7ea;border-radius:.75rem}
.closure-requests table{width:100%;min-width:46rem;border-collapse:collapse;font-size:.84rem}
.closure-requests th,.closure-requests td{padding:.7rem;text-align:left;vertical-align:top;border-bottom:1px solid #e7eef0}
.closure-requests thead{background:#e8f3f4;color:#173f4f}
.closure-requests small{display:block;margin-top:.2rem;font-size:.78rem;font-weight:normal;color:#456170}
.closure-requests-reason{min-width:10rem;white-space:pre-wrap;overflow-wrap:anywhere}
.closure-requests-state{display:inline-block;border-radius:999px;padding:.15rem .55rem;font-weight:700}
.closure-requests-state.pending{background:#fff3d0;color:#704700}
.closure-requests-state.approved,.closure-requests-success{background:#e3f7ef;color:#16553f}
.closure-requests-state.rejected,.closure-requests-error{background:#fff0f1;color:#982837}
.closure-requests-error,.closure-requests-success{padding:.5rem .75rem;border-radius:.5rem}
