.operations-priority{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.priority-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #d9e7f1;border-radius:10px;background:linear-gradient(135deg,#f7fbff,#f4fbf8)}.priority-card i{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:11px;background:#e6f3ff;color:#1876b2;font-style:normal;font-weight:950}.priority-card.warning i{background:#fff2e8;color:#b45309}.priority-card.success i{background:#e7f8f1;color:#087b58}.priority-card b,.priority-card small{display:block}.priority-card small{margin-top:3px;color:var(--muted)}
.operation-form{display:grid;grid-template-columns:1fr 1.4fr auto;gap:12px;align-items:end;margin-bottom:16px;padding:16px;border:1px solid #cfe4f2;border-radius:10px;background:#f6fbff}.operation-form label{display:grid;gap:6px;color:#405b72;font-size:.8rem;font-weight:850}.operation-form input,.operation-toolbar input{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:white;font:inherit}.operation-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:15px 0}.operation-toolbar input{max-width:480px}.operation-toolbar span{color:var(--muted);font-weight:800}.operation-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.operation-card{padding:16px;border:1px solid var(--line);border-radius:10px;background:#f9fcff}.operation-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.operation-card h3{margin:0 0 4px}.operation-card p{margin:8px 0;color:var(--muted);line-height:1.6}.operation-code{display:inline-flex;padding:5px 9px;border-radius:7px;background:#e8f5ff;color:#176fae;font-family:Consolas,monospace;font-weight:900}.operation-card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.operation-drawer{margin-top:18px;padding:18px;border:1px solid #bcdff2;border-radius:10px;background:white;box-shadow:0 16px 35px rgba(38,92,133,.1)}
.report-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.report-metric{padding:15px;border:1px solid var(--line);border-radius:10px;background:#f7fbff}.report-metric span{color:var(--muted);font-weight:750}.report-metric strong{display:block;margin-top:6px;color:#277bb8;font-size:1.55rem}.report-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px}.report-layout>section,.report-export{padding:17px;border:1px solid var(--line);border-radius:10px;background:#f9fcff}.report-layout h3,.report-export h3{margin-bottom:12px}.report-bars,.operations-queue{display:grid;gap:10px}.report-bar{display:grid;grid-template-columns:75px 1fr 42px;align-items:center;gap:9px}.report-bar-track{height:10px;overflow:hidden;border-radius:999px;background:#e4edf5}.report-bar-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#568de8,#2fc5d1)}.operations-queue button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px;border:1px solid #dce7ef;border-radius:9px;background:white;color:#425d74;text-align:left;cursor:pointer}.operations-queue button:hover{border-color:#79bae8;background:#f1f8fe}.operations-queue b{font-size:1.12rem;color:#2376b2}.report-export{display:flex;align-items:center;gap:10px;margin-top:16px}.report-export>div{margin-right:auto}.report-export p{margin:4px 0 0;color:var(--muted)}
@media(max-width:980px){.operations-priority,.report-metrics{grid-template-columns:repeat(2,1fr)}.operation-card-grid,.report-layout{grid-template-columns:1fr}.operation-form{grid-template-columns:1fr 1fr}.operation-form button{grid-column:1/-1}.report-export{align-items:flex-start;flex-wrap:wrap}.report-export>div{flex-basis:100%}}
@media(max-width:650px){.operations-priority,.report-metrics,.operation-form{grid-template-columns:1fr}.operation-card-grid{grid-template-columns:1fr}.operation-toolbar{align-items:stretch;flex-direction:column}.report-export{flex-direction:column}.report-export .btn{width:100%}}

.class-action-modal{display:none;position:fixed;inset:0;z-index:1100;align-items:center;justify-content:center;padding:24px}
.class-action-modal.open{display:flex}
.class-action-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}
.class-action-panel{position:relative;width:min(980px,96vw);max-height:88vh;overflow:hidden;border:1px solid #d8e7f2;border-radius:16px;background:#fff;box-shadow:0 28px 80px rgba(15,23,42,.3)}
#classActionContent{max-height:88vh;overflow:auto;padding:24px;scrollbar-gutter:stable}
.class-action-close{position:absolute;top:10px;right:14px;z-index:3;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:var(--muted);font-size:2rem;line-height:1;box-shadow:0 2px 10px rgba(15,23,42,.08);cursor:pointer}
.class-action-heading{padding-right:44px;margin-bottom:18px}
.class-action-heading h2{margin:0 0 6px}
.class-action-heading p{margin:0;color:var(--muted);line-height:1.6}
.class-action-form{display:grid;gap:14px}
.class-action-form label{display:grid;gap:7px;color:#334155;font-weight:800}
.class-action-form input,.class-action-form textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit}
.class-action-form .form-grid-2{margin:0}
.class-action-problems{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:310px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:10px;background:#f8fbfe}
.class-action-problems .problem-option{min-width:0}
.class-action-status{min-height:22px;color:var(--muted);font-size:.85rem;font-weight:750}
.class-action-student-table small{display:block;margin-top:4px;color:var(--muted)}
body.modal-open{overflow:hidden}

@media(max-width:700px){.class-action-modal{padding:12px}.class-action-panel,#classActionContent{max-height:92vh}#classActionContent{padding:18px}.class-action-problems{grid-template-columns:1fr}.class-action-form .form-grid-2{grid-template-columns:1fr}}
