.student-setup-card{box-sizing:border-box;width:min(560px,100%);margin:12px auto 32px;padding:28px 32px;background:#fff;border:1px solid #e3e9f0;border-radius:16px;box-shadow:0 8px 30px #0a3c9109}.student-setup-heading{text-align:center;margin-bottom:24px}.student-setup-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff3cc;color:#0a3c91;border-radius:12px;font-size:28px}.student-setup-heading h1{font-size:28px;margin:12px 0 6px}.student-setup-heading p{margin:0;color:#243e59;font-weight:600}.student-setup-heading p span{color:#697887;font-weight:400}.student-names-label{display:grid;gap:9px;font-size:14px;font-weight:650}.student-names-label textarea{box-sizing:border-box;width:100%;resize:vertical;min-height:150px;max-height:350px;background:#f5f7fa;border:1px solid #d8e1eb;border-radius:10px;padding:15px;font:16px/1.65 system-ui;color:#172b40}.student-names-label textarea::placeholder{color:#929daa}.student-names-label textarea:focus{outline:2px solid #62bbff;outline-offset:2px}.student-entry-help,.student-login-note{font-size:13px;line-height:1.5;color:#677789;margin:10px 0}.student-login-note{padding:12px 14px;background:#edf6ff;border-radius:8px;color:#244867}.student-setup-actions{display:flex;justify-content:center;gap:12px;margin-top:24px;flex-wrap:wrap}.student-setup-actions button{min-width:130px;padding:12px 18px;border:0;border-radius:8px;color:white;font-size:15px;font-weight:650}.student-setup-actions button[type=submit]{background:#237a45}.student-setup-actions button[type=button]{background:#b9363e}.student-setup-actions button:disabled{opacity:.55}.student-setup-card #student-results .learner{margin-top:20px}.student-setup-card #new-student-status:empty{display:none}@media(max-width:600px){.student-setup-card{padding:22px 18px;margin-top:0}.student-setup-heading h1{font-size:25px}}
.class-editor-dialog{max-height:calc(100dvh - 32px);overflow-y:auto}.class-card-title h2{overflow-wrap:anywhere;min-width:0}.class-edit-pencil{min-width:44px!important;min-height:44px!important;flex-shrink:0}.student-setup-card input,.student-setup-card textarea{max-width:100%}.student-setup-actions button,.class-editor-actions button{min-height:44px}@media(max-width:480px){.student-setup-actions button,.class-editor-actions button{flex:1;min-width:100px}.classes-page-heading{gap:12px}.classes-page-heading h1{font-size:28px}.class-editor-dialog{padding:18px}.student-setup-card{padding:20px 16px}.student-setup-heading p{overflow-wrap:anywhere}}
.student-directory-toolbar{display:flex;align-items:center;gap:18px;margin:20px 0}.student-class-filter{position:relative}.student-class-filter summary{cursor:pointer;padding:12px 16px;background:white;border:1px solid #d4dfe9;border-radius:8px}.student-class-filter>div{position:absolute;top:100%;left:0;z-index:10;min-width:240px;background:white;padding:14px;border:1px solid #d4dfe9;border-radius:8px;box-shadow:0 8px 20px #1232}.student-class-filter label{display:flex;align-items:center;gap:10px;padding:8px}.student-class-filter input{width:auto}.student-table-scroll{overflow-x:auto;background:white;border-radius:12px;border:1px solid #dce5ed}.student-directory-table{border-collapse:collapse;width:100%;min-width:700px}.student-directory-table th,.student-directory-table td{text-align:left;padding:14px;border-bottom:1px solid #e6ecf2}.student-directory-table th{background:#f1f6fa;color:#456}.student-directory-table img{width:42px;height:42px;object-fit:contain}.student-directory-table form{display:flex;gap:8px;flex-wrap:wrap;max-width:260px}.student-directory-table input{width:140px;padding:10px;font-size:16px;color:#123}.student-directory-table button{padding:10px;min-height:44px}.student-directory-table small{flex-basis:100%;color:#617386}
.student-directory-table{font-size:14px}.student-directory-table th,.student-directory-table td{padding:10px 12px}.student-directory-table form{min-width:235px;max-width:260px}.student-directory-table small{font-size:11px;line-height:1.3}.student-directory-table input{font-size:14px;width:132px}.student-directory-table button{font-size:13px}.student-directory-table td{height:auto}
.student-directory-table tbody tr:nth-child(odd){background:white}.student-directory-table tbody tr:nth-child(even){background:#fcf8f0}.student-directory-table img{border-radius:50%;background:#edf4fb;border:1px solid #dce5ef;padding:5px;box-sizing:border-box;width:46px;height:46px}.student-directory-table input[type=checkbox]{width:20px;height:20px;accent-color:#0a3c91}.student-bulk-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0}.student-bulk-actions select{padding:10px;max-width:100%;min-height:44px}.student-row-editor label{display:grid;gap:6px;margin-bottom:12px}.student-row-editor input{text-align:left}
.student-bulk-actions button,.student-bulk-actions button:disabled{width:auto;flex:0 0 auto;min-height:44px;padding:10px 14px}.student-bulk-actions p:empty{display:none}
body.student-workspace{background:#f3f7fc;color:#152f50}.student-workspace>header{display:none}.student-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 5%;background:white;border-bottom:1px solid #dce7f3}.student-topbar nav{display:flex;gap:12px;margin:0}.student-topbar button{display:grid;place-items:center;width:46px;height:46px;padding:10px;border:0;background:#e7f2ff;color:#0a3c91;border-radius:12px}.student-topbar .student-home{width:115px;height:58px;padding:0;background:none}.student-home img{width:110px;height:55px;object-fit:contain}.student-home-content{padding:12px 0 30px}.student-home-content h1{font-size:28px;margin:6px 0}.student-eyebrow{font-size:13px;color:#526779}.student-class-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,330px));gap:22px;margin-top:26px}.student-class-card{padding:0;text-align:left;overflow:hidden;border:1px solid #dce7f3;border-radius:16px;background:white;color:#152f50}.student-class-banner{display:flex;flex-direction:column;gap:14px;padding:22px;background:#0a3c91;color:white}.student-class-banner>strong{font-size:23px}.student-lesson-title{font-size:14px}.student-class-body{display:flex;flex-direction:column;gap:24px;padding:22px}.student-class-open{color:#0a3c91}.student-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.student-stage{display:flex;flex-direction:column;gap:6px;text-align:center;font-size:11px}.student-stage small{font-size:10px}.student-stage-track{height:7px;background:#ffffff40;border-radius:5px;overflow:hidden}.student-stage-track>span{display:block;height:100%;background:#ffd36b}.student-empty,.student-assignment{padding:24px;background:white;border-radius:16px;margin:18px 0}.student-signout{display:block;margin:20px auto 0}.student-workspace .credentials{margin-top:18px}@media(max-width:480px){.student-topbar{padding:14px 16px;gap:10px;flex-wrap:wrap}.student-topbar .student-home{margin:auto}.student-topbar nav{width:100%;justify-content:center}.student-class-grid{grid-template-columns:minmax(0,1fr)}.student-workspace #pilot-main{padding:18px}.student-home-content h1{font-size:24px}}
.student-topbar{background:#033071;color:#fff;border-bottom:0}.student-topbar nav button{background:transparent;color:#ffd16a}.student-topbar nav button svg{filter:drop-shadow(0 1px 0 #06265c)}.student-topbar nav button:hover,.student-topbar nav button:focus-visible{background:#ffffff18;color:#62bbff}
.student-workspace #pilot-main{background:#fff;border-radius:16px;margin:24px auto;padding:24px;width:calc(100% - 48px);box-sizing:border-box}
.student-workspace #pilot-main>.student-empty{padding:0;margin:0;background:transparent;border-radius:0}
.student-workspace #pilot-main>.student-home-content{padding:0}
.student-workspace #pilot-main>.credentials{margin:0 auto;box-shadow:none;border:0;background:transparent;padding:0;max-width:560px}
@media(max-width:480px){.student-workspace #pilot-main{width:calc(100% - 28px);margin:18px auto;padding:18px}}
.student-class-heading{display:flex;align-items:center;gap:12px}.student-class-heading strong{font-size:23px;min-width:0;overflow-wrap:anywhere}.student-math-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:50%;background:#ffffff18;color:#ffd16a;border:1px solid #ffd16a66}.student-math-icon svg{width:30px;height:30px}
body.student-workspace dialog::backdrop{background:rgba(10,35,65,.28);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.student-home-content h1.student-welcome{font-size:30px;line-height:1.25;margin:8px 0 20px;color:#0a3c91}@media(max-width:480px){.student-home-content h1.student-welcome{font-size:25px}}
.student-workspace .journey-heading{justify-content:flex-start;flex-wrap:nowrap;gap:14px}.student-workspace .student-class-back{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;background:#ffd16a;border:2px solid #e5ad37;border-radius:12px}.journey-node.journey-assigned{background:#ffd16a!important;border-color:#fff0ba!important;box-shadow:0 7px 0 #dba22b,0 11px 0 #f7edcf}.student-workspace .journey-heading h1{font-size:28px}
.student-directory-table tr[data-open-student]{cursor:pointer}.student-directory-table tr[data-open-student]:focus-visible{outline:3px solid #62bbff;outline-offset:-3px}.student-record-dialog{width:min(760px,calc(100vw - 32px));max-height:85dvh;overflow:auto;border:0;border-radius:24px;padding:28px;color:#17334d;background:white;box-shadow:0 20px 80px #0a3c9140}.student-record-dialog::backdrop{background:#102b494d;backdrop-filter:blur(5px)}.student-record-close{display:block;margin-left:auto;width:42px!important;min-width:42px;min-height:42px;padding:0!important;background:#fff0c2;color:#0a3c91;border:0;border-radius:50%;font-size:28px}.student-record-heading{display:flex;align-items:center;gap:16px}.student-record-heading img{width:64px;height:64px;border-radius:50%;background:#f5f0e7}.student-record-heading h2{margin:0}.student-record-note{color:#566574;font-size:.85rem}.student-record-dialog details{margin:14px 0;padding:14px;background:#f7f9fc;border-radius:14px}.student-record-dialog summary{cursor:pointer;font-weight:700}.student-record-dialog dd{margin:6px 0 14px 12px;overflow-wrap:anywhere}@media(max-width:600px){.student-record-dialog{padding:16px}.student-record-heading img{width:48px;height:48px}.student-record-heading h2{font-size:1.25rem}}
.student-record-dialog{position:fixed;width:min(680px,calc(100vw - 32px));padding:26px;font-size:15px;line-height:1.55}
.student-record-dialog .student-record-close{position:absolute;top:16px;right:16px;margin:0;z-index:1;line-height:1}
.student-record-dialog .student-record-heading{display:flex;justify-content:flex-start;align-items:center;flex-wrap:nowrap;gap:14px;max-width:none;margin:0 0 20px;padding:4px 48px 18px 0;border-bottom:1px solid #e5ebf2}
.student-record-dialog .student-record-heading img{width:60px;height:60px;flex:0 0 60px;object-fit:contain;border:2px solid #f1d487}
.student-record-dialog .student-record-heading>div{min-width:0}
.student-record-dialog .student-record-heading h2{margin:0;font-size:24px;line-height:1.2;overflow-wrap:anywhere}
.student-record-dialog .student-record-heading p{margin:6px 0 0;color:#607184;font-size:14px;overflow-wrap:anywhere}
.student-record-dialog .student-record-note{margin:0 0 14px}
.student-record-dialog details{margin:10px 0;padding:13px 16px;border:1px solid #e3eaf3;background:#f8faff}
.student-record-dialog summary{padding:2px 0;color:#0a3c91}
.student-record-dialog dl{margin:12px 0 0}.student-record-dialog dd{margin:3px 0 12px 0}.student-record-dialog dd:last-child{margin-bottom:0}.student-record-dialog ul{padding-left:20px;margin:8px 0}.student-record-dialog li{margin:5px 0}.student-record-dialog p{margin-top:8px;margin-bottom:10px}
.student-record-dialog[open]{animation:student-record-enter 350ms ease-out both}
.student-record-dialog[open]::backdrop{animation:student-record-backdrop 350ms ease-out both}
@keyframes student-record-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes student-record-backdrop{from{opacity:0}to{opacity:1}}
@media(max-width:600px){.student-record-dialog{padding:20px 16px;width:calc(100vw - 24px)}.student-record-dialog .student-record-close{top:12px;right:12px}.student-record-dialog .student-record-heading{gap:10px;padding-right:42px}.student-record-dialog .student-record-heading img{width:48px;height:48px;flex-basis:48px}.student-record-dialog .student-record-heading h2{font-size:21px}.student-record-dialog details{padding:12px}}
@media(prefers-reduced-motion:reduce){.student-record-dialog[open],.student-record-dialog[open]::backdrop{animation:none}}
.student-bulk-actions button:disabled{background:#e7ebef!important;color:#7a8592!important;border-color:#d9dfe5!important;cursor:not-allowed;opacity:1;width:auto;box-shadow:none}.student-move-dialog{width:min(520px,calc(100vw - 32px))}.student-move-current{margin:16px 0;padding:14px;background:#f5f7fa;border-radius:12px;text-align:left}.student-move-current h3{font-size:15px;margin:0 0 8px}.student-move-current ul{list-style:none;padding:0;margin:0;max-height:180px;overflow:auto}.student-move-current li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;flex-wrap:wrap}.student-move-current li span{color:#63758a}.student-move-dialog label{display:grid;gap:8px;text-align:left}.student-move-dialog select{width:100%;padding:12px;border:1px solid #d2dce7;border-radius:10px;font:inherit;background:#f5f7fa}.student-move-dialog button:disabled{background:#e7ebef!important;color:#7a8592!important;width:auto;cursor:not-allowed}
[data-student-nav=Notifications]{position:relative}.student-notification-badge{position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;border-radius:12px;padding:0 4px;background:#c73843;color:white;font:700 11px/19px system-ui;text-align:center}.student-notification-badge[hidden]{display:none}.student-notification-dialog{width:min(540px,calc(100vw - 24px));max-height:80dvh;overflow:auto;border:0;border-radius:22px;padding:26px;background:white;color:#17334d}.student-notification-dialog::backdrop{background:#102b494d;backdrop-filter:blur(5px)}.student-notification-item{display:block;width:100%;text-align:left;padding:15px;margin:8px 0;background:#f4f7fb;color:#17334d;border:1px solid #e0e7ef;border-radius:12px}.student-notification-item.is-unread{border-left:4px solid #ffc541;background:#edf6ff}.student-notification-item small{display:block;margin-top:5px;color:#607184}.student-topbar nav{flex-wrap:wrap}
.student-assignment-card{display:flex;flex-direction:column;min-width:0;}.student-assignment-card .student-class-banner{min-height:115px;justify-content:center;}.student-assignment-card h2{margin:0;font-size:1.3rem;line-height:1.3;color:white;overflow-wrap:anywhere;}.student-assignment-card .student-class-body{flex:1;justify-content:space-between;}.student-assignment-card .student-math-icon{color:#edbd52;flex-shrink:0;}#pilot-main .student-assignment-card button{width:auto;align-self:flex-start;border-radius:12px;padding:10px 16px;min-height:44px;font-size:.9rem;}.student-assignment-grid{align-items:stretch;}
dialog.student-notification-dialog:has(>.roji-modal-close){padding:20px 24px 24px}
.student-notification-dialog>h2{margin:0 32px 16px;text-align:center;line-height:1.3}
.student-notification-dialog>.roji-modal-close{top:16px;right:14px;width:30px!important;min-width:30px;height:30px;min-height:30px;font-size:23px}
.teacher-students-submenu[hidden]{display:none}.teacher-students-submenu{display:grid;gap:3px}.teacher-sidebar .student-menu-chevron{margin-left:auto;transition:transform .2s}.teacher-sidebar [aria-expanded=true]>.student-menu-chevron{transform:rotate(180deg)}
.classroom-slide #student-answer:not(.factor-placement){grid-column:1/-1;display:flex;flex-direction:column;align-items:center;gap:14px;width:min(100%,560px);margin:20px auto 8px;box-sizing:border-box}
.classroom-slide #student-answer:not(.factor-placement)>label{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;text-align:center;font-weight:750;color:#123e88}
.classroom-slide #student-answer:not(.factor-placement) textarea,.classroom-slide #student-answer:not(.factor-placement) input,.classroom-slide #student-answer:not(.factor-placement) select{width:100%;box-sizing:border-box;border:2px solid #bcd7ec;border-radius:15px;background:#fff;padding:14px;font:inherit;text-align:left;min-width:0}
.classroom-slide #student-answer:not(.factor-placement)>button{width:auto;min-width:150px;max-width:100%;align-self:center;border-radius:14px;padding:11px 22px}
.classroom-slide #student-answer:not(.factor-placement)+#activity-feedback{grid-column:1/-1;width:fit-content;max-width:100%;box-sizing:border-box;margin:10px auto;text-align:center}
body{margin:0;background:#f3f7fc;font:16px system-ui;color:#152f50}button{font:inherit;cursor:pointer}button:focus-visible{outline:3px solid #62bbff;outline-offset:4px}.student-topbar{padding:20px 5%;min-height:68px}.student-topbar nav{display:flex;flex-wrap:wrap}.student-topbar button svg{width:25px;height:25px}#pilot-main{max-width:none}.student-class-body{display:flex;flex-direction:column;gap:30px;padding:24px}.student-class-heading{display:flex;align-items:center;gap:14px}.student-class-heading strong{font-size:24px}.student-math-icon{display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;border:1px solid #ffd16a88;border-radius:50%;background:#ffffff20;color:#ffd16a}.student-math-icon svg{width:32px;height:32px}.student-class-banner{min-height:180px;justify-content:space-between}.student-lesson-title{font-size:17px}.student-stage{font-size:12px}.student-stage small{font-size:12px}.student-class-grid{grid-template-columns:repeat(auto-fit,minmax(260px,360px))}.student-home-content{min-height:430px}dialog{max-width:min(600px,85vw);border:1px solid #dce7f3;border-radius:20px;padding:24px;color:#152f50}body:not(.student-workspace) #pilot-main{max-width:600px;margin:40px auto;padding:24px}input{display:block;margin:16px 0;padding:12px;width:90%}@media(max-width:600px){.student-topbar{flex-wrap:wrap}.student-topbar nav{gap:3px}.student-topbar nav button{width:36px;height:40px;padding:5px}.student-class-grid{grid-template-columns:minmax(0,1fr)}}
.student-workspace .student-class-card{display:block;padding:0!important;text-align:left;border:1px solid #dce7f3!important;border-radius:16px!important;background:#fff!important;color:#152f50;width:100%;box-shadow:none}.student-workspace .student-class-banner{background:#0a3c91!important;padding:24px;min-height:195px}.student-workspace .student-topbar{background:#033071!important}.student-workspace .student-class-body{background:white}.student-workspace .student-class-card:hover{transform:none}.student-workspace .student-class-card:focus-visible{outline:3px solid #62bbff;outline-offset:4px}
