.learning-portal{width:min(1080px,100%);margin:0 auto;padding:28px 24px 64px;color:var(--sk-text,#34343b);overflow-wrap:anywhere}.learning-portal header{margin:28px 0}.learning-portal h1{font-size:30px;font-weight:700;line-height:1.2}.learning-portal h2{font-size:20px;font-weight:650;margin-bottom:16px}.learning-portal h3{font-weight:650}.learning-portal p{margin:8px 0;color:var(--sk-text-secondary,#45454d)}.portal-nav{display:flex;gap:10px 24px;flex-wrap:wrap;font-size:14px}.learning-portal a{color:var(--sk-blue-700);text-decoration:underline;text-underline-offset:3px}.portal-section{padding:24px;background:#fafaf8;border:1px solid #d9dad6;border-radius:14px;margin:20px 0}.portal-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.portal-metrics div{border-left:3px solid #9aaca0;padding:8px 16px}.portal-metrics strong{display:block;font-size:28px}.portal-metrics span{font-size:14px;color:var(--sk-text-secondary,#45454d)}.portal-form{display:flex;flex-wrap:wrap;align-items:end;gap:14px}.portal-form label{display:grid;gap:6px;font-size:14px;flex:1;min-width:150px}.portal-form input,.portal-form select,.portal-form textarea{border:1px solid #aeb5ad;border-radius:7px;background:white;padding:10px;width:100%;color:var(--sk-text,#34343b)}.portal-button,.portal-form button{border-radius:8px;background:var(--sk-surface-dark,#34343b);color:white!important;padding:11px 18px;cursor:pointer;text-decoration:none!important}.portal-form button:disabled{opacity:.5;cursor:wait}.portal-form .portal-check{display:flex;align-items:center;flex-basis:100%}.portal-check input{width:20px}.portal-table{overflow-x:auto}.portal-table table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}.portal-table td,.portal-table th{padding:13px 10px;border-bottom:1px solid #dfe2db;vertical-align:top}.portal-table th{color:var(--sk-text-secondary,#45454d);font-weight:500}.portal-status{flex-basis:100%;font-size:14px}.portal-status[data-error=true]{color:#a3322b}.portal-bar{height:9px;background:#e3e8e0;border-radius:9px;overflow:hidden;min-width:80px}.portal-bar span{display:block;height:100%;background:#63816b;border-radius:9px}.portal-codes{font-family:monospace;font-size:14px}.learning-portal :focus-visible{outline:2px solid var(--sk-blue-700);outline-offset:3px}@media(max-width:600px){.learning-portal{padding:18px 16px 40px}.learning-portal h1{font-size:25px}.portal-section{padding:18px 14px}.portal-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-form button{width:100%}}.learning-portal>header{margin:24px 0}.learning-portal .portal-nav a[aria-current=page]{font-weight:700;color:var(--sk-text,#34343b);text-decoration-thickness:2px}.portal-disclosure>summary{cursor:pointer;font-weight:600;font-size:16px;list-style-position:inside}.portal-disclosure[open]>summary{margin-bottom:18px}.portal-disclosure:not(.portal-section){margin-top:16px}.portal-help{font-size:13px;margin:0 0 16px;color:var(--sk-text-secondary,#45454d)}.portal-help summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.portal-help p{max-width:680px}.portal-form[data-operation=leave] button,.portal-form[data-operation^=remove] button{background:transparent;color:var(--sk-text-secondary,#45454d)!important;border:1px solid #aeb5ad;padding:8px 12px}.portal-section>.portal-disclosure+details{margin-top:16px}.portal-section>details+details{margin-top:14px}.teacher-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.teacher-toolbar .portal-form{flex:1;max-width:540px}.teacher-secondary{font-size:14px;white-space:nowrap;padding:12px 0}.teacher-tabs{display:flex;gap:8px 28px;flex-wrap:wrap;border-bottom:1px solid #d9dad6;margin:20px 0}.teacher-tabs a{padding:12px 0;text-decoration:none}.teacher-tabs a[aria-current=page]{font-weight:650;color:var(--sk-text,#34343b);border-bottom:2px solid}.teacher-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.teacher-heading h2{margin:0}.teacher-assignments{list-style:none;padding:0;margin:20px 0 0}.teacher-assignments li{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid #dfe2db}.teacher-assignments li>div{min-width:0}.teacher-assignments li>div>a{font-weight:600}.teacher-assignments p{font-size:14px}.teacher-assignment-meta{display:flex;flex-direction:column;gap:6px;flex-shrink:0;font-size:14px}.teacher-detail-title{margin-top:24px}.teacher-steps{display:flex;flex-wrap:wrap;gap:12px 32px;padding-left:20px;margin:20px 0 28px;font-size:14px;color:var(--sk-text-secondary,#45454d)}.teacher-steps [aria-current=step]{font-weight:650;color:var(--sk-text,#34343b)}.teacher-topics{padding-left:20px;margin-top:20px}.teacher-topics li{padding:10px 0}.teacher-topic-actions{display:flex;gap:24px;flex-wrap:wrap;margin:16px 0 24px}.teacher-matrix caption{text-align:left;font-size:13px;padding:0 10px 12px;color:var(--sk-text-secondary,#45454d)}.teacher-matrix th{min-width:150px;max-width:220px}.teacher-matrix small{display:block;color:var(--sk-text-secondary,#45454d);margin-top:4px}.teacher-matrix th:first-child{position:sticky;left:0;background:#fafaf8}.teacher-matrix+.portal-help{margin-top:20px}.teacher-toolbar select{min-width:0}.portal-table{max-width:100%}@media(max-width:600px){.teacher-toolbar{align-items:stretch;flex-direction:column;gap:8px}.teacher-toolbar .portal-form{flex-wrap:nowrap;align-items:end}.teacher-toolbar .portal-form button{width:auto}.teacher-tabs{gap:4px 20px;font-size:14px}.teacher-assignments li{flex-direction:column;gap:8px}.teacher-assignment-meta{flex-direction:row;flex-wrap:wrap;gap:8px 16px}.teacher-heading .portal-button{width:100%;text-align:center}}.learning-portal h1,.learning-portal h2,.learning-portal h3,.portal-metrics strong{color:var(--sk-ink,#111111)}.teacher-start{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style-position:inside;padding:0;margin:18px 0 28px;font-size:14px}.teacher-start li{min-width:0}.teacher-start strong{font-weight:650}.teacher-start span{display:block;line-height:1.5;margin:8px 0;color:var(--sk-text-secondary,#45454d)}.teacher-start a{display:inline-block;padding:8px 0}.teacher-start-help .teacher-start{margin-bottom:10px}.portal-form label small{font-size:12px;font-weight:var(--font-weight-normal,425);line-height:1.5;color:var(--sk-text-secondary,#45454d)}@media(max-width:600px){.teacher-start{grid-template-columns:1fr;gap:12px}.teacher-start span{margin:5px 0}.teacher-start a{padding:6px 0;min-height:32px}}