.account-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,480px);gap:72px;align-items:center;max-width:1240px;padding:70px 48px;margin:auto}.account-loading{grid-column:1/-1;text-align:center;color:var(--muted);padding:40px}.account-brand{font:700 28px var(--mono);color:var(--ink);text-decoration:none;display:block;margin-bottom:72px}.account-brand span{display:block;font:13px var(--font);letter-spacing:5px;text-transform:uppercase;margin-top:9px;color:var(--muted)}.account-intro h1{font-size:clamp(30px,3.3vw,48px);line-height:1.2;letter-spacing:-1.7px;margin:18px 0 24px}.account-intro>p:not(.eyebrow){max-width:460px;font-size:15px;line-height:1.8;color:var(--muted)}.account-highlights{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.account-highlights span{padding:8px 12px;border:1px solid var(--line);border-radius:30px;font-size:11px;color:#51754e}.account-card{background:white;border:1px solid var(--line);border-radius:16px;padding:32px;box-shadow:0 20px 80px #365e3910}.account-tabs{display:flex;gap:7px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:26px}.account-tabs button{padding:8px 10px;border-radius:6px;color:var(--muted);background:transparent;font-size:12px}.account-tabs button.active{background:#edf4e6;color:#346441}.account-card h2{font-size:25px;margin-bottom:12px}.account-note,.account-footer{font-size:12px;line-height:1.7;color:var(--muted)}.account-footer{border-top:1px solid var(--line);padding-top:18px;margin-top:24px}.account-form{display:grid;gap:16px;margin-top:24px}.account-form label,.teacher-filters label,.teacher-review label,.teacher-artifact label{display:grid;gap:8px;color:#526e50;font-size:12px}.account-form input,.teacher-filters input,.teacher-filters select,.teacher-review input,.teacher-review textarea,.teacher-artifact select{min-width:0;width:100%;padding:11px 12px;background:#fafcf7;border:1px solid var(--line);border-radius:6px;font:13px var(--font);color:var(--ink)}.account-form input:focus,.teacher-filters input:focus,.teacher-review textarea:focus{outline:2px solid #91b889;outline-offset:2px}.account-error{font-size:12px;color:#9a503c;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;min-height:1em}.account-submit{width:100%;display:flex;align-items:center;justify-content:center;min-height:45px}.account-settings{max-width:480px;padding:24px;border:1px solid var(--line);border-radius:9px;background:white;margin:18px 0}.account-settings h3{font-size:18px;margin-bottom:10px}.account-settings>p{font-size:12px;color:var(--muted)}.account-settings .account-logout{margin-top:24px}.teacher-page{max-width:1480px;margin:auto;padding:38px 40px;min-height:100vh}.teacher-header{display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap;margin-bottom:26px}.teacher-header h1{font-size:32px;margin:10px 0}.teacher-header p:not(.eyebrow){font-size:12px;color:var(--muted)}.teacher-summary{background:#edf4e6;border:1px solid #d6e4cd;border-radius:8px;padding:15px 18px;font-size:13px;margin-bottom:22px}.teacher-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:26px;align-items:start}.teacher-roster{background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.teacher-filters{display:grid;gap:15px;padding:20px;border-bottom:1px solid var(--line)}.teacher-students{max-height:75vh;overflow:auto;padding:8px}.teacher-student{display:grid;gap:9px;width:100%;background:white;border:1px solid transparent;padding:15px 12px;border-radius:7px;text-align:left;color:var(--ink)}.teacher-student strong{font-size:13px}.teacher-student span{font-size:11px;color:var(--muted);overflow-wrap:anywhere}.teacher-student small{font-size:10px;color:#8b9780}.teacher-student:hover,.teacher-student.selected{background:#eef5e8;border-color:#d2e2c8}.teacher-detail{min-width:0;background:white;border:1px solid var(--line);border-radius:10px;padding:25px}.teacher-empty{font-size:13px;color:var(--muted);line-height:1.8;padding:20px}.teacher-person h2{font-size:23px;margin-bottom:10px}.teacher-person p{font-size:12px;color:var(--muted)}.teacher-practice{background:#f5f8f0;border-radius:8px;padding:20px;margin-top:22px}.teacher-practice h3{font-size:16px}.teacher-practice p{font-size:12px;line-height:1.8;margin-top:12px}.teacher-detail details{margin-top:18px;font-size:12px;color:var(--muted)}.teacher-detail summary{cursor:pointer;line-height:1.8}.teacher-detail pre{max-height:300px;overflow:auto;background:#f2f6ec;padding:16px;border-radius:6px;margin-top:13px;font:11px/1.8 var(--mono);white-space:pre;max-width:100%}.teacher-section-title{font-size:19px;margin:28px 0 15px}.teacher-attempt{border:1px solid var(--line);border-radius:9px;padding:20px;margin-bottom:16px;overflow:hidden}.teacher-attempt p{font-size:12px;line-height:1.8;margin-top:10px;overflow-wrap:anywhere;white-space:pre-wrap}.teacher-attempt-head{display:flex;justify-content:space-between;gap:15px;font-size:12px}.teacher-attempt-head span{color:var(--muted)}.teacher-lab-results{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.teacher-lab-results .btn{font-size:11px;padding:8px 10px}.teacher-review{display:grid;gap:14px;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.teacher-review input{max-width:180px}.teacher-review textarea{min-height:100px;resize:vertical}.teacher-review button{justify-self:start}.teacher-artifact:has(h4){border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.teacher-artifact h4{font-size:15px;margin-bottom:12px}.teacher-artifact select{display:block;margin-top:14px;max-width:100%;font:12px var(--mono)}.teacher-artifact .artifact-encoding{max-width:180px;margin-top:0}.teacher-artifact label{margin-top:16px}.teacher-artifact .artifact-content{max-height:450px;white-space:pre}.teacher-practice-checks{border-top:1px solid var(--line);padding-top:16px}.teacher-practice-checks p{font-size:12px;margin-top:12px}@media(max-width:900px){.account-page{gap:36px;padding:40px 25px;grid-template-columns:minmax(0,1fr) minmax(300px,1fr)}.account-brand{margin-bottom:40px}.account-intro h1{font-size:33px}.teacher-page{padding:26px 20px}.teacher-layout{grid-template-columns:250px minmax(0,1fr);gap:15px}.teacher-detail{padding:18px}}@media(max-width:650px){.account-page{grid-template-columns:1fr;gap:28px;padding:28px 18px}.account-brand{font-size:23px;margin-bottom:26px}.account-brand span{font-size:11px}.account-intro h1{font-size:29px;letter-spacing:-1px}.account-highlights{margin-top:18px}.account-card{padding:24px}.teacher-page{padding:20px 14px}.teacher-header h1{font-size:26px}.teacher-layout{grid-template-columns:1fr}.teacher-students{max-height:260px}.teacher-filters{grid-template-columns:1fr 1fr;padding:16px}.teacher-attempt-head{flex-direction:column;gap:8px}.teacher-detail{padding:17px}.teacher-practice,.teacher-attempt{padding:16px}.teacher-header .button-row{gap:7px;margin-top:0}.teacher-review button{max-width:100%}}
.account-link{border:0;background:none;color:#246a50;padding:14px 0;font:inherit;cursor:pointer;text-align:left}.account-success{color:#246a50!important}.account-onboarding{grid-template-columns:minmax(0,560px);justify-content:center}.account-mail{display:grid;gap:10px;padding:18px;border:1px solid var(--line);border-radius:12px;margin-bottom:20px;overflow-wrap:anywhere}.account-mail .btn{justify-self:start}.account-mail small,.admin-person small{color:var(--muted);line-height:1.5}.account-settings form+form{margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}.admin-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.admin-reset{grid-column:1/-1}.admin-person{display:flex;gap:12px;align-items:flex-start;padding:15px 0;border-bottom:1px solid var(--line)}.admin-person span{display:grid;gap:6px;min-width:0;overflow-wrap:anywhere}.admin-person input,.admin-select-all input{width:18px;height:18px;flex-shrink:0;accent-color:#246a50}.admin-select-all{display:flex;align-items:center;gap:12px;margin:20px 0}.admin-page h2{font-size:22px}.admin-page .account-settings{min-width:0}.account-card input{min-width:0}@media(max-width:760px){.admin-layout{grid-template-columns:minmax(0,1fr)}.admin-reset{grid-column:auto}.teacher-header .button-row{flex-wrap:wrap}.account-onboarding{padding:24px 14px}}

.admin-layout .account-settings{max-width:none;margin:0}.admin-person strong{font-size:14px}.admin-person small{font-size:12px}.admin-select-all{font-size:13px}.account-settings h4{font-size:15px}.account-card .btn.primary{justify-content:center;width:100%}.account-onboarding .account-card{width:100%}
.group-picker{position:relative}.group-picker small{font-size:11px;color:var(--muted);line-height:1.6}.group-options{position:absolute;z-index:20;top:72px;left:0;right:0;max-height:240px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 32px #172e2d20}.group-options[hidden]{display:none}.group-options button{display:block;width:100%;text-align:left;background:#fff;color:var(--ink);padding:11px 13px;border-bottom:1px solid #eff2eb;font-size:13px}.group-options button:hover,.group-options button.selected{background:#eaf2e3;color:#245c40}.group-options p{font-size:12px;color:var(--muted);padding:14px}.group-management{background:#fff;border:1px solid var(--line);border-radius:10px;padding:24px;margin-bottom:24px}.group-create{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:20px 0}.group-create label,.group-search{display:grid;gap:8px;color:#526e50;font-size:12px}.group-create input,.group-search input,.teacher-work-filters select,.teacher-terminal-top select{padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:#fafcf7;color:var(--ink);min-width:0}.group-create .account-error{flex-basis:100%}.group-search{max-width:380px;margin-bottom:18px}.group-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.group-card{padding:18px;border:1px solid var(--line);border-radius:8px;min-width:0}.group-card h3{font-size:16px}.group-card p,.group-card small{font-size:12px;color:var(--muted);line-height:1.8;margin-top:9px;overflow-wrap:anywhere}.group-card details{margin-top:16px}.group-card summary{font-size:12px;cursor:pointer;color:var(--green)}.group-access-teachers{display:grid;gap:10px;margin:15px 0}.group-access-teachers label{display:flex;align-items:center;gap:8px;font-size:12px}.group-access-teachers input{accent-color:var(--green)}.teacher-lab-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.teacher-lab-summary article{background:#fff;border:1px solid var(--line);border-radius:8px;padding:15px}.teacher-lab-summary h4{font-size:13px;line-height:1.6;margin:0}.teacher-lab-summary p{font-size:11px!important;margin-top:8px!important}.teacher-work{margin-top:26px;padding-top:24px;border-top:1px solid var(--line)}.teacher-work .section-top p{margin-top:10px;line-height:1.7}.teacher-work-filters{display:grid;grid-template-columns:1fr 1fr;gap:14px}.teacher-work-filters label{display:grid;gap:8px;font-size:12px;color:#526e50;min-width:0}.teacher-work-filters label:last-child{grid-column:1/-1}.teacher-work-info{font-size:12px;line-height:1.7;margin:16px 0;color:var(--muted)}.teacher-console{background:#172a29;border-radius:0 0 8px 8px;padding:12px;overflow:auto;max-width:100%;min-height:280px}.teacher-terminal-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#203e36;padding:12px 16px;border-radius:8px 8px 0 0;color:#e2eee5;font-size:12px}.teacher-terminal-top label{display:flex;align-items:center;gap:8px;margin-left:auto}.teacher-terminal-top select{font-size:11px;padding:6px}.teacher-terminal-top span{font-size:10px;color:#acbeb7}.teacher-console-body h4{font-size:13px;margin:20px 0 12px}.teacher-history-scroll{max-height:350px;overflow:auto;border:1px solid var(--line);border-radius:8px}.teacher-history{width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px}.teacher-history td,.teacher-history th{padding:10px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.teacher-history th{background:#f5f8f0;color:#526e50}.teacher-history th:first-child{width:155px}.teacher-history code{white-space:pre-wrap;display:block;background:none;padding:0;color:var(--ink)}.history-kind{display:block;color:var(--muted);font-size:10px;margin-bottom:5px}.teacher-task-work{border:1px solid var(--line);padding:15px;border-radius:8px;margin-top:12px}.teacher-model-console{background:#172a29!important;color:#d1e1d6}.teacher-check-lab{border-top:1px solid var(--line);margin-top:15px;padding-top:12px}.teacher-check-lab h4{font-size:13px;margin:0}.teacher-check-lab p{font-size:12px;margin:8px 0}@media(max-width:750px){.group-list,.teacher-lab-summary{grid-template-columns:minmax(0,1fr)}.teacher-work-filters{grid-template-columns:minmax(0,1fr)}.teacher-work-filters label:last-child{grid-column:auto}.group-management{padding:17px}.teacher-history th:first-child{width:115px}.teacher-terminal-top label{margin-left:0}}

.admin-student-management{background:#fff;border:1px solid var(--line);border-radius:10px;padding:24px;margin-bottom:24px}.admin-student-management h2{font-size:22px}.admin-student-management .section-top p{font-size:13px;color:var(--muted);line-height:1.7;margin-top:10px}.admin-student-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin-top:24px}.admin-student-layout>div{min-width:0}.admin-student-layout .group-search{max-width:none}.admin-student-list{max-height:480px;overflow:auto;display:grid;gap:8px;align-content:start}.admin-student-list .teacher-student{width:100%;margin:0;overflow-wrap:anywhere}.admin-student-reset{background:#fafcf7;border:1px solid var(--line);border-radius:8px;padding:20px}.admin-student-reset h3{font-size:17px;overflow-wrap:anywhere}.admin-student-reset .account-note{overflow-wrap:anywhere}.admin-student-reset .account-form{margin-top:20px}.admin-student-reset input{min-width:0;width:100%}@media(max-width:760px){.admin-student-management{padding:17px}.admin-student-layout{grid-template-columns:minmax(0,1fr);gap:18px}.admin-student-management .section-top{align-items:flex-start;flex-direction:column;gap:12px}.admin-student-list{max-height:280px}.admin-student-reset{padding:16px}}

.teacher-filters label[hidden]{display:none}
