.student-topbar{display:flex;align-items:center;justify-content:space-between;background:white;border-bottom:1px solid var(--line);padding:16px 26px}
.student-grid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(450px,1.6fr);gap:20px}.student-grid .toolbar{margin:16px 0}.student-grid input,.student-grid select{width:auto;min-width:120px;flex:1}.student-grid .card{min-width:0}.student-grid input[type=checkbox]{flex:none;min-width:0}
.student-person-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0;gap:12px}.student-person-row strong{font-size:14px}.student-person-row button{padding:5px 9px;font-size:12px}.student-scroll{max-height:60vh;overflow:auto}.student-table-scroll{overflow:auto}.student-query{margin-top:18px}.student-query input,.student-query select{width:auto;max-width:180px}.student-summary{margin:18px 0;padding:16px;background:var(--accent-soft);border-radius:8px;font-weight:600}.student-section-title{margin:24px 0 12px}.student-status{border-radius:20px;padding:3px 10px;font-size:12px;background:#fffaeb;color:#b54708}.student-status.ok{background:#ecfdf3;color:#027a48}.student-stat-account{padding:16px 0;border-bottom:1px solid var(--line)}.student-stat-account summary{cursor:pointer;display:flex;align-items:center;gap:12px;flex-wrap:wrap;list-style:none}.student-stat-account summary::before{content:'▸';color:var(--accent)}.student-stat-account[open] summary::before{content:'▾'}.student-stat-account summary strong{font-size:16px}.student-stat-work{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.student-stat-work img{width:60px;height:80px;object-fit:cover;border-radius:7px}.student-stat-work h4{margin:0 0 5px;line-height:1.6}.student-stat-work button{font-size:13px}.student-empty{padding:28px;color:var(--muted);text-align:center}.student-assignment-info{margin-left:auto;color:var(--muted);font-size:12px}
.student-batch-form{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:16px 0;padding:14px 0}.student-batch-form textarea{min-height:118px}.student-batch-form .toolbar{margin-top:0}
.student-coverage-note{flex-basis:100%;font-size:13px;color:#b54708;overflow-wrap:anywhere;line-height:1.6}.student-coverage-actions{flex-wrap:wrap;margin:12px 0}.student-pending-link{color:#b54708;font-size:13px;padding:4px 8px}.student-stat-account summary>*{min-width:0;overflow-wrap:anywhere}
/* Legacy taxonomy controls remain mounted for the migrated event bindings. */
.monitor-page [hidden]{display:none!important}
.monitor-tabs{flex-wrap:wrap}
.student-intake #studentIntakeClass{width:min(260px,100%);flex:none}.student-intake #studentIntakeDate{width:170px}.student-intake #studentIntakeForm>.toolbar{display:flex;align-items:center;gap:18px}.student-intake #studentIntakeForm>.toolbar>label{display:flex;align-items:center;gap:10px;width:auto;flex:none}
.student-intake{padding:18px 0 26px;border-bottom:1px solid var(--line);margin-bottom:24px}.student-intake-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.student-intake-head h3{margin:0}.student-intake-head select{width:auto;max-width:100%}.student-intake label{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.student-intake textarea{min-height:145px;margin:12px 0}.student-intake-table{min-width:1000px;table-layout:fixed}.student-intake-table th:first-child{width:55px}.student-intake-table th:nth-child(2){width:110px}.student-intake-table th:nth-child(5){width:165px}.student-intake-table th:last-child{width:105px}.student-intake-table input:not([type=checkbox]),.student-intake-table select{width:100%;min-width:0;box-sizing:border-box;font-size:13px;margin:0}.student-intake-table .has-error{background:#fff4f2}.student-intake-note{font-size:12px;overflow-wrap:anywhere;line-height:1.6}.student-intake-error{color:#b42318;white-space:pre-wrap}.student-intake-candidate{display:flex;gap:8px;align-items:center;margin-top:6px;overflow-wrap:anywhere}.student-intake-candidate img{width:28px;height:28px;object-fit:cover;border-radius:4px}.student-intake-dialog{width:min(500px,calc(100vw - 32px));border:1px solid var(--line);border-radius:8px;padding:20px}.student-intake-dialog::backdrop{background:rgba(0,0,0,.3)}.student-intake-dialog form{display:grid;gap:16px}.student-intake-dialog label{display:grid;gap:7px}.student-account-start{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.student-account-start input{max-width:165px;min-width:0!important;font-size:13px}.student-account-start button{font-size:12px;padding:5px 8px}
@media(max-width:1000px){.student-grid{grid-template-columns:1fr}.student-query{align-items:stretch}.student-topbar{padding:12px}.student-stat-work{grid-template-columns:50px minmax(0,1fr)}.student-stat-work button{grid-column:2}}
.student-job-card{position:fixed;right:24px;top:50%;transform:translateY(-50%);z-index:200;width:min(350px,calc(100vw - 32px));background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:18px}.student-job-card h3{margin-bottom:12px}.student-job-card progress{width:100%;margin:12px 0}.student-job-card .toolbar{margin-top:12px}.student-job-card button{font-size:13px;padding:6px 10px}
