
body[data-active="homework"] .content { overflow-x: hidden; }
.homework-role-metrics { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; margin:18px 0; }
body[data-role="mentor"] .homework-role-metrics { grid-template-columns:repeat(4,minmax(0,1fr)); }
.homework-role-metric { min-height:112px; display:flex; align-items:center; gap:14px; padding:18px; border:1px solid #e1e9e3; border-radius:22px; background:linear-gradient(180deg,#fff,#f8fbf9); box-shadow:0 12px 30px rgba(27,58,37,.05); }
.homework-role-metric-icon { width:46px; height:46px; display:grid; place-items:center; border-radius:15px; background:#eef7f0; color:#19823b; font-weight:900; font-size:20px; flex:0 0 auto; }
.metric-overdue .homework-role-metric-icon { background:#fff0ef; color:#d23b31; }
.metric-revision .homework-role-metric-icon { background:#f3efff; color:#7448db; }
.metric-accepted .homework-role-metric-icon { background:#eaf8ee; color:#188642; }
.metric-unassigned .homework-role-metric-icon { background:#f1f4f8; color:#47617a; }
.homework-role-metric small { display:block; color:#758078; font-weight:700; }
.homework-role-metric strong { display:block; margin:3px 0; font-size:30px; line-height:1; color:#172119; }
.homework-role-metric p { margin:0; color:#839088; font-size:12px; }
.homework-role-tabs { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:14px; }
.homework-role-tabs button { min-height:42px; padding:10px 16px; border-radius:13px; font-weight:750; }
.homework-role-tabs button span { display:inline-grid; place-items:center; min-width:22px; height:22px; margin-left:8px; padding:0 6px; border-radius:999px; background:rgba(0,0,0,.06); font-size:12px; }
.homework-role-tabs button.active span { background:rgba(255,255,255,.2); }
.homework-role-layout { display:block; }
.homework-role-main { min-width:0; }
.homework-role-filters { display:grid; grid-template-columns:repeat(4,minmax(140px,1fr)) minmax(220px,1.4fr) auto; gap:10px; margin-bottom:14px; }
.homework-role-filters select,.homework-role-filters input { min-height:46px; border-radius:14px; }
.homework-queue-panel { padding:20px; border-radius:24px; overflow:hidden; }
.homework-queue-table { min-width:0; }
.homework-queue-row { display:grid; grid-template-columns:minmax(150px,1.12fr) minmax(155px,1.05fr) minmax(185px,1.3fr) minmax(130px,.92fr) minmax(128px,.82fr) minmax(82px,.54fr) minmax(100px,.7fr) minmax(92px,.62fr); align-items:center; gap:12px; padding:14px 12px; border-bottom:1px solid #e6ece7; transition:background .16s ease; cursor:pointer; }
.homework-queue-row:not(.homework-queue-header):hover { background:#f7fbf8; }
.homework-queue-header { padding-top:8px; color:#728078; text-transform:uppercase; letter-spacing:.04em; font-size:11px; font-weight:800; cursor:default; }
.homework-queue-row > div { min-width:0; }
.homework-queue-row strong,.homework-queue-row small { display:block; min-width:0; white-space:normal; overflow-wrap:anywhere; word-break:normal; }
.homework-queue-row small { margin-top:4px; color:#7a877f; font-size:12px; }
.homework-queue-student { display:flex; align-items:center; gap:10px; }
.homework-queue-avatar,.homework-side-avatar { width:36px; height:36px; display:grid; place-items:center; border-radius:50%; background:#e6f3e9; color:#16783a; font-weight:850; flex:0 0 auto; }
.homework-wait-chip,.homework-status-chip { display:inline-flex; align-items:center; min-height:28px; padding:5px 9px; border-radius:9px; font-size:12px; font-weight:800; }
.homework-wait-chip.is-fresh { background:#ebf7ee; color:#17813c; }
.homework-wait-chip.is-warning { background:#fff4df; color:#c47a0c; }
.homework-wait-chip.is-overdue { background:#ffeded; color:#ca342d; }
.homework-status-chip.status-submitted,.homework-status-chip.status-in_review { background:#fff3e2; color:#bb6b05; }
.homework-status-chip.status-revision { background:#f1edff; color:#7245d0; }
.homework-status-chip.status-accepted { background:#eaf7ed; color:#1a7f3d; }
.homework-row-actions .btn { min-height:36px; padding:8px 12px; border-radius:11px; }
.homework-side-panel { padding:18px; border-radius:22px; }
.homework-admin-insights { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:18px; align-items:start; }
.homework-queue-date strong,.homework-queue-date small,.homework-queue-wait,.homework-queue-status,.homework-row-actions { white-space:nowrap; }
.homework-queue-date strong,.homework-queue-date small { font-variant-numeric:tabular-nums; }
.homework-row-actions { justify-self:end; }
.homework-row-actions .btn { width:100%; }

.homework-alert-row,.homework-side-row { width:100%; display:flex; align-items:center; gap:10px; padding:12px 0; border:0; border-bottom:1px solid #e7ece8; background:transparent; text-align:left; cursor:pointer; }
.homework-alert-row:last-child,.homework-side-row:last-child { border-bottom:0; }
.homework-alert-row > span:first-child { width:34px; height:34px; display:grid; place-items:center; border-radius:11px; background:#f1f7f2; }
.homework-alert-row div,.homework-side-row div { min-width:0; flex:1; }
.homework-alert-row strong,.homework-side-row strong,.homework-alert-row small,.homework-side-row small { display:block; }
.homework-alert-row small,.homework-side-row small { margin-top:3px; color:#7e8a82; font-size:12px; }
.homework-side-row b { color:#1a7137; }
.homework-side-row.active { color:#16783a; }
.homework-pagination { display:flex; align-items:center; justify-content:space-between; gap:14px; padding-top:18px; color:#748078; font-size:13px; }
.homework-pagination-pages { display:flex; align-items:center; gap:6px; }
.homework-pagination-pages button { min-width:34px; height:34px; border-radius:10px; border:1px solid #dfe7e1; background:#fff; }
.homework-pagination-pages button.active { background:#19783b; color:#fff; border-color:#19783b; }
.homework-pagination label { display:flex; align-items:center; gap:8px; }
.homework-pagination select { min-height:36px; border-radius:10px; }
.homework-page-gap { padding:0 4px; }
.homework-review-overlay { align-items:stretch; justify-content:flex-end; }
.homework-review-drawer { width:min(1120px,92vw); max-width:none; height:100vh; border-radius:28px 0 0 28px; overflow:auto; }
.homework-review-detail { min-height:100%; padding:28px; border-radius:28px 0 0 28px; }
.homework-review-head { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; padding-bottom:18px; border-bottom:1px solid #e4ebe6; }
.homework-review-head h2 { margin:4px 0 8px; font-size:32px; }
.homework-review-overline { margin:0; color:#7b8980; font-size:12px; font-weight:850; letter-spacing:.15em; text-transform:uppercase; }
.review-facts-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:18px 0; }
.review-facts-grid span { min-height:72px; padding:13px 15px; border:1px solid #e2e9e4; border-radius:16px; background:#fafcfb; }
.review-facts-grid b { display:block; margin-bottom:6px; color:#7b8880; font-size:12px; }
.homework-review-columns { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); gap:18px; align-items:start; }
.homework-review-work,.homework-review-form { display:grid; gap:14px; }
.student-work-summary,.student-work-files,.review-history,.homework-review-form { padding:18px; border:1px solid #e2e9e4; border-radius:18px; background:#fff; }
.homework-review-form { position:sticky; top:0; }
.homework-review-form textarea { min-height:180px; }
.homework-review-actions { display:grid; gap:10px; }
.homework-review-actions .btn { width:100%; min-height:44px; }
.student-homework-list { display:grid; gap:14px; }
.student-homework-card { border-radius:22px; }
body[data-theme="dark"] .homework-role-metric,body[data-theme="dark"] .homework-queue-panel,body[data-theme="dark"] .homework-side-panel,body[data-theme="dark"] .homework-review-detail,body[data-theme="dark"] .student-work-summary,body[data-theme="dark"] .student-work-files,body[data-theme="dark"] .review-history,body[data-theme="dark"] .homework-review-form { background:#142019; border-color:#26342b; box-shadow:none; }
body[data-theme="dark"] .homework-queue-row { border-color:#26342b; }
body[data-theme="dark"] .homework-queue-row:not(.homework-queue-header):hover { background:#18261d; }
body[data-theme="dark"] .review-facts-grid span,body[data-theme="dark"] .homework-pagination-pages button { background:#18261d; border-color:#2a3a2f; }
@media (max-width:1380px) {
  .homework-role-filters { grid-template-columns:repeat(3,minmax(140px,1fr)); }
  .homework-queue-row { grid-template-columns:minmax(140px,1.08fr) minmax(145px,1fr) minmax(160px,1.2fr) minmax(120px,.88fr) minmax(122px,.8fr) minmax(78px,.5fr) minmax(96px,.66fr) minmax(86px,.56fr); gap:9px; font-size:13px; }
}
@media (max-width:1120px) {
  .homework-role-metrics,body[data-role="mentor"] .homework-role-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .homework-admin-insights { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .homework-role-filters { grid-template-columns:repeat(2,minmax(140px,1fr)); }
  .homework-queue-panel { overflow-x:auto; }
  .homework-queue-table { min-width:1040px; }
}
@media (max-width:760px) {
  .homework-role-metrics,body[data-role="mentor"] .homework-role-metrics,.homework-admin-insights,.review-facts-grid,.homework-review-columns { grid-template-columns:1fr; }
  .homework-role-filters { grid-template-columns:1fr; }
  .homework-queue-panel { overflow:visible; }
  .homework-queue-table { min-width:0; }
  .homework-queue-header { display:none; }
  .homework-queue-row:not(.homework-queue-header) { grid-template-columns:1fr 1fr; gap:14px 18px; margin-bottom:12px; padding:16px; border:1px solid #e2e9e4; border-radius:18px; }
  .homework-queue-row:not(.homework-queue-header) > div { display:block; }
  .homework-queue-row:not(.homework-queue-header) > div::before { content:attr(data-label); display:block; margin-bottom:5px; color:#7b8880; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
  .homework-queue-row:not(.homework-queue-header) .homework-queue-student { grid-column:1 / -1; display:flex; }
  .homework-row-actions { grid-column:1 / -1; justify-self:stretch; }
  .homework-pagination { align-items:flex-start; flex-direction:column; }
  .homework-review-drawer { width:100vw; border-radius:0; }
  .homework-review-detail { padding:18px; border-radius:0; }
  .homework-review-head { flex-direction:column; }
  .homework-review-form { position:static; }
}
