/* Classroom, enrollment, and district workspaces share the dashboard design. */
.field-help{font-size:11px;font-weight:400;line-height:1.6;color:#6b7b94}.setup-help-link{font-size:12px;font-weight:600;color:#4267b2;text-decoration:none}.setup-help-link:hover{text-decoration:underline}.guide-main{max-width:1100px}.guide-intro{padding:21px 24px;background:#edf3ff;border:1px solid #dce6fa;border-radius:14px;margin-bottom:24px}.guide-intro>strong{font-size:14px;color:#354f7e}.guide-intro p,.guide-card>p,.guide-card details>p{font-size:14px;line-height:1.8;margin:9px 0 0;color:#52647e}.guide-card{scroll-margin-top:24px;margin-bottom:24px;padding:30px}.guide-card h2{font-size:21px;margin:7px 0 18px}.guide-steps{list-style:none;counter-reset:guide-steps;padding:0;margin:24px 0}.guide-steps>li{counter-increment:guide-steps;position:relative;padding-left:43px;margin-bottom:24px}.guide-steps>li:before{content:counter(guide-steps);position:absolute;left:0;top:1px;width:28px;height:28px;border-radius:8px;background:#f0f4fc;color:#4666a4;display:grid;place-items:center;font-size:12px;font-weight:650}.guide-steps strong{font-size:14px;color:#334763}.guide-steps p{font-size:13px;color:#60718b;line-height:1.8;margin:5px 0 0}.guide-card>.button{margin-top:18px}.guide-questions{margin:20px 0 0}.guide-questions dt{font-size:14px;font-weight:600;color:#334763;margin-top:23px}.guide-questions dd{font-size:13px;line-height:1.8;color:#60718b;margin:7px 0 0}.guide-card summary{font-size:13px;line-height:1.7}.setup-guide .nav{justify-content:flex-start}@media(max-width:620px){.guide-card{padding:23px 20px}.guide-intro{padding:19px 20px}.guide-intro p,.guide-card>p,.guide-card details>p{font-size:13px}.guide-card h2{font-size:19px}.guide-steps>li{padding-left:37px}.setup-guide .nav{justify-content:center}}
.screen-display .browser-preview{width:100%;height:100%;object-fit:contain;background:#182235}.managed-viewing-card{margin-bottom:24px}.managed-viewing-card p{font-size:12px}.managed-viewing-card .share-status{margin:18px 0}.managed-setting{background:#f4f7ff;border:1px solid #e0e7f7;border-radius:8px;padding:11px 14px;margin-top:18px;font-size:12px;color:#5c739d}
.viewing-description{font-size:12px;margin:8px 0 23px}.viewing-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.viewing-form label{display:flex;flex-direction:column;gap:9px;font-size:12px;font-weight:550;color:#708099}.viewing-form input:not([type=checkbox]),.viewing-form select{width:100%;height:43px}.viewing-form>button{justify-self:start;align-self:end}.viewing-form.single{grid-template-columns:1fr}.form-section{grid-column:1/-1;border:0;border-top:1px solid var(--line);padding:24px 0 0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.form-section legend{padding:0 12px 0 0;font-size:11px;letter-spacing:.5px;font-weight:600;color:#7f8da3}.form-section.three-columns{grid-template-columns:1.25fr 1.25fr .7fr}.class-setup-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:25px;align-items:start}.setup-aside{padding:25px 3px}.setup-aside h2{font-size:13px}.setup-aside>p{font-size:11px;color:#6b7b94;margin:10px 0 26px}.setup-steps{padding:0;list-style:none;counter-reset:steps;margin:0}.setup-steps li{position:relative;padding:0 0 26px 36px;counter-increment:steps}.setup-steps li:before{content:counter(steps);position:absolute;top:0;left:0;width:24px;height:24px;display:grid;place-items:center;font-size:10px;color:#8ea0c2;border:1px solid #dde4f1;background:#f8faff;border-radius:7px}.setup-steps strong{font-size:11px;font-weight:600;color:#667894}.setup-steps p{font-size:11px;margin:5px 0 0;color:#6c7e99;line-height:1.8}.setup-aside .aside-note{border-top:1px solid var(--line);padding-top:19px;font-size:10px;line-height:1.9;margin-top:3px}.form-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:3px}.form-actions>span{font-size:10px;color:#6d7e98}.form-actions .button{min-width:136px}.roster-group-picker{grid-column:1/-1;display:flex;align-items:end;gap:12px}.roster-group-picker>label{flex:1}.roster-group-picker select{height:43px}
.viewing-form .class-website-fields{grid-column:1/-1;border:1px solid #e0e7f6;border-radius:11px;background:#fafbff;padding:20px;margin:0;min-width:0}.class-website-fields legend{font-size:11px;font-weight:650;color:#7389b4;padding:0 7px}.viewing-form textarea,.class-policy-form textarea{width:100%;font:12px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;padding:12px 13px}.viewing-form .inline-check,.inline-check{display:flex;align-items:center;flex-direction:row;gap:9px;font-size:12px;font-weight:500;margin:0 0 17px;color:#73839b}.inline-check input{width:15px;height:15px}.class-website-fields p{font-size:11px;margin:11px 0 0;color:#6b7e99;line-height:1.8}.class-bar{display:flex;align-items:center;gap:17px;padding:23px 25px;margin-bottom:20px}.class-bar>div:first-child{flex:1}.class-bar h2{font-size:18px;font-weight:650}.class-bar p{font-size:12px;margin:5px 0 0}.join-code{padding:0 18px;border-left:1px solid var(--line)}.join-code small{display:block;font-size:9px;letter-spacing:1px;color:#6e819e}.join-code strong{display:block;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:17px;font-weight:550;color:#637ba9;letter-spacing:1.5px;margin-top:5px}.class-websites-panel{display:flex;align-items:flex-start;gap:28px;padding:23px 25px;margin-bottom:27px}.class-websites-panel>div{flex:1;min-width:0}.class-websites-panel h2{font-size:13px}.class-websites-panel p{font-size:11px;line-height:1.9;margin:8px 0 0;overflow-wrap:anywhere}.class-policy-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px;flex:1.5}.class-policy-form>.inline-check{grid-column:1/-1;margin-bottom:3px}.class-policy-form>label{font-size:11px;color:#7e8ea7}.class-policy-form textarea{display:block;margin-top:8px}.class-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.class-toolbar h2{font-size:15px}.class-toolbar h2 span{display:inline-block;font-size:10px;font-weight:500;letter-spacing:0;color:#8093b4;background:#edf2fb;border-radius:6px;padding:5px 8px;margin-left:9px}.grid-tools{display:flex;align-items:center;gap:12px}.grid-tools>label,.grid-tools>span{font-size:10px;color:#6e8098}.grid-tools select{height:34px;font-size:11px;padding:6px 9px;margin-left:7px}.grid-tools .button{min-height:34px;padding:7px 11px;font-size:10px}.empty-class{border:1px dashed #d6deed;border-radius:14px;background:#fff;text-align:center;padding:65px 25px}.empty-class h2{font-size:15px;color:#697d9b}.empty-class p{font-size:12px;max-width:460px;line-height:1.8;margin:12px auto 0;color:#71829c}.empty-icon{display:grid;place-items:center;width:49px;height:49px;background:#f1f5fc;border-radius:13px;margin:0 auto 19px;color:#97a9c8}.empty-icon svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.screen-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.student-screen{border:1px solid #e1e6ef;border-radius:12px;background:white;overflow:hidden;min-width:0;transition:border-color .15s,box-shadow .15s}.student-screen:hover{border-color:#c4d1eb;box-shadow:0 3px 12px #1e3a6310}.screen-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px}.screen-heading strong{font-size:12px;font-weight:600;overflow-wrap:anywhere}.student-name{display:flex;align-items:center;gap:9px;min-width:0}.student-avatar{width:25px;height:25px;background:#f0f3fb;color:#8499c1;border-radius:7px;display:grid;place-items:center;font-size:9px;font-weight:650;flex-shrink:0}.screen-status{display:inline-block;color:#8a6a3b;background:#faf5ec;border-radius:5px;padding:4px 6px;font-size:9px;white-space:nowrap}.screen-status.live{background:#edf8f2;color:#3f7c5f}.screen-display{aspect-ratio:16/9;background:#f1f4f9;position:relative;display:grid;place-items:center;overflow:hidden}.screen-display video{width:100%;height:100%;object-fit:contain;background:#182235}.screen-placeholder{display:block;text-align:center;padding:25px;font-size:11px;color:#71839f;line-height:1.8}.screen-controls{display:flex;gap:7px;padding:10px 12px;justify-content:flex-end;border-top:1px solid var(--line)}.screen-controls .button{font-size:10px;min-height:29px;padding:5px 9px;border-radius:6px}.screen-grid.compact{grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:15px}.compact .screen-heading{padding:11px 12px}.compact .screen-heading strong{font-size:11px}.compact .student-avatar{width:22px;height:22px;font-size:8px}.compact .screen-status{font-size:8px}.compact .screen-controls{padding:8px;gap:5px}.compact .screen-controls .button{min-height:27px;padding:4px 8px;font-size:9px}.student-screen.policy-pending{border-color:#dbc69f}body.classroom-focused>.sidebar{display:none}body.classroom-focused>.shell{margin-left:0}body.classroom-focused>.shell>header,body.classroom-focused main>.page-heading{display:none}.classroom-focused main{padding-top:22px;max-width:none}.classroom-focused .class-websites-panel{display:none}.classroom-focused .screen-grid.compact{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.student-body{min-height:100vh}.student-brand{font-size:21px;font-weight:700;letter-spacing:-.7px;color:#26364f;text-decoration:none}.student-main{max-width:720px;padding-top:45px;margin-left:auto;margin-right:auto}.code-input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1px;text-transform:uppercase}.student-class{border-bottom:1px solid var(--line);padding-bottom:19px;margin-bottom:22px}.student-class p{font-size:12px;margin:5px 0 0}.share-status{font-size:14px;font-weight:600;color:#8d9db6}.share-status.live{border:1px solid #dceee3;border-radius:9px;background:#f0f9f4;padding:13px 15px;color:#619c7c}.share-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}#sharing-help{font-size:12px}#local-preview{width:100%;max-height:330px;object-fit:contain;background:#172435;margin-top:24px;border-radius:10px}.teacher-link{display:inline-block}.classroom-entry{margin-bottom:21px}.classroom-entry p{font-size:12px;margin:9px 0 19px}.classroom-entry .button{margin-right:8px}
.roster-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center;gap:20px;margin-bottom:25px}.roster-stats>div{padding:22px 25px;background:#fff;border:1px solid var(--line);border-radius:13px;display:flex;flex-direction:column;gap:8px}.roster-stats strong{font-size:29px;font-weight:650;letter-spacing:-.9px;line-height:1.2}.roster-stats span{font-size:11px;color:#6b7e99}.roster-section-heading{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-bottom:23px}.roster-section-heading>div{min-width:0}.roster-section-heading p{font-size:12px;max-width:740px;margin:7px 0 0}.roster-import{margin-bottom:24px}.district-sections{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;align-items:start}.district-sections>.card{height:100%;margin-bottom:0}.district-sections .roster-section-heading{flex-direction:column;gap:17px}.district-sections+section{margin-top:24px}.roster-table-wrap{overflow:auto;margin-top:18px;border:1px solid var(--line);border-radius:9px}.roster-table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left;font-size:12px}.roster-table th{font-size:9px;text-transform:uppercase;letter-spacing:.7px;font-weight:600;color:#6e8099;background:#fafbfe}.roster-table th,.roster-table td{padding:14px 17px;border-bottom:1px solid #edf0f6}.roster-table tbody tr:last-child td{border-bottom:0}.roster-table td{color:#7b8aa2}.roster-table td:nth-child(2){font-weight:550;color:#465976}.roster-table td:first-child{font-family:ui-monospace,SFMono-Regular,monospace;font-size:10px;color:#70829f}.roster-table tr:hover{background:#f9fbff}.roster-pagination{display:flex;align-items:center;gap:15px;margin:22px 0 0;font-size:11px;color:#6f809a}.roster-pagination .button{min-height:34px;font-size:10px}.roster-search{display:flex;gap:9px;align-items:end}.roster-search label{font-size:11px;color:#6a7c98}.roster-search input{display:block;min-width:210px;margin-top:8px}.roster-group-list{columns:3;font-size:11px}.roster-group-list p{break-inside:avoid;padding:9px 0;margin:0}#preview-errors{white-space:pre-line}#import-preview h3{font-size:16px;margin-top:28px}#import-preview>p{font-size:12px}#import-preview>.button,#google-sync-preview>.button{margin-top:18px}#roster-file{height:auto;padding:12px;background:#fafbff;border-style:dashed;font-size:11px}#roster-file::file-selector-button{font:inherit;border:1px solid #dfe5f0;border-radius:6px;background:white;padding:7px 10px;margin-right:10px;color:#7489b0}.roster-import .viewing-form>p{margin:0;font-size:10px}.roster-import .inline-check{font-size:11px;margin-bottom:0}.enrollment-panel{margin-bottom:23px}.enrollment-panel h2{margin-bottom:9px}.enrollment-panel p{font-size:12px}.enrollment-panel form{display:flex;align-items:end;gap:11px;margin-top:20px}.enrollment-panel label{display:block;flex:1;font-size:12px;color:#8192ad}.enrollment-panel input{display:block;width:100%;margin-top:9px}.enrollment-classes{display:grid;gap:9px;margin:18px 0}.enrollment-class{display:flex;align-items:center;gap:13px;border:1px solid var(--line);padding:15px;border-radius:10px}.enrollment-class div{flex:1}.enrollment-class small{display:block;font-size:10px;margin-top:5px;color:#96a6bf}.google-sync-card{margin-bottom:24px}.google-sync-card p{font-size:12px;line-height:1.8}.google-student-entry{padding:15px 0 5px}.google-student-entry p{font-size:11px;color:#6a7e9d}#district-workspace>.card{margin-bottom:24px}details{margin-top:23px;border-top:1px solid var(--line);padding-top:17px}summary{cursor:pointer;font-size:11px;color:#7186a7;font-weight:550}
@media(max-width:1300px){.class-setup-layout{grid-template-columns:minmax(0,1fr) 200px;gap:22px}.roster-stats{gap:12px}.roster-stats>div{padding:20px}.roster-stats strong{font-size:26px}.district-sections{grid-template-columns:1fr}.district-sections>.card{height:auto}.screen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.class-bar{flex-wrap:wrap}.class-bar>div:first-child{flex-basis:40%}.class-websites-panel{flex-direction:column;gap:20px}.class-policy-form{width:100%}.class-toolbar{align-items:start;flex-direction:column;gap:15px}}
@media(max-width:1000px){.class-setup-layout{grid-template-columns:1fr}.setup-aside{display:none}.form-section.three-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.roster-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.roster-stats>.button{grid-column:1/-1;justify-self:end}.roster-stats>div{padding:19px 14px}.roster-stats span{font-size:10px}.roster-stats strong{font-size:24px}.roster-section-heading{flex-direction:column;gap:17px}.roster-search{width:100%}.roster-search label{flex:1}.roster-search input{min-width:0;width:100%}.roster-group-list{columns:2}.grid-tools{flex-wrap:wrap}.screen-grid.compact{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}
@media(max-width:620px){.viewing-form,.form-section,.form-section.three-columns{grid-template-columns:1fr}.form-section{padding-top:22px}.viewing-form{gap:19px}.viewing-form label{font-size:11px}.class-website-fields p{font-size:10px}.form-actions{flex-direction:column;align-items:stretch;gap:12px}.form-actions>span{font-size:10px}.form-actions .button{width:100%}.roster-group-picker{flex-direction:column;align-items:stretch}.roster-group-picker>label{width:100%}.roster-group-picker>.button{align-self:start}.screen-grid,.screen-grid.compact{grid-template-columns:1fr}.classroom-focused .screen-grid.compact{grid-template-columns:1fr}.screen-grid.compact .screen-heading{padding:13px}.compact .screen-heading strong{font-size:12px}.compact .screen-status{font-size:9px}.compact .screen-controls .button{font-size:10px;min-height:30px}.class-bar{gap:13px;padding:21px 18px}.class-bar>div:first-child{flex-basis:100%}.join-code{border-left:0;padding:0;flex:1}.join-code strong{font-size:16px}.class-bar .button{font-size:10px;padding:7px 10px;min-height:35px}.class-websites-panel{padding:21px 18px}.class-policy-form{grid-template-columns:1fr}.class-policy-form>.button{justify-self:start}.class-toolbar h2 span{font-size:9px}.grid-tools>span{width:100%;font-size:10px}.empty-class{padding:45px 20px}.empty-class p{font-size:11px}.student-main{padding-top:30px}.student-brand{font-size:19px}.student-body>header .local-tag{font-size:7px}.roster-stats{gap:9px}.roster-stats>div{padding:18px 12px}.roster-stats strong{font-size:22px}.roster-stats span{font-size:9px}.roster-table th,.roster-table td{padding:13px}.roster-group-list{columns:1}.enrollment-panel form{flex-direction:column;align-items:stretch}.enrollment-panel label{width:100%}.enrollment-class{flex-wrap:wrap}.enrollment-class .button{font-size:10px}.district-sections{gap:21px}.roster-import .inline-check{line-height:1.7;align-items:start}.roster-import .inline-check input{margin-top:3px}#generate-codes{white-space:normal;text-align:center;width:100%}.roster-search .button{padding:9px 12px}.classroom-focused main{padding:20px}.classroom-focused .class-bar{margin-bottom:20px}}

.class-websites-panel .policy-editor{flex:1.5;min-width:0;border:0;padding:0;margin:0}.policy-editor>summary{list-style-position:inside;text-align:right;font-size:11px;color:var(--blue)}.policy-editor[open]>summary{margin-bottom:19px}.class-websites-panel:has(.policy-editor:not([open])){align-items:center}.class-websites-panel .class-policy-form{width:100%}@media(max-width:1300px){.class-websites-panel .policy-editor{width:100%;flex:auto}.policy-editor>summary{text-align:left}.class-websites-panel:has(.policy-editor:not([open])){align-items:flex-start;gap:14px}}
