.activity-report{min-width:0}.activity-report .filter-panel{max-width:none}.filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.filter-grid label{font-size:.85rem}.filter-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.filter-panel>p:last-child{margin-bottom:0}.report-context{font-size:.85rem;color:var(--muted);margin-top:1.5rem}.activity-report>section{margin-block:1.5rem}.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid var(--border);border-radius:var(--radius)}.metric-strip>div{padding:1.25rem;border-right:1px solid var(--border);display:grid;grid-template-columns:1fr auto;align-items:center}.metric-strip>div:last-child{border:0}.metric-strip svg{grid-column:2;color:var(--accent)}.metric-strip strong{font-size:2rem;line-height:1.3;grid-row:1}.metric-strip span{grid-column:1 / -1;color:var(--muted);font-size:.8rem;margin-top:.4rem}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.chart-grid section{min-width:0;margin:0}.chart-canvas{width:100%;min-width:0;margin:.5rem 0 1rem}.chart-grid h2{margin-bottom:.4rem}.chart-grid a{font-size:.85rem}.chart-pagination{display:flex;gap:.5rem;flex-wrap:wrap}.chart-pagination p{width:100%}.activity-report .report-scroll{overflow-x:auto;margin:1rem 0}.activity-report table{min-width:620px}.activity-report table.compact-table,.activity-report table table{min-width:0}.activity-report th,.activity-report td{min-width:5rem}.activity-report tbody th{font-weight:400;min-width:12rem}.activity-report tbody th button{color:var(--accent);background:var(--accent-soft);border-color:#dedff3;text-align:left;overflow-wrap:anywhere;max-width:23rem}.activity-report section>p{font-size:.875rem}.activity-report section[id]{scroll-margin-top:1rem}.activity-report details .report-scroll table{min-width:0}@media(max-width:900px){.chart-grid{grid-template-columns:1fr}}@media(max-width:540px){.filter-grid{grid-template-columns:1fr}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-strip>div{padding:1rem;border-bottom:1px solid var(--border)}.metric-strip>div:nth-child(2){border-right:0}.metric-strip>div:nth-child(3){border-bottom:0}.metric-strip strong{font-size:1.65rem}}@media(min-width:1100px){.filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}}.activity-report .filter-panel{padding:1.1rem 1.25rem}.activity-report .report-context{margin-top:1rem}.activity-report>.muted{margin-bottom:.5rem}.activity-report tbody th{min-width:14rem}.activity-report th{overflow-wrap:normal}.activity-report>section{margin-block:28px}.activity-report h3{font-size:18px}.metric-strip{display:flex;flex-wrap:wrap;gap:32px;margin:20px 0}.metric-strip p{margin:0;display:grid;gap:4px}.metric-strip strong{font-size:28px}.student-chart-legend{list-style:none;padding:0;max-height:320px;overflow:auto;border-block:1px solid var(--border)}.student-chart-legend li{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:10px 4px}.student-chart-legend strong{margin-left:auto}.legend-swatch{width:12px;height:12px;border-radius:3px;flex-shrink:0}.group-picker{position:relative;max-width:480px;margin:16px 0}.group-picker label{display:block;font-weight:600;margin-bottom:6px}.group-picker input{width:100%}.group-picker [role=listbox]{position:absolute;top:68px;z-index:3;width:100%;max-height:260px;overflow:auto;margin:0;padding:6px;background:var(--surface,white);box-shadow:0 8px 24px #20204026;border:1px solid var(--border);border-radius:8px;list-style:none}.group-picker [role=option]{padding:12px;overflow-wrap:anywhere;cursor:pointer}.group-picker [role=option].active{background:#eeeefa}.follow-up-list{list-style:none;padding:0}.follow-up-list li{display:grid;gap:3px;padding:12px 0;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.roster-group-setup{margin-block:24px}.roster-group-setup .form-field{max-width:240px}.report-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.report-filters label{display:grid;gap:6px;min-width:0;flex:1 1 200px}.report-filters input{width:100%;min-width:0}.activity-report .metric-strip{padding:18px 24px}.activity-report .table-scroll{max-width:100%;overflow-x:auto}:root{--font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: 1rem;--font-small: .875rem;--font-title: clamp(1.65rem, 3vw, 2.15rem);--line-body: 1.55;--line-heading: 1.25;--border-width: 1px;--radius-control: 7px;font-family:var(--font-family);font-size:var(--font-body);color:#20283d;background:#f5f6fa;font-synthesis:none;line-height:var(--line-body);--accent: #4546a5;--accent-hover: #333582;--accent-soft: #eeeffb;--text: #20283d;--muted: #626b80;--surface: #fff;--border: #dce0ea;--danger: #a52b3c;--success: #23654c;--radius: 10px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--focus: #6668cf}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}a{color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent-hover)}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:42px;border:var(--border-width) solid #cbd0df;border-radius:var(--radius-control);padding:.55rem .95rem;background:#fff;color:var(--text);font-weight:600;cursor:pointer;text-decoration:none;line-height:1.35}button:hover,.button:hover{background:#f0f1f8;border-color:#999fc0}button[type=submit],button.primary-action,.button.primary{color:#fff;background:var(--accent);border-color:var(--accent)}button[type=submit]:hover,button.primary-action:hover,.button.primary:hover{background:var(--accent-hover)}button[type=submit].secondary{background:#fff;border-color:#cbd0df;color:var(--text)}button:disabled{cursor:not-allowed;opacity:.55}input:not([type=checkbox]):not([type=radio]),textarea,select{display:block;width:100%;max-width:100%;min-width:0;border:1px solid #bfc6d6;border-radius:7px;background:#fff;color:var(--text);padding:.65rem .75rem;margin-top:.35rem}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}input[type=file]::file-selector-button{border:0;border-radius:4px;padding:.45rem .75rem;margin-right:.75rem;background:var(--accent-soft);color:var(--accent);font:inherit;font-weight:600;cursor:pointer}label{font-weight:600}form>p,form>div{max-width:100%}textarea{resize:vertical}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}h1:focus,h2:focus{outline:none}h1,h2,h3{line-height:var(--line-heading);letter-spacing:-.025em;overflow-wrap:anywhere}h1{font-size:var(--font-title);margin:0 0 var(--space-3);font-weight:720}h2{font-size:1.25rem;margin:0 0 1rem}h3{font-size:1.05rem}p{margin:.65rem 0 1rem}small,.muted,.help{color:var(--muted)}.help{font-size:var(--font-small)}svg.lucide{width:19px;height:19px;flex-shrink:0}.app-frame{min-height:100vh;display:flex;flex-direction:column}.app-header{background:var(--surface);border-bottom:1px solid var(--border)}.header-inner{max-width:1280px;margin:auto;padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;gap:.65rem;align-items:center;text-decoration:none;color:var(--text);font-size:1.1rem;font-weight:750}.brand-mark{display:grid;place-items:center;padding:.6rem;background:var(--accent);color:#fff;border-radius:8px}.primary-nav{display:flex;align-items:center;gap:1.3rem;flex-wrap:wrap}.primary-nav a{text-decoration:none;font-size:.9rem;font-weight:600}.primary-nav a[aria-current]{text-decoration:underline;text-decoration-thickness:2px}.badge{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--border);border-radius:5px;padding:.2rem .55rem;background:#f5f6fa;font-size:.75rem;font-weight:650}.badge.accent{color:var(--accent);background:var(--accent-soft);border-color:#d9daf2}.app-main{width:100%;max-width:1280px;padding:var(--space-8);margin:0 auto;flex:1;min-width:0}.app-main>form,.app-main>section:only-of-type>form{max-width:45rem}.app-footer{border-top:1px solid var(--border);padding:1.25rem 2rem;color:var(--muted);font-size:.8rem}.footer-inner{max-width:1216px;margin:auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.7rem}.footer-inner nav{display:flex;gap:1rem}.footer-inner p{margin:0}.skip-link{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;top:.5rem;left:1rem;z-index:100;width:auto;height:auto;margin:0;padding:.6rem 1rem;overflow:visible;clip-path:none;background:#fff}.breadcrumbs{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-size:.85rem;margin-bottom:1.25rem;color:var(--muted)}.breadcrumbs svg{width:14px}.scope-nav{display:flex;gap:1.5rem;flex-wrap:wrap;border-bottom:1px solid var(--border);margin:1.25rem 0 1.75rem}.scope-nav a{display:inline-flex;gap:.45rem;align-items:center;padding:.7rem 0;text-decoration:none;color:var(--muted);font-weight:600;font-size:.9rem;border-bottom:3px solid transparent}.scope-nav a[aria-current]{color:var(--accent);border-bottom-color:var(--accent)}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.eyebrow{color:var(--accent);text-transform:uppercase;font-size:.72rem;font-weight:750;letter-spacing:.1em;margin-bottom:.5rem}.panel{background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius);padding:var(--space-6);min-width:0}.stack>*+*{margin-top:1.5rem}.pre-wrap{white-space:pre-wrap;overflow-wrap:anywhere}.two-column{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,1fr);gap:1.5rem;align-items:start}.workspace-grid{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,2fr);gap:1.5rem;align-items:start}.member-list{list-style:none;padding:0;margin-bottom:0}.member-list li{display:flex;gap:.65rem;align-items:center;padding:.65rem 0;border-top:1px solid #eef0f5;overflow-wrap:anywhere}.avatar{width:32px;height:32px;background:var(--accent-soft);color:var(--accent);border-radius:50%;display:inline-grid;place-items:center;flex-shrink:0;font-size:.8rem;font-weight:700}.schedule{display:flex;flex-wrap:wrap;gap:1rem 2rem;padding:1rem 0;border-top:1px solid var(--border);margin-bottom:0}.schedule dt{color:var(--muted);font-size:.8rem}.schedule dd{margin:.2rem 0 0;font-size:.9rem;font-weight:600}details{margin-block:.75rem}summary{cursor:pointer;color:var(--accent);font-weight:600}details>p{font-size:.9rem;color:var(--muted)}.action-list{display:grid;gap:0}.action-link{display:flex;align-items:center;gap:1rem;padding:1.1rem 0;border-bottom:1px solid var(--border);text-decoration:none}.action-link:last-child{border-bottom:0}.action-link>span{flex:1}.action-link strong,.action-link small{display:block}.action-link small{font-weight:400;margin-top:.2rem}.chat-area{padding:1.5rem;background:#fff;border:1px solid var(--border);border-radius:var(--radius)}.chat-top{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.chat-top h3{margin:0;font-size:1.2rem}.chat-area [data-testid=chat-connection]{font-size:.8rem;color:var(--muted);margin:0}.chat-log{list-style:none;height:370px;overflow-y:auto;padding:.5rem 1rem .5rem 0;margin:1rem 0;border-block:1px solid var(--border);overscroll-behavior:contain}.chat-log li{padding:1rem 0;border-bottom:1px solid #eef0f5}.chat-log li:last-child{border-bottom:0}.chat-log strong{font-size:.85rem;overflow-wrap:anywhere}.chat-log time{color:var(--muted);font-size:.75rem;margin-left:.75rem;display:inline-block}.chat-log p{margin:.5rem 0 0}.chat-area form>p{font-size:.75rem;color:var(--muted);margin:.4rem 0 .75rem}.chat-area textarea{min-height:90px}.meeting-panel section>h3{margin-top:0}.meeting-panel [role=status]{color:var(--muted)}[role=alert]{color:var(--danger);background:#fff3f3;border-radius:7px;padding:.8rem 1rem}.notice{padding:.85rem 1rem;background:var(--accent-soft);border-left:3px solid var(--accent);border-radius:4px;font-size:.875rem}.feedback{padding:.8rem 1rem;border-radius:7px;margin-block:.75rem}.feedback-status{color:var(--success);background:#edf7f1;border:1px solid #c5dfd0}.form-field{margin-block:1rem}.form-field label{display:block}.field-error{margin:.25rem 0 0}.table-scroll,.report-scroll{max-width:100%;overflow-x:auto;margin:1rem 0}.table-scroll table{min-width:640px}.table-scroll th,.table-scroll td{min-width:6rem}.table-hint{display:none;color:var(--muted);font-size:.75rem;margin-bottom:.5rem}table{width:100%;border-collapse:collapse;font-size:.875rem;text-align:left}caption{text-align:left;font-weight:600;color:var(--muted);padding:.6rem 0}th,td{padding:.8rem 1rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;overflow-wrap:anywhere}thead{background:#f4f5f9}tbody th{font-weight:600}.steps{display:flex;flex-wrap:wrap;gap:1.5rem;list-style:none;padding:0 0 1rem;border-bottom:1px solid var(--border);color:var(--muted);font-size:.85rem}.steps li{display:flex;align-items:center;gap:.5rem}.step-number{width:25px;height:25px;display:inline-grid;place-items:center;border-radius:50%;background:#eff0f7;font-weight:700}.steps [aria-current]{color:var(--accent);font-weight:700}.steps [aria-current] .step-number{background:var(--accent);color:#fff}.import-section{margin-bottom:1.5rem}.import-section form{max-width:38rem}.format-example{max-width:32rem}.format-example td,.format-example th{padding:.5rem .75rem}@media(max-width:900px){.workspace-grid{grid-template-columns:1fr}.workspace-support{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.workspace-support>*{margin-top:0}.two-column{grid-template-columns:1fr}}@media(max-width:540px){.table-hint{display:block}.app-main{padding:1.25rem 1rem}.header-inner{padding:.85rem 1rem;flex-wrap:wrap}.primary-nav{gap:1rem}.brand{font-size:1rem}.primary-nav .badge{margin-left:auto}.primary-nav{width:100%}.scope-nav{gap:.5rem 1.1rem}.scope-nav a{font-size:.8rem}.scope-nav svg{display:none}.page-heading{flex-direction:column}.panel,.chat-area{padding:1rem}.workspace-support{display:block}.workspace-support>*+*{margin-top:1rem}.chat-log{height:300px}.chat-log time{display:block;margin-left:0}.app-footer{padding:1rem}th,td{padding:.65rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.header-inner{min-height:70px;padding-block:.65rem}.brand{margin-right:auto}.brand-mark{padding:.55rem}.header-action{font-size:.85rem;white-space:nowrap}.account-menu,.mobile-nav{position:relative;margin:0}.account-menu summary,.mobile-nav summary{display:flex;align-items:center;gap:.45rem;min-height:42px;padding:.45rem .6rem;color:var(--text);border-radius:7px;font-size:.85rem;list-style:none}summary::-webkit-details-marker{display:none}.menu-panel{position:absolute;z-index:30;right:0;top:calc(100% + .75rem);min-width:220px;display:grid;gap:.25rem;background:#fff;border:1px solid var(--border);border-radius:9px;box-shadow:0 8px 24px #20283d18;padding:.65rem}.menu-panel a,.menu-panel button{display:flex;text-align:left;justify-content:flex-start;padding:.65rem .75rem;text-decoration:none;border:0;border-radius:5px;color:var(--text);font-size:.875rem}.menu-panel a:hover{background:var(--accent-soft)}.menu-role{color:var(--muted);font-size:.75rem;padding:.3rem .75rem}.mobile-nav{display:none}.header-error{max-width:1200px;margin:.5rem auto}.app-main{max-width:1264px}.app-footer{padding-block:1rem}.page-intro{margin-bottom:1.5rem}.page-intro>p,.page-heading p{max-width:52rem;color:var(--muted);margin-bottom:0}.page-heading{align-items:center}.page-heading .button{white-space:nowrap}.class-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-block:1.25rem 2rem}.class-grid>li{min-width:0}.class-card{display:flex;flex-direction:column;height:100%;min-height:235px;position:relative;padding:1.4rem;border:1px solid var(--border);border-top:4px solid var(--accent);border-radius:9px;background:#fff;color:var(--text);text-decoration:none;transition:border-color .15s,box-shadow .15s}.class-card:hover{color:var(--text);border-color:#a4a5cf;box-shadow:0 4px 16px #20283d0b}.class-card h2{font-size:1.15rem;margin:.9rem 0 .65rem}.class-card .card-description{color:var(--muted);font-size:.9rem;margin-top:0}.clamp-two{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.card-cue{display:flex;align-items:center;gap:.5rem;color:var(--accent);font-size:.85rem;font-weight:650;margin-top:auto;padding-top:.75rem}.card-icon{display:inline-grid;place-items:center;width:36px;height:36px;background:var(--accent-soft);color:var(--accent);border-radius:7px}.empty-state{background:#fff;border:1px dashed #bcc3d6;border-radius:10px;padding:2rem;text-align:center;margin-block:1rem 2rem}.empty-state h2,.empty-state h3{margin-top:.5rem}.empty-state p{color:var(--muted)}.request-list,.structured-list{list-style:none;padding:0;margin:0}.request-row{background:#fff;border-bottom:1px solid var(--border);padding:1rem 0;display:flex;align-items:flex-start;gap:1rem;justify-content:space-between}.request-row:last-child{border-bottom:0}.request-row h3{margin:0 0 .4rem}.request-row p{margin:.4rem 0;font-size:.875rem}.status-pending{color:#87520a;background:#fff6df;border-color:#ebd7a6}.status-approved{color:var(--success);background:#edf7f1;border-color:#c5dfd0}.status-rejected{color:var(--danger);background:#fff1f2;border-color:#efcbd1}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.section-heading h2,.section-heading h3{margin:0}.section-heading button{font-size:.8rem}.section-space{margin-top:1.75rem}.form-page{max-width:680px;margin:.5rem auto 2rem}.form-page>.panel{padding:2rem}.form-page .breadcrumbs{margin-bottom:1.5rem}.form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem;margin-top:1.25rem}.form-actions .cancel-link{padding:.6rem .8rem}.form-field input,.form-field textarea{margin-top:.4rem}.facts{display:grid;grid-template-columns:minmax(120px,.65fr) minmax(0,1.6fr);gap:.55rem 1rem;margin-block:.75rem 1.25rem;font-size:.9rem}.facts dt{color:var(--muted)}.facts dd{margin:0;overflow-wrap:anywhere}.assignment-list{list-style:none;padding:0;display:grid;gap:.8rem}.assignment-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;padding:1.25rem;background:#fff;border:1px solid var(--border);border-radius:9px;align-items:center}.assignment-row h3{margin:0 0 .5rem;font-size:1.05rem}.assignment-row p{margin:.3rem 0;font-size:.875rem;color:var(--muted)}.assignment-row .row-title{color:var(--text);text-decoration:none}.assignment-row .row-title:hover{color:var(--accent);text-decoration:underline}.assignment-meta{display:flex;gap:.65rem 1rem;flex-wrap:wrap;font-size:.8rem;color:var(--muted);margin-top:.65rem}.assignment-meta span{display:inline-flex;align-items:center;gap:.35rem}.class-overview-description{max-width:60rem}.class-code{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;font-size:.85rem}.class-code code{letter-spacing:.08em;padding:.4rem .65rem;border:1px solid var(--border);border-radius:5px;background:#fff;font-weight:650}.class-code button{min-height:36px;padding:.35rem .65rem;font-size:.8rem}.class-settings{margin-top:1.75rem;max-width:680px}.class-settings[open]>summary{margin-bottom:1rem}.auth-panel{max-width:500px;margin:2rem auto;background:#fff;border:1px solid var(--border);border-radius:12px;padding:2rem}.auth-panel>h1{font-size:1.8rem}.auth-panel>p{font-size:.9rem;color:var(--muted)}.auth-panel button[type=submit]{width:100%}.legal-page{max-width:800px;margin:auto}.legal-page pre,.terms-text{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.9rem;line-height:1.7;background:#fff;border:1px solid var(--border);border-radius:8px;padding:1.25rem}.draft-banner{border-left:3px solid #a56816;background:#fff8e8;padding:.75rem 1rem;margin:1rem 0;font-size:.8rem;border-radius:4px}.account-layout{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.6fr);gap:1.5rem}.terms-history{list-style:none;padding:0}.terms-history li{padding-block:1rem;border-bottom:1px solid var(--border);font-size:.875rem}.terms-history button{margin-top:.65rem;display:flex;font-size:.8rem}@media(max-width:1099px){.class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.account-layout{grid-template-columns:1fr}.request-row{flex-direction:column;gap:.5rem}}@media(max-width:640px){.header-inner{flex-wrap:nowrap;padding:.65rem 1rem;gap:.6rem;min-height:68px}.brand{gap:.5rem;font-size:1rem}.brand-mark{padding:.5rem}.desktop-nav{display:none}.mobile-nav{display:block}.mobile-nav summary{border:1px solid var(--border);padding:.6rem}.header-action{padding:.55rem .65rem;font-size:.8rem}.header-action svg{width:16px}.class-grid{grid-template-columns:1fr;gap:1rem}.class-card{min-height:205px;padding:1.1rem}.assignment-row{grid-template-columns:1fr}.assignment-row>.button{justify-self:start}.form-page>.panel,.auth-panel{padding:1.25rem}.auth-panel{margin:.5rem auto}.section-heading{align-items:flex-start}.facts{grid-template-columns:1fr;gap:.2rem}.facts dd{margin-bottom:.55rem}}.assignment-context{border-block:1px solid var(--border);padding-block:.75rem;margin-bottom:1.25rem}.assignment-context>p{max-width:65rem;font-size:.9rem;margin:.3rem 0 .7rem}.assignment-context .schedule{padding:.6rem 0;border:0}.assignment-context details{margin:.4rem 0;font-size:.8rem}.assignment-actions ul{list-style:none;padding:0;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.assignment-actions a{display:inline-flex;background:#fff;border:1px solid var(--border);border-radius:7px;padding:.7rem 1rem;font-weight:600;text-decoration:none}.workspace-grid{grid-template-columns:minmax(0,2.5fr) minmax(240px,1fr)}.workspace-support{grid-column:2;grid-row:1}.workspace-grid>#assignment-group-chat{grid-column:1;grid-row:1}.group-members{margin:0}.group-members summary{display:flex;align-items:center;gap:.5rem}.group-members summary:after{content:"+";margin-left:auto}.group-members[open] summary:after{content:"−"}.message-own{background:#f5f5fd;border-left:3px solid var(--accent);padding-inline:.8rem!important}.message-you{font-weight:500;color:var(--accent)}.privacy-help{margin:-.5rem 0 1.25rem;font-size:.8rem}.compose-panel{margin-bottom:1.25rem;max-width:740px}.inline-form{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.inline-form label{flex:1;min-width:150px}.recipient-list{list-style:none;padding:0;display:flex;gap:.5rem;flex-wrap:wrap}.conversation-layout{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,2fr);gap:1.5rem;align-items:start}.conversation-sidebar{padding:1.1rem}.conversation-sidebar h2{font-size:1rem}.conversation-sidebar .section-heading{flex-wrap:wrap}.conversation-sidebar button{font-size:.75rem;min-height:32px;padding:.35rem .5rem}.conversation-list{list-style:none;padding:0;margin-block:1rem;max-height:650px;overflow-y:auto}.conversation-list a{display:flex;align-items:flex-start;gap:.6rem;text-decoration:none;color:var(--text);border-radius:6px;padding:1rem .7rem;border-bottom:1px solid var(--border);font-size:.875rem;overflow-wrap:anywhere}.conversation-list a[aria-current]{background:var(--accent-soft);color:var(--accent);font-weight:650;border-left:3px solid var(--accent)}.conversation-list a:hover{background:var(--accent-soft)}.conversation-placeholder{margin:0;min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center}.conversation-title{font-size:1.25rem;margin-bottom:1rem}.conversation-back{display:none}.stream-area>h3{font-size:1rem;margin:0}.stream-area>details{font-size:.8rem}.stream-area>[data-testid=chat-connection]{margin-top:.5rem}.group-editor{display:grid;gap:1.25rem}.group-editor>section,.group-panel{background:#fff;border:1px solid var(--border);border-radius:9px;padding:1.25rem;min-width:0}.group-editor>section>form,.group-panel>form{display:flex;gap:.65rem;align-items:end;flex-wrap:wrap;margin-bottom:1.25rem}.group-editor>section>form>label,.group-panel>form>label{flex:1;min-width:140px}.group-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.group-panel h2,.group-panel h3{margin-top:0}.group-panel ul,.student-placements{list-style:none;padding:0}.group-panel li,.student-placements li{padding:1rem 0;border-top:1px solid var(--border);font-size:.875rem;overflow-wrap:anywhere}.group-panel li>label,.student-placements li>label{display:block;margin-block:.6rem;font-size:.8rem}.group-panel button{font-size:.8rem;margin-top:.35rem}.group-panel details>summary{padding:.6rem 0}.group-panel .chat-area{margin-top:.75rem}#draft-distribute input{max-width:140px}.review-layout{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.6fr);gap:1.5rem;align-items:start}.review-requests{list-style:none;padding:0;margin:0}.review-requests>li{padding-block:1rem;border-top:1px solid var(--border);overflow-wrap:anywhere}.review-requests .facts{font-size:.8rem;grid-template-columns:1fr;gap:.15rem}.review-requests .facts dd{margin-bottom:.5rem}.review-requests button{font-size:.8rem}.review-detail{position:sticky;top:1rem}.confirmation{background:var(--accent-soft);border:1px solid #d9daf2;padding:1rem;border-radius:7px;margin-top:1rem}@media(min-width:901px){.group-members:not([open])>:not(summary){display:none}}@media(max-width:900px){.workspace-grid{grid-template-columns:1fr}.workspace-support{grid-column:1;grid-row:1}.workspace-grid>#assignment-group-chat{grid-column:1;grid-row:2}.group-panels{grid-template-columns:1fr}}@media(max-width:700px){.conversation-layout,.review-layout{grid-template-columns:1fr}.conversation-layout.has-selection .conversation-sidebar,.conversation-layout:not(.has-selection) .conversation-main{display:none}.conversation-back{display:inline-flex;margin-bottom:1rem}.review-detail{position:static}}.class-admin-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.25rem}.public-home{max-width:800px;margin:2rem auto;padding:2.5rem}.public-home>p{max-width:42rem}.assignment-report-title{font-weight:650;font-size:1.1rem}:root{--font-title: clamp(1.65rem,3vw,2rem)}.page-heading{align-items:flex-start}.deadline-line{display:flex;align-items:center;gap:.5rem;font-size:.85rem;margin-bottom:.65rem}.deadline-line svg{color:var(--accent)}.assignment-brief p{margin-block:.5rem;font-size:.9rem;max-width:65rem}.disabled-meeting h3{display:flex;gap:.5rem;align-items:center}.disabled-meeting p{margin-block:.4rem}.disabled-meeting [role=status]{font-size:.875rem}.disabled-meeting .help{font-size:.8rem}.stream-area .chat-log{height:clamp(220px,35vh,350px)}@media(max-width:700px){.assignment-context{padding-block:.5rem;margin-bottom:1rem}.assignment-context details{margin-block:.5rem}.page-heading>a[href="#assignment-group-chat"]{display:none}.workspace-support{display:grid;grid-template-columns:1fr;gap:.65rem}.workspace-support>*+*{margin-top:0}.workspace-support .panel{padding:.8rem 1rem}.disabled-meeting .help{margin-bottom:0}.workspace-grid{gap:.8rem}.scope-nav{margin-block:.75rem 1.25rem}.page-heading{margin-bottom:1rem}.conversation-title{font-size:1.15rem}}.group-editor.draft-editor{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);align-items:start}.draft-editor>:not(section){grid-column:1 / -1}.draft-editor>section{grid-column:2}.draft-editor>section[aria-labelledby=draft-new-group]{grid-column:1;grid-row:span 4}.draft-editor .group-panels{grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr))}.group-editor>section>form{max-width:680px}section[aria-labelledby=draft-distribute] input{max-width:140px;margin-bottom:.75rem}.request-status{margin-block:.4rem}@media(max-width:900px){.group-editor.draft-editor{grid-template-columns:1fr}.draft-editor>section,.draft-editor>section[aria-labelledby=draft-new-group]{grid-column:1;grid-row:auto}}.chat-log:empty{height:auto;min-height:0;padding:0;border:0;margin:.5rem 0}.draft-editor section[aria-labelledby=draft-distribute] input{max-width:140px}.published-editor.single-group{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);align-items:start}.published-editor.single-group>:not(section):not(.group-panels){grid-column:1 / -1}.published-editor.single-group>.group-panels{grid-column:1;grid-row:span 3;grid-template-columns:1fr}.published-editor.single-group>section{grid-column:2}@media(max-width:900px){.published-editor.single-group{grid-template-columns:1fr}.published-editor.single-group>.group-panels,.published-editor.single-group>section{grid-column:1;grid-row:auto}}summary{min-height:32px;padding-block:.25rem}.roster-group-setup label.form-field{display:block;max-width:240px}.roster-group-setup label.form-field input{max-width:240px}.roster-reservations{list-style:none;padding:0}.roster-reservations li{display:grid;gap:3px;padding:10px 0;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.recipient-email{display:block;overflow-wrap:anywhere;font-size:.875rem;color:var(--text-muted, #536174)}.recipient-list button{display:block;text-align:left;width:100%;min-width:0}.group-expander{text-align:left;overflow-wrap:anywhere}.group-panel{min-width:0}
