:root{--ink:#132321;--muted:#5d6865;--green:#123d40;--deep:#071827;--gold:#f0a13a;--paper:#f8f6f0;--line:#ddd8cd;--soft:#eef5f2;--danger:#8f3434;--white:#fff}
*{box-sizing:border-box}body{margin:0;font:14px/1.5 "Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper)}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.skip{position:fixed;left:12px;top:12px;transform:translateY(calc(-100% - 24px));background:white;padding:12px;z-index:10}.skip:focus{transform:none}
.sidebar{width:210px;position:fixed;inset:0 auto 0 0;background:var(--green);color:#fff;display:flex;flex-direction:column;padding:30px 18px;z-index:2}.brand{display:block;margin:0 13px 35px}.brand img{width:142px;height:53px;object-fit:contain}.workspace-label{color:#b7cbc8;font-size:10px;letter-spacing:1.8px;margin:0 13px 16px}nav{display:grid;gap:6px}nav a{display:flex;align-items:center;gap:14px;padding:12px 14px;color:#d8e3df;border-radius:5px}nav a span{font-size:23px;line-height:1}nav a:hover{background:#ffffff0d}nav a[aria-current=page]{background:#ffffff13;color:white;box-shadow:inset 3px 0 var(--gold)}.sidebar-bottom{margin-top:auto;display:flex;align-items:center;gap:10px;padding:20px 8px 0;border-top:1px solid #ffffff26;font-size:12px}.sidebar-bottom small{display:block;color:#adc3bf;font-size:11px}.avatar{width:34px;height:34px;border-radius:50%;background:#e3ebe5;color:var(--green);font-weight:600;display:inline-flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0}.sidebar-bottom .avatar{background:#ffffff17;color:#f6dca5}
.workspace{margin-left:210px;min-height:100vh}.topbar{height:65px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 42px;background:#fff9;color:var(--muted);font-size:12px}.demo{display:flex;align-items:center;gap:7px;font-size:11px}.demo i{height:6px;width:6px;background:#ac6c17;border-radius:50%}main{max-width:1450px;padding:38px 42px 55px;margin:auto;outline:none;min-height:calc(100vh - 115px)}footer{font-size:11px;color:var(--muted);padding:16px 42px;border-top:1px solid var(--line)}h1,h2,h3,p{margin:0}h1{font-size:32px;line-height:1.2;letter-spacing:-1px;font-weight:550}h2{font-size:19px;font-weight:600;letter-spacing:-.25px}h3{font-size:15px;font-weight:600}.sub{color:var(--muted);margin-top:9px;font-size:13px}.page-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:28px}.eyebrow{text-transform:uppercase;letter-spacing:1.4px;font-size:10px;color:var(--muted);margin-bottom:8px}.btn{border:1px solid var(--line);background:white;border-radius:4px;color:var(--ink);padding:10px 16px;min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:600}.btn:hover{background:var(--soft);border-color:#9cac9f}.btn.primary{background:var(--green);border-color:var(--green);color:white}.btn.primary:hover{background:#1c5052}.btn.small{font-size:12px;padding:7px 12px;min-height:36px}.text-btn{background:none;border:0;color:var(--green);padding:8px 0;font-size:13px;font-weight:600;min-height:40px}.back{display:inline-block;font-size:12px;color:var(--muted);margin-bottom:22px}.back:hover{color:var(--green)}.toolbar{display:flex;align-items:center;gap:15px;padding-bottom:18px;flex-wrap:wrap}.search{position:relative;flex:0 1 320px}.search span{position:absolute;left:13px;top:9px;font-size:20px;color:var(--muted)}.search input{padding:11px 14px 11px 39px;width:100%;height:43px;border:1px solid var(--line);border-radius:4px;background:white}select{padding:10px 30px 10px 12px;border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink);height:43px}.count{margin-left:auto;font-size:12px;color:var(--muted)}.segmented{display:flex;gap:5px;flex-wrap:wrap}.segmented button{border:1px solid transparent;border-radius:4px;padding:8px 12px;min-height:38px;background:none;color:var(--muted);font-size:12px}.segmented button.active{border-color:var(--line);background:#fff;color:var(--ink)}.segmented button:hover{background:white}
.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);font-weight:600;padding:13px 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap}td{padding:19px 14px;border-bottom:1px solid #e7e3da;vertical-align:middle}th:first-child,td:first-child{padding-left:0}th:last-child,td:last-child{padding-right:0}tbody tr:hover{background:#ffffff8c}.person{display:flex;align-items:center;gap:12px}.person-name{font-weight:600;font-size:14px}.person-name:hover{text-decoration:underline;text-underline-offset:4px}.person small,.secondary{color:var(--muted);font-size:12px;display:block;margin-top:3px}.person .avatar{width:38px;height:38px;background:#e9e7dc;font-size:12px}.score{font-size:17px;font-weight:600;letter-spacing:-.4px}.score small{font-size:12px;font-weight:400;color:var(--muted);letter-spacing:0}.tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;border-radius:3px;padding:3px 7px;white-space:nowrap;background:#eaf1ec;color:#315843}.tag.warm{background:#f6ecda;color:#825c20}.tag.bad{background:#f6e9e5;color:var(--danger)}.tag.neutral{background:#eae8e2;color:#666c68}.arrow{font-size:18px;color:var(--muted);min-width:36px;min-height:40px;display:inline-flex;align-items:center;justify-content:center}.meter{width:94px;height:3px;margin-top:7px;background:#e1e5df}.meter span{height:3px;display:block;background:#668177}.empty{padding:60px 20px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.empty h2{margin-bottom:8px}.empty p{color:var(--muted)}.tabs{display:flex;gap:26px;border-bottom:1px solid var(--line);margin-bottom:25px;overflow:auto}.tabs a{padding:13px 0;font-size:13px;color:var(--muted);white-space:nowrap;border-bottom:2px solid transparent}.tabs a.active{color:var(--green);border-bottom-color:var(--green);font-weight:600}.inline-stats{display:flex;gap:36px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:0 0 27px}.stat strong{font-size:25px;font-weight:550;line-height:1.1}.stat strong small{font-size:13px;font-weight:400;color:var(--muted)}.stat span{font-size:11px;color:var(--muted);display:block;margin-top:5px}.section-heading{margin:26px 0 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.activity{list-style:none;padding:0;margin:0}.activity li{display:flex;justify-content:space-between;gap:20px;padding:19px 0;border-top:1px solid var(--line)}.activity a{font-weight:600}.activity a:hover{text-decoration:underline}.activity .right{text-align:right;flex-shrink:0}.quiet-note{font-size:12px;color:var(--muted);line-height:1.7;margin-top:19px;max-width:760px}.question-layout{display:grid;grid-template-columns:minmax(260px,1fr) minmax(310px,.85fr);gap:30px;align-items:start}.question-table td{padding-top:12px;padding-bottom:12px}.question-table tr.selected{background:var(--soft)}.question-table button{border:0;background:none;color:var(--green);font-weight:600;min-height:35px;padding:4px 8px 4px 0}.detail{background:#fff;border-left:2px solid var(--green);padding:24px;position:sticky;top:20px}.detail-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.detail p{line-height:1.75}.placeholder{padding:27px 0;margin:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.placeholder h3{margin-bottom:8px}.placeholder p{font-size:13px;color:var(--muted)}.answer-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.answer-pair span{font-size:11px;color:var(--muted);display:block}.answer-pair strong{font-size:26px;font-weight:500}.detail details{border-top:1px solid var(--line);margin-top:22px;padding-top:15px;font-size:12px;color:var(--muted)}summary{cursor:pointer}details p{margin-top:12px;overflow-wrap:anywhere}.detail-nav{display:flex;justify-content:space-between;margin-top:22px}.review-sheet{max-width:870px}.review-section{border-top:1px solid var(--line);padding:22px 0}.review-section h2{margin-bottom:12px}.review-section ul{padding-left:20px;line-height:1.9}.review-section p{line-height:1.8}.mobile-back{display:none}.access-row{display:flex;justify-content:space-between;padding:18px 0;border-top:1px solid var(--line);gap:20px}.mono{font-family:Consolas,monospace;letter-spacing:1px}dialog{border:1px solid var(--line);padding:30px;border-radius:7px;width:min(500px,calc(100% - 30px));max-height:90vh;color:var(--ink);box-shadow:0 20px 70px #07182730}dialog::backdrop{background:#07182766;backdrop-filter:blur(2px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.close{border:0;background:none;font-size:23px;min-width:38px;min-height:38px;color:var(--muted)}form label{display:block;font-size:12px;font-weight:600;margin:19px 0 6px}form input,form select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:4px;height:44px;background:white}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.actions{display:flex;justify-content:flex-end;gap:9px;margin-top:25px}.summary-box{background:var(--soft);padding:18px;margin-top:20px;line-height:1.8}.code-box{font:600 20px Consolas,monospace;letter-spacing:2px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:20px 0;overflow-wrap:anywhere}.error{color:var(--danger);font-size:12px;margin-top:10px}#toast{position:fixed;bottom:25px;left:calc(50% + 105px);transform:translateX(-50%);background:var(--green);color:white;padding:12px 22px;border-radius:4px;box-shadow:0 5px 18px #0002;z-index:10;max-width:90vw;font-size:13px}#toast:empty{display:none}
@media(min-width:1600px){main{padding-top:48px}.topbar{padding-left:55px}}
@media(max-width:1050px){.sidebar{width:175px;padding:28px 12px}.brand{margin-left:10px}.brand img{width:130px}.workspace{margin-left:175px}main{padding:28px 25px}.topbar{padding:0 25px}.workspace-label{font-size:9px}.question-layout{gap:20px;grid-template-columns:minmax(235px,1fr) minmax(270px,1fr)}.hide-tablet{display:none}.person small{max-width:190px;overflow-wrap:anywhere}#toast{left:calc(50% + 87px)}}
@media(max-width:720px){.sidebar{position:static;width:100%;padding:12px 19px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.brand{margin:0}.brand img{width:106px;height:38px}.workspace-label,.sidebar-bottom{display:none}nav{display:flex;gap:4px}nav a{font-size:12px;padding:10px;gap:6px}nav a span{font-size:18px}.workspace{margin:0}.topbar{height:41px;padding:0 20px;font-size:11px}.demo{font-size:9px}.demo i{display:none}main{padding:27px 20px 35px;min-height:calc(100vh - 154px)}footer{padding:14px 20px;font-size:10px}h1{font-size:27px}.page-head{margin-bottom:22px;gap:12px}.page-head .btn{padding:9px 11px;font-size:12px}.toolbar{gap:10px}.search{flex-basis:100%}.toolbar select{max-width:100%}.count{font-size:11px}.students-table,.students-table tbody,.students-table tr,.students-table td{display:block}.students-table thead{display:none}.students-table tr{display:grid;grid-template-columns:1fr auto;gap:9px 14px;padding:18px 0;border-top:1px solid var(--line)}.students-table td{border:0;padding:0}.students-table td:first-child{grid-column:1 / -1}.students-table .student-arrow,.students-table .hide-mobile{display:none}.students-table td[data-label]::before{content:attr(data-label);font-size:10px;color:var(--muted);display:block;margin-bottom:4px}.students-table .person small{max-width:100%;font-size:11px}.students-table .meter{display:none}.score{font-size:15px}.students-table .secondary{font-size:11px}.tabs{gap:22px;margin-bottom:20px}.inline-stats{gap:20px;padding:17px 0}.stat strong{font-size:23px}.stat span{font-size:10px}.sub{font-size:12px;overflow-wrap:anywhere}.back{margin-bottom:18px}.question-layout{display:block}.detail{position:static;margin-top:10px}.question-layout.has-selection .table-wrap{display:none}.question-layout:not(.has-selection) .detail{display:none}.mobile-back{display:block;margin-bottom:15px}.question-table .hide-mobile{display:none}.answer-pair{margin-top:15px}.activity li{gap:10px;font-size:12px}.activity .secondary{font-size:11px}.voucher-table th,.voucher-table td{padding:14px 10px}.voucher-table th:first-child,.voucher-table td:first-child{padding-left:0}.voucher-table .hide-mobile{display:none}.voucher-table td{font-size:12px}.voucher-table .btn.small{padding:6px 9px}.section-heading{margin-top:22px}.access-row{font-size:12px}.question-layout .detail{padding:19px}.tag{font-size:10px}dialog{padding:23px}.segmented{gap:2px}.segmented button{padding:8px 9px}#toast{left:50%}.review-section p,.review-section ul{font-size:13px}}
@media(prefers-reduced-motion:no-preference){.btn,nav a{transition:background .12s ease}}

.head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.pack-dialog{width:min(570px,calc(100% - 30px))}.pack-selection{max-height:280px;overflow:auto;margin-top:12px;border-top:1px solid var(--line)}.pack-selection th{position:sticky;top:0;background:var(--paper)}.pack-selection td{padding:9px 12px}.pack-selection input,.check-label input{width:18px;height:18px;accent-color:var(--green)}.check-label{display:flex;align-items:center;gap:8px;margin-top:18px;font-size:12px}.print-pack{--pgreen:#012b28;--pgold:#ebb42c;--pcream:#f8f3e7;--pline:#b9cbc7;--pmuted:#46625f;font-family:Calibri,Arial,sans-serif;color:#172321;margin-top:25px}.pack-page{background:white;padding:16mm;max-width:210mm;min-height:267mm;margin:20px auto;box-shadow:0 1px 8px #0001;display:flex;flex-direction:column}.pack-masthead{background:var(--pgreen);color:var(--pgold);padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.pack-masthead img{width:145px;max-width:45%;height:55px;object-fit:contain}.pack-masthead span{font-size:16px}.pack-page h1{font:23px Aboreto,Georgia,serif;color:var(--pgreen);letter-spacing:0;margin:12px 0}.pack-page h2{font-size:15px;color:var(--pgreen);margin:20px 0 12px}.pack-meta{color:var(--pmuted);font-size:12px;line-height:1.7;margin:10px 0 20px}.pack-summary{display:flex;gap:14px;align-items:baseline;padding:16px;background:var(--pcream);margin:8px 0}.pack-summary strong{font-size:21px;color:var(--pgreen)}.pack-summary span{font-size:11px}.pack-page th{background:var(--pgreen);color:var(--pgold);padding:8px 12px!important;border:0}.pack-page td{padding:7px 12px!important;border-color:var(--pline);font-size:12px}.pack-page tr:nth-child(even){background:#f2f7f6}.pack-disclaimer{font-size:12px;color:var(--pmuted);margin:22px 0;line-height:1.7}.pack-footer{border-top:1px solid var(--pgold);font-size:9px;color:var(--pmuted);padding-top:10px;margin-top:auto;display:flex;justify-content:space-between;gap:12px}.pack-running{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--pgold);padding-bottom:12px;font-size:11px;color:var(--pmuted);margin-bottom:24px}.pack-running strong{font-family:Aboreto,Georgia,serif;color:var(--pgreen)}.pack-placeholder{margin:12px 0 25px;padding:24px;background:#f2f7f6;line-height:1.8;font-size:13px}.pack-placeholder h2{margin-top:0}.pack-notes{height:90px;border-top:1px solid var(--pline);border-bottom:1px solid var(--pline);margin:4px 0 25px}.pack-controls .back{margin-bottom:14px}
@media(max-width:720px){.head-actions{justify-content:flex-start}.page-head:has(.head-actions){flex-wrap:wrap}.pack-controls .page-head{flex-wrap:wrap}.pack-page{padding:20px;min-height:750px;margin:16px 0}.pack-summary{flex-wrap:wrap;gap:8px 12px}.pack-masthead{padding:12px;gap:10px}.pack-masthead span{font-size:13px}.pack-footer{flex-direction:column;font-size:9px}.pack-running{flex-wrap:wrap}.pack-page h1{font-size:20px}.pack-placeholder{padding:16px}.pack-selection td{font-size:11px}}
@page{size:A4;margin:12mm}
@media print{
 html,body{margin:0!important;background:white!important}.sidebar,.topbar,body>.skip,.workspace>footer,.pack-controls,dialog,#toast{display:none!important}.workspace{margin:0!important}main{max-width:none!important;min-height:0!important;padding:0!important}.print-pack{margin:0}.pack-page{box-shadow:none;margin:0;padding:3mm;min-height:267mm;max-width:none;break-after:page;page-break-after:always}.pack-page:last-child{break-after:auto;page-break-after:auto}.pack-page *{print-color-adjust:exact;-webkit-print-color-adjust:exact}.pack-page table{break-inside:avoid}.pack-page h1{font-size:23px}.pack-footer{flex-direction:row}.pack-summary{flex-wrap:nowrap}.pack-masthead span{font-size:16px}.pack-masthead{padding:18px 22px}.pack-placeholder{padding:24px}.pack-running{flex-wrap:nowrap}
}

[hidden]{display:none!important}
.login{max-width:420px;margin:9vh auto}.login .google{margin-top:26px}.login details{margin-top:30px;color:var(--muted);font-size:12px}.login form button{margin-top:20px}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:22px;font-size:12px}.coverage{margin:0 0 23px}.record{margin-top:25px;color:var(--muted);font-size:12px}.record p{overflow-wrap:anywhere}.history-table{min-width:580px}.question-table{min-width:380px}.pack-selection table{min-width:0}.topbar .text-btn{font-size:12px}.login .quiet-note{overflow-wrap:anywhere}@media(max-width:720px){.login{margin:5vh auto}.sidebar nav a{padding:10px}.pagination{justify-content:space-between;gap:8px}.person-name{overflow-wrap:anywhere}}@media(max-width:420px){.question-table{min-width:0;font-size:11px}.question-table th{font-size:9px;letter-spacing:0}.question-table th,.question-table td{padding:10px 5px}.question-table th:first-child,.question-table td:first-child{padding-left:0}.question-table th:last-child,.question-table td:last-child{padding-right:0}.question-table td{white-space:nowrap}.page-head:has(#review){flex-wrap:wrap}}
.voucher-mode{font-size:12px;color:#765013;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:22px}.voucher-summary{line-height:1.85;margin-top:18px}.voucher-actions{white-space:nowrap}.voucher-actions .text-btn{margin-right:13px}.code-label{display:block;margin-top:20px;font-size:12px}#voucher-code{width:100%;margin-top:8px;padding:10px;font:14px/1.8 Consolas,monospace;resize:none;border:1px solid var(--line);border-radius:4px}#voucher-form .check-label{display:flex;font-weight:400}#voucher-form .check-label input{width:18px;height:18px}#voucher-form .quiet-note{margin-top:10px}#voucher-form input[type=date]{min-width:0}#voucher-form .form-row>div{min-width:0}@media(max-width:720px){.voucher-table,.voucher-table tbody,.voucher-table tr,.voucher-table td{display:block}.voucher-table thead{display:none}.voucher-table tr{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:17px 0;border-top:1px solid var(--line)}.voucher-table td{border:0;padding:0!important}.voucher-table td:first-child{grid-column:1/-1;overflow-wrap:anywhere}.voucher-table td[data-label]::before{content:attr(data-label);display:block;font-size:10px;color:var(--muted)}.voucher-table .voucher-actions{grid-column:1/-1}}@media(max-width:380px){#voucher-form .form-row{grid-template-columns:1fr;gap:0}.sidebar{padding:12px}.sidebar nav a{padding:9px 7px}}

/* Tutor review feedback, 14 September 2026. Text labels remain alongside colour. */
tr[data-href]{cursor:pointer}tr[data-href]:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}tr[data-href]:hover{background:#e9f0eb}
.result-good,.time-fast{color:#215e3b;font-weight:650}.result-bad,.time-slow{color:#a12c2c;font-weight:650}
.students-table th{letter-spacing:.6px;white-space:normal}.students-table td{padding-left:10px;padding-right:10px}.students-table td:first-child{padding-left:0}.students-table td:last-child{padding-right:0}.students-table .person small{overflow-wrap:anywhere}.students-table td:last-child{min-width:155px}
@media(min-width:721px) and (max-width:1150px){.students-table{min-width:860px}}
@media(max-width:720px){.students-table tr{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.students-table td{padding:0;min-width:0}.students-table td:last-child{grid-column:1/-1;min-width:0}}

.module-choice{display:block;font-size:12px;font-weight:600;margin-top:17px}.module-choice select{display:block;width:100%;margin-top:5px;font-weight:400}.page-head:has(#whole-review){flex-wrap:wrap}

/* Compact first-answer history; details remain accessible on narrow screens. */
#student-practice{margin-top:36px}.practice-filters{align-items:end;flex-wrap:wrap;gap:16px}.practice-filters label{font-size:12px;display:grid;gap:5px}.practice-filters select{max-width:100%}#practice-refresh{font-size:24px;min-width:44px;min-height:44px}.practice-summary{font-size:13px;line-height:1.8;margin:18px 0}.practice-table{width:100%;table-layout:fixed}.practice-table th:first-child{width:32%}.practice-table td{overflow-wrap:anywhere;vertical-align:top}.practice-version{font-size:10px;color:var(--muted);margin-top:7px}.practice-version span{display:block;overflow-wrap:anywhere;margin-top:5px}.practice-note{margin-top:18px}.practice-table .secondary{font-size:11px}
@media(max-width:720px){.practice-table,.practice-table tbody,.practice-table tr,.practice-table td{display:block}.practice-table thead{display:none}.practice-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding:16px 0;border-top:1px solid var(--line)}.practice-table td{padding:0!important;border:0;min-width:0}.practice-table td:first-child{grid-column:1/-1}.practice-table td[data-label]::before{content:attr(data-label);display:block;font-size:10px;font-weight:400;color:var(--muted)}.practice-filters{gap:10px}.practice-filters label{max-width:100%}}

.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.free-review-filters{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}.free-review-filters label{display:grid;gap:4px;font-size:12px}.free-review-filters select{max-width:100%}.free-review-row{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.free-review-row input{margin-top:3px}.free-review-row small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.free-review-row label{flex:1;min-width:0}.free-review-selection{max-height:42vh;overflow:auto;padding-right:8px}.free-review-row:has(input:disabled){opacity:.65}.free-review-title{display:flex;gap:8px;justify-content:space-between;flex-wrap:wrap}@media(max-width:420px){.free-review-filters{display:grid;grid-template-columns:1fr}.free-review-filters select{width:100%}}
dialog.pack-dialog[open]:has(.free-review-selection){display:flex;flex-direction:column;max-height:calc(100dvh - 32px);overflow:hidden}dialog:has(.free-review-selection)>:not(.free-review-selection){flex-shrink:0}.free-review-selection{flex:1 1 auto;min-height:80px}

.session-status{font-size:.8rem;color:var(--muted,#52615c);margin-left:auto;margin-right:1rem}.session-status:empty{display:none}

/* Keep records in place during navigation; loading feedback stays in the toolbar. */
#session-status-slot{display:flex;align-items:center;gap:8px;margin-left:auto}.navigation-status{font-size:12px;color:var(--muted)}.navigation-status:empty{display:none}.records-refresh{font-size:24px;line-height:1;min-width:36px;min-height:36px}.records-refresh:disabled{opacity:.45}#main[aria-busy="true"]{cursor:progress}

/* Prominent destination feedback, with no new card around the page. */
.navigation-status:not(:empty){display:flex;align-items:center;gap:12px;min-height:54px;font-size:17px;font-weight:600;color:var(--ink,#073b33);max-width:1332px;margin:0 auto;padding:12px 42px}.navigation-status:not(:empty)::before{content:"";width:20px;height:20px;flex:none;border:3px solid #dfd9c9;border-top-color:#b48625;border-radius:50%;animation:tutor-loading .8s linear infinite}#main[aria-busy="true"]{opacity:.55}@keyframes tutor-loading{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.navigation-status::before{animation:none!important}}

@media(max-width:720px){.navigation-status:not(:empty){padding:12px 18px;font-size:16px}}

#student-progress-check{margin-top:36px;border-top:1px solid var(--line);padding-top:12px}.progress-check-table{max-width:720px}.progress-check-table th:first-child{width:54%}.progress-check-table td{padding-top:11px;padding-bottom:11px}.progress-check-reflection{max-width:720px;margin:18px 0;line-height:1.55}.progress-check-reflection p{margin:4px 0 14px;white-space:pre-wrap;overflow-wrap:anywhere}.progress-check-reflection strong{font-size:13px}.progress-check-table th[scope=row]{font-size:12px;letter-spacing:0;text-transform:none;white-space:normal;color:var(--ink)}@media(max-width:720px){.progress-check-table th,.progress-check-table td{padding:9px 5px;font-size:11px}}

.agency-mocks{max-width:1100px}.agency-mock-table{width:100%;min-width:0;table-layout:fixed}.agency-mock-table th:first-child{width:45%}.agency-mock-table th:last-child{width:20%}.agency-mock-table td{overflow-wrap:anywhere}.agency-mock-action{text-align:right}.agency-mock-table .secondary{display:block;font-size:11px;margin-top:5px}.agency-allocation{padding:22px;border:1px solid var(--line);border-radius:6px;background:#f7f4ed;margin:18px 0 30px}.agency-allocation h2{margin-top:0}.agency-student-picker{max-height:320px;overflow:auto;background:white}.agency-student-picker label{display:flex;align-items:flex-start;gap:10px;min-width:0}.agency-student-picker span{min-width:0;overflow-wrap:anywhere}.agency-purchase-fields{display:grid;grid-template-columns:minmax(160px,1fr) minmax(100px,150px) auto;gap:18px;align-items:end}.agency-purchase-fields label{display:flex;flex-direction:column;gap:8px;margin:0;min-width:0}.agency-purchase-fields input,.agency-purchase-fields select{width:100%;min-width:0}.agency-purchase-fields button{margin:0}.agency-student-picker input{flex-shrink:0}.agency-allocation [role=status]{min-height:1.4em}
@media(max-width:600px){.agency-mock-table thead{display:none}.agency-mock-table tbody{display:block}.agency-mock-table tr{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-bottom:1px solid var(--line);padding:16px 0}.agency-mock-table td{display:block;border:0;padding:0!important}.agency-mock-table td:first-child,.agency-mock-action{grid-column:1/-1}.agency-mock-table td[data-label]::before{content:attr(data-label) ": ";font-weight:500;color:var(--muted)}.agency-mock-action{text-align:left}.agency-purchase-fields{grid-template-columns:1fr 1fr;gap:14px}.agency-purchase-fields button{grid-column:1/-1;justify-self:start}.agency-allocation{padding:18px 12px}.agency-student-picker{padding:12px}}

.agency-purchase{margin:20px 0 44px}.agency-buy-heading{display:flex;align-items:center;gap:20px;margin:0 0 22px;flex-wrap:wrap}.agency-buy-heading h2{margin:0;font:25px Georgia,serif;letter-spacing:0;text-transform:none}.agency-collection-badge{color:#002c29;background:#fff5d7;border:1px solid #eeb624;border-radius:20px;padding:7px 14px;font-size:12px;font-weight:600}.agency-buy-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:28px;align-items:start}.agency-picker-tools{display:flex;align-items:center;gap:18px;margin:0 0 16px}.agency-text-button{border:0;background:transparent;color:#002c29;text-decoration:underline;cursor:pointer;padding:8px 0}.agency-buy-picker{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0}.agency-buy-choice{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #c6d3cc;padding:22px;min-height:99px;cursor:pointer;margin:0;min-width:0}.agency-buy-choice input{width:18px;height:18px;flex:none;accent-color:#003b31}.agency-buy-choice span{min-width:0}.agency-buy-choice strong{display:block;font-size:18px;color:#002c29}.agency-buy-choice small{display:block;font-size:11px;color:#627870;margin-top:8px;line-height:1.5}.agency-buy-choice.selected{border:2px solid #003b31;padding:21px;background:#eff5ef}.agency-buy-choice:focus-within{outline:2px solid #b58624;outline-offset:3px}.agency-buy-basket{background:#fff;padding:24px;border:1px solid #c6d3cc;min-width:0}.agency-buy-basket h3{font:24px Georgia,serif;margin:0 0 20px}.agency-buy-basket p{font-size:13px;line-height:1.6;overflow-wrap:anywhere}.agency-student-quantity{display:flex;flex-direction:column;gap:8px;margin:22px 0 10px}.agency-student-quantity input{width:100%;min-width:0}.agency-basket-count{color:#627870;font-size:11px!important}.agency-basket-total{border-top:1px solid #d2d9d2;margin-top:22px;padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:10px}.agency-basket-total strong{font-size:30px}.agency-buy-basket button[type=submit]{width:100%;margin-top:20px;background:#eeb624;color:#002c29;border-color:#eeb624}.agency-buy-basket .quiet-note{font-size:11px}.agency-inventory{margin-top:30px}.agency-inventory h2{font:25px Georgia,serif;text-transform:none;letter-spacing:0}.agency-mocks{max-width:1200px}
@media(max-width:900px){.agency-buy-grid{grid-template-columns:minmax(0,1fr) 270px;gap:20px}.agency-buy-choice{padding:18px}.agency-buy-choice.selected{padding:17px}}
@media(max-width:700px){.agency-buy-grid{grid-template-columns:1fr}.agency-buy-choice{padding:14px;gap:10px}.agency-buy-choice.selected{padding:13px}.agency-buy-choice strong{font-size:16px}.agency-buy-heading{gap:12px}.agency-buy-heading h2{font-size:23px}.agency-buy-basket{padding:20px}}

.agency-access-nav{display:flex;gap:28px;border-bottom:1px solid #d2d9d2;margin:0 0 26px}.agency-access-nav button{border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;color:#627870;padding:14px 0;font-weight:600;cursor:pointer}.agency-access-nav button[aria-pressed=true]{border-bottom-color:#eeb624;color:#002c29}.agency-assign-grid{grid-template-columns:minmax(0,1fr) 340px;gap:28px}.agency-assign-choice small{color:#627870;font-size:12px}.agency-assign-choice.unavailable{background:transparent;border-color:#d8ded8;cursor:default;color:#627870}.agency-assign-choice.unavailable strong{color:#82928b}.agency-assign-students .member-search{display:flex;flex-direction:column;gap:8px;font-size:12px;margin:0 0 18px}.agency-assign-students .member-search input{min-width:0;width:100%;padding:11px}.agency-assign-students .member-picker{border:0;padding:0;margin:0;max-height:280px;overflow:auto;background:transparent}.agency-assign-students .member-picker legend{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}.agency-assign-students .member-picker label{border:0;border-bottom:1px solid #e0e5df;background:transparent;border-radius:0;margin:0;padding:13px 0;display:flex;align-items:center;gap:12px}.agency-assign-students .member-picker input{accent-color:#003b31;width:17px;height:17px;margin:0}.agency-assign-students .member-picker label span{font-size:13px;line-height:1.5}.agency-assign-students .member-email{font-size:10px;font-weight:400;display:block;overflow-wrap:anywhere}.agency-assign-students [data-agency-selected]{display:none}.agency-assign-summary{font-weight:600;color:#002c29;border-top:1px solid #d2d9d2;padding-top:20px;margin-top:20px}.agency-assign-students button[type=submit]{background:#002c29;color:white;border-color:#002c29}.agency-assign-students .error:empty,.agency-assign-students [data-agency-capacity]:empty{display:none}.agency-assign-students .error{font-size:12px;line-height:1.6;margin-bottom:0}
@media(max-width:900px){.agency-assign-grid{grid-template-columns:minmax(0,1fr) 285px;gap:20px}}@media(max-width:700px){.agency-assign-grid{grid-template-columns:1fr}.agency-access-nav{gap:24px;margin-bottom:22px}}

.student-timing{padding:12px 0;border-bottom:1px solid #ded7ca;margin-bottom:20px}.student-timing .toolbar{margin:0;align-items:center}.student-timing label{display:flex;align-items:center;gap:8px}.student-timing [role=status]{font-size:13px}
.student-timing .toolbar{padding:0;min-height:0}
