:root{font-family:Inter,ui-rounded,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#233229;background:#eef3ef;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{border:0;border-radius:14px;padding:.95rem 1.15rem;font-weight:750;background:#4f7a65;color:#fff;cursor:pointer;box-shadow:0 5px 14px #2332291f}button:hover{transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.65;transform:none}.secondary{background:#e4ebe6;color:#30463a}.small{padding:.65rem .9rem}.appShell{min-height:100vh;display:flex;flex-direction:column}.topbar{min-height:68px;padding:.8rem clamp(1rem,4vw,3rem);background:#fff;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dfe7e1}.brandButton{background:transparent;box-shadow:none;color:#304f3e;font-size:1.15rem;padding:0}.headerActions{display:flex;gap:.6rem;align-items:center}.signOutButton{background:transparent;color:#4f6659;box-shadow:none;padding:.55rem .7rem}.pilotTag,.staffPill,.countPill{background:#edf2ee;border:1px solid #d8e2da;border-radius:999px;padding:.55rem .8rem;font-size:.85rem}.countPill{min-width:2.25rem;text-align:center;font-weight:800}.page{width:min(1440px,100%);margin:0 auto;padding:clamp(1.25rem,2.4vw,2.2rem);flex:1}.centered{display:grid;place-items:center}.heroCard,.studentHome,.kioskCard,.loginCard{width:min(760px,100%);background:#fff;border-radius:26px;padding:clamp(1.4rem,5vw,3.2rem);box-shadow:0 18px 45px #2332291a}.heroCard,.loginCard{text-align:center}.loginCard{max-width:520px}.loginForm{margin-top:1.8rem;display:grid;gap:1rem;text-align:left}.loginForm label{display:grid;gap:.45rem;font-weight:750}.loginForm input{width:100%;border:1px solid #cfdad2;border-radius:12px;padding:.9rem 1rem;background:#fbfdfb;color:#233229}.loginForm input:focus{outline:3px solid rgba(79,122,101,.18);border-color:#4f7a65}.formMessage{color:#8d3030;background:#fff0f0;padding:.8rem;border-radius:12px;line-height:1.45}.eyebrow{margin:0 0 .4rem;text-transform:uppercase;letter-spacing:.09em;font-size:.75rem;font-weight:800;color:#6d7f73}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(2.2rem,7vw,4rem);margin-bottom:.6rem}h2{font-size:clamp(1.8rem,5vw,2.7rem);margin-bottom:.35rem}.subtitle,.helperText{color:#66766b;line-height:1.6}.buttonGrid{margin-top:2rem;display:grid;gap:.9rem;grid-template-columns:repeat(2,minmax(0,1fr))}.sectionHeading,.studentHeader,.xpText{display:flex;justify-content:space-between;align-items:center;gap:1rem}.teacherPage{overflow:hidden}.teacherHeading{margin-bottom:1rem}.teacherDashboard{display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,1fr) minmax(360px,1.12fr);gap:1rem;align-items:start}.panel{background:#fff;padding:1.05rem;border-radius:22px;box-shadow:0 10px 26px #23322912}.dashboardPanel{min-height:0}.dashboardPanelHeader{min-height:62px;display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding-bottom:.8rem;border-bottom:1px solid #e5ece7}.dashboardPanelHeader h3{margin-bottom:0}.scrollList{height:min(64vh,660px);overflow-y:auto;overscroll-behavior:contain;padding:.75rem .25rem .25rem 0;scrollbar-gutter:stable}.selectionButton{width:100%;margin-bottom:.65rem;display:flex;align-items:center;justify-content:space-between;gap:.85rem;background:#f2f6f3;color:#2e4437;box-shadow:none;text-align:left;line-height:1.35}.selectionButton strong{flex:0 0 auto;white-space:nowrap}.studentsPanel{position:sticky;top:1rem}.studentColumn{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;padding-top:.7rem}.compactStudentCard{width:100%;min-height:68px;padding:.62rem .7rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.4rem;text-align:left;border:3px solid currentColor;border-radius:15px;box-shadow:none}.compactStudentCard h4{margin:.08rem 0 0;font-size:1.02rem;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compactStudentCard .colorLabel{font-size:.62rem}.studentStats{display:grid;gap:.12rem;justify-items:end;font-size:.76rem;font-weight:800;white-space:nowrap}.documentButton{width:100%;margin-top:.75rem;padding:.75rem}.teacherMobileTabs{display:none}.tabButton{box-shadow:none;background:#e5ece7;color:#30463a}.activeTab{background:#4f7a65;color:#fff}.studentGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.studentCard{border-radius:18px;padding:1rem;border:3px solid currentColor;background:#fff}.colorLabel{font-size:.76rem;font-weight:800;text-transform:uppercase}.red{color:#9e3030;background:#fff1f1}.purple{color:#70438c;background:#f6effb}.blue{color:#2e6094;background:#edf6ff}.green{color:#34704e;background:#edf8f1}.yellow{color:#7d6514;background:#fff9dc}.orange{color:#a35220;background:#fff2e9}.studentHeader{margin-bottom:1.4rem}.piggyBank{font-size:1.15rem;background:#fff7dc;border-radius:16px;padding:.8rem 1rem}.xpBlock{margin-bottom:1.4rem}.progressTrack{width:100%;height:18px;overflow:hidden;border-radius:999px;background:#dce6df}.progressFill{height:100%;border-radius:inherit;background:#689a7d}.dailyActions{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-bottom:1.4rem}.grolingStage{min-height:260px;display:grid;place-items:center;align-content:center;text-align:center;border-radius:22px;background:linear-gradient(#eaf5ec,#f8f4df)}.egg{font-size:5rem}blockquote{margin:1.3rem 0 0;text-align:center;font-size:1.05rem;font-weight:700;color:#4d6255}.kioskCard{text-align:center}.kioskGrid{margin:1.4rem 0}.buttonCard{min-height:105px;box-shadow:none;display:grid;gap:.3rem;place-items:center;font-size:1.05rem}footer{padding:1rem;text-align:center;color:#6c7c71;font-size:.85rem}@media(max-width:1120px){.teacherDashboard{grid-template-columns:minmax(250px,1fr) minmax(250px,1fr) minmax(300px,1fr)}.studentColumn{grid-template-columns:1fr}}@media(max-width:980px){.teacherMobileTabs{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:.9rem}.teacherDashboard{display:block}.dashboardPanel{display:none}.dashboardPanel.mobilePanelActive{display:block}.studentsPanel{position:static}.scrollList{height:min(58vh,600px)}.studentColumn{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.buttonGrid,.dailyActions{grid-template-columns:1fr}.studentGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.sectionHeading{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.teacherMobileTabs,.studentColumn,.studentGrid{grid-template-columns:1fr}.pilotTag{display:none}}
