@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/vazirmatn-arabic-wght-normal-Cafbb7Zc.woff2) format("woff2-variations");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/vazirmatn-latin-ext-wght-normal-tDTa1Fj6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/vazirmatn-latin-wght-normal-BFexNX-K.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:Vazirmatn Variable,Tahoma,sans-serif;color:#242d4c;background:#f6f8ff;font-synthesis:none;--primary: #494cda;--primary-soft: #efefff;--ink: #242d4c;--muted: #596481;--line: #e4e8f4;--mint: #dcf6eb;--yellow: #ffc84d;--surface: #fff;--radius: 20px}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px}button,select,input,textarea{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid #6c64e6;outline-offset:3px}h1,h2,h3,p{margin-block:0}h1{font-size:clamp(1.55rem,3vw,2.3rem);line-height:1.4;letter-spacing:-.02em}h2{font-size:1.19rem;line-height:1.5}h3{font-size:1rem}p{line-height:1.8}svg{flex:0 0 auto;vertical-align:middle}button{cursor:pointer}button:disabled{opacity:.56;cursor:not-allowed}button,.primary,.secondary,.plain,.danger{min-height:45px;display:inline-flex;gap:.5rem;align-items:center;justify-content:center;border:1px solid transparent;border-radius:11px;padding:.54rem .88rem;font-weight:650;color:var(--ink)}.primary{background:var(--primary);color:#fff}.primary:hover:not(:disabled){background:#3b3dbf}.secondary{background:#fff;border-color:#dce1f2}.secondary:hover:not(:disabled),.plain:hover:not(:disabled){background:#f0f1ff}.plain{background:transparent;color:#4143a4}.danger{background:#fff0f2;color:#a3293b}.icon{min-width:45px;padding-inline:.4rem}label{display:grid;gap:.4rem;font-weight:600;min-width:0}input,textarea,select{min-height:45px;border:1px solid #d7dff0;border-radius:10px;padding:.55rem .7rem;color:var(--ink);background:#fff;min-width:0;max-width:100%}input::placeholder,textarea::placeholder{color:#646e8a}input[type=checkbox]{min-height:auto;width:18px;height:18px;accent-color:var(--primary)}textarea{resize:vertical}fieldset{border:1px solid var(--line);border-radius:12px;padding:.8rem;margin:0;min-width:0}legend{padding-inline:.4rem;font-weight:750}.check{display:flex;gap:.45rem;align-items:center;min-height:44px}.stack{display:grid;gap:.9rem}.stack>button{justify-self:start}.row{display:flex;align-items:center;gap:.55rem}.wrap{flex-wrap:wrap}.muted{color:var(--muted)}.spaced{margin-block-start:1rem}.narrow{max-width:560px}.loading{display:grid;min-height:100vh;place-items:center}.alert,.info{display:flex;align-items:center;gap:.55rem;padding:.7rem .9rem;border-radius:12px;overflow-wrap:anywhere;margin-block:.65rem}.alert{background:#fff0f2;color:#8b2437;border:1px solid #f4c9d1}.info{background:#edf3ff;color:#293f7e;border:1px solid #dce7ff}.startup{margin:1rem auto;width:min(90%,900px)}.wordmark{display:flex;align-items:center;gap:.65rem;font-size:1.35rem;font-weight:850}.brand-icon{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--primary);color:#fff}.login-shell{display:grid;grid-template-columns:1.12fr 1fr;width:min(960px,calc(100% - 2rem));margin:max(2rem,12vh) auto 2rem;background:#fff;border:1px solid var(--line);border-radius:27px;overflow:hidden;box-shadow:0 24px 65px #353b8512}.login-story{display:flex;flex-direction:column;min-height:492px;padding:clamp(1.4rem,4vw,3rem);background:#ebedff;border-inline-end:1px solid #e1e4ff;gap:.7rem}.login-story h1{color:#2a2e76}.login-story p{color:#474d79}.lesson-art{display:flex;align-items:center;justify-content:center;gap:1.1rem;min-height:190px;color:#4446cb}.lesson-art svg{background:#fff;box-sizing:content-box;padding:1.25rem;border-radius:32px 32px 32px 12px;transform:rotate(-9deg)}.lesson-art span:first-child{color:#8c6200;font-size:2.5rem;align-self:flex-start;margin-block-start:1.5rem}.lesson-art span:last-child{color:#6360c0;font-size:2rem;align-self:flex-end;margin-block-end:1rem}.login-form{align-self:center;padding:clamp(1.4rem,4vw,3rem)}.login-form h2{font-size:1.55rem}.login-form p{margin-block:.55rem 1.5rem}.login-form .primary{width:100%;min-height:50px}.app-shell{min-height:100vh;display:grid;grid-template-columns:218px minmax(0,1fr)}.sidebar{position:sticky;top:0;align-self:start;height:100dvh;display:flex;flex-direction:column;background:#fff;border-inline-end:1px solid var(--line);padding:1.25rem .95rem;gap:.8rem}.sidebar .wordmark,.school-name{padding-inline:.5rem}.school-name{color:var(--muted);font-size:.86rem;margin-bottom:.65rem}.sidebar nav{display:grid;gap:.25rem}.sidebar nav a{display:flex;gap:.7rem;align-items:center;min-height:45px;padding:.6rem .7rem;border-radius:10px;color:#4d5877;font-size:.93rem;font-weight:620}.sidebar nav a[aria-current],.sidebar nav a:hover{background:var(--primary-soft);color:#383ab1}.sidebar nav a[aria-current]{border-inline-start:3px solid #6764e9;padding-inline-start:calc(.7rem - 3px)}.sidebar-footer{display:flex;align-items:center;gap:.45rem;margin-top:auto;padding-top:.75rem;border-top:1px solid var(--line);font-size:.83rem}.sidebar-footer button{margin-inline-start:auto}.small-avatar{font-size:1.35rem;padding:.15rem .38rem;background:#f3f5ff;border-radius:10px}.content{width:min(100%,1500px);padding:clamp(1.1rem,3vw,2.8rem);margin-inline:auto;min-width:0}.page-heading,.section-heading,.notice{display:flex;align-items:center;justify-content:space-between;gap:.9rem}.page-heading{margin-block-end:1.4rem}.page-heading p,.notice p{margin-block-start:.24rem;color:var(--muted)}.section-heading{margin-block-end:1rem}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(.9rem,2vw,1.55rem);min-width:0}.panel>h2:first-child,.panel>h1:first-child{margin-block-end:.85rem}.next-lesson{min-height:198px;display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#eaedff;border:1px solid #dfe4ff;border-radius:24px;padding:1.25rem 1.45rem;margin-block-end:1.25rem;overflow:hidden}.next-label{color:#494a9c;font-weight:680;font-size:.9rem}.next-lesson h2{color:#272e73;font-size:clamp(1.45rem,3vw,2.1rem);margin-block-start:.2rem}.next-lesson p{color:#484e76}.next-lesson button{margin-block-start:.8rem}.next-art{display:flex;align-items:center;justify-content:center;gap:.8rem;flex:0 1 250px;color:#4d50cb}.next-art svg{background:#fff;border-radius:24px 24px 24px 9px;padding:.9rem;box-sizing:content-box;transform:rotate(-9deg)}.next-art span:first-child{color:#846000;font-size:2rem;align-self:flex-start}.next-art span:last-child{font-size:1.5rem;align-self:flex-end}.lesson-row{display:grid;grid-template-columns:64px 46px minmax(0,1fr) auto 45px;align-items:center;gap:.65rem;padding:.65rem 0;border-bottom:1px solid var(--line)}.lesson-row:last-child{border-bottom:0}.lesson-hour,.lesson-title{display:grid;gap:.08rem}.lesson-title strong{overflow-wrap:anywhere}.lesson-hour span,.lesson-title span{color:var(--muted);font-size:.83rem}.lesson-icon{display:grid;place-items:center;height:42px;width:42px;border-radius:12px;color:#494cb8;background:#eef0ff}.lesson-icon.mint{color:#0f6651;background:var(--mint)}.status{display:inline-flex;align-items:center;gap:.35rem;align-self:center;justify-self:start;padding:.23rem .56rem;border-radius:7px;background:#f1f3fa;color:#4b5674;white-space:nowrap;font-size:.81rem;font-weight:650}.status.scheduled{background:#eef0ff;color:#4544aa}.status.live{background:#dcf6eb;color:#135b4a}.status.cancelled,.status.missed{background:#fff0f2;color:#922a3c}.status.interrupted{background:#fff2cf;color:#694c06}.week-nav{display:flex;align-items:center;justify-content:space-between;padding-block-end:.75rem}.week-day{padding:.9rem 0;border-top:1px solid var(--line)}.week-day h3{margin-block-end:.32rem}.week-day.is-today h3{color:#4343c3}.empty{padding:1.4rem;text-align:center;color:var(--muted)}.empty svg{display:block;margin:0 auto .45rem}.management-grid{display:grid;grid-template-columns:185px minmax(0,1fr);gap:.9rem;align-items:start}.management-nav{display:grid;gap:.15rem;padding:.75rem}.management-nav h3{display:flex;gap:.4rem;align-items:center;margin:.4rem .4rem .2rem;color:var(--muted)}.management-nav button{justify-content:flex-start;font-size:.86rem}.management-nav button[aria-pressed=true]{background:#eeefff}.table-scroll{overflow-x:auto;margin-block-start:.75rem}table{width:100%;border-collapse:collapse;text-align:start}th,td{padding:.48rem .6rem;border-bottom:1px solid var(--line);text-align:start}th{color:#505a79;background:#f8f9fe;font-size:.84rem}td{font-size:.91rem}.edit-box{display:grid;gap:.85rem;margin-block:1rem;padding:1rem;border:1px solid #e0e5ff;border-radius:13px;background:#f7f8ff}.form-grid,.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.import-box{margin-block:.7rem;border-block:1px solid var(--line);padding-block:.6rem}.import-box summary{cursor:pointer;font-weight:650;min-height:35px}.import-box p{margin-block:.5rem}.notice,.note{border-bottom:1px solid var(--line);padding:.75rem 0;overflow-wrap:anywhere}.notice:last-child,.note:last-child{border-bottom:0}.report-filters{align-items:end;margin-block-end:1rem}.profile-avatar{display:grid;place-items:center;width:82px;height:82px;background:#f0f1ff;border-radius:24px;font-size:3rem}.avatar-option{background:#f5f7ff;border-color:#e3e7f7;font-size:1.5rem}.avatar-option.selected{background:#e8e8ff;border-color:#7670ef}.profile-stats{margin-block-start:.9rem}.profile-stats .status{margin-inline-end:.4rem}.back-link{display:inline-flex;gap:.4rem;align-items:center;min-height:42px;color:#4849a8;font-weight:650}.classroom-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.8rem;align-items:start}.teacher-room{grid-template-columns:minmax(175px,.66fr) minmax(0,2.4fr) minmax(185px,.75fr)}.room-side{padding:.85rem}.room-side h2:not(:first-child),.room-side h3{margin-block:.85rem .4rem}.room-side button{padding-inline:.55rem;font-size:.87rem}.side-item{border-block-end:1px solid var(--line);display:grid;gap:.25rem;padding-block:.5rem}.side-item button{justify-self:start}.room-main{padding:.8rem}.stage{background:#142033;color:#fff;aspect-ratio:16 / 9;position:relative;overflow:hidden;border-radius:14px;display:grid;place-items:center;text-align:center}.stage-placeholder{padding:1rem;z-index:1;color:#edf2ff}.stage-placeholder h2{margin-block:.35rem}.stage-placeholder p{margin-block-start:.35rem;max-inline-size:38ch}.stage>video,.remote-video video{width:100%;height:100%;object-fit:contain}.remote-video{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;z-index:2;pointer-events:none}.media-tile{position:relative;min-width:0;overflow:hidden;container-type:size;background:#142033}.media-tile[hidden],.media-tile[data-presenter=other]{display:none}.media-tile video{display:block}.media-caption{position:absolute;inset:auto .6rem .6rem auto;z-index:2;color:#fff;background:#141d2ddd;border-radius:.45rem;padding:.25rem .55rem;font-size:.78rem;max-width:calc(100% - 1.2rem);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.stage[data-stage-layout=solo][data-camera-layout^=portrait]:has(.media-tile[data-source=camera]:not([hidden])):not(:has(.media-tile[data-source=screen_share]:not([hidden]))){aspect-ratio:9 / 16;width:min(100%,24rem,43dvh);margin-inline:auto}.stage[data-camera-layout=portrait_cw]{--camera-rotation: 90deg}.stage[data-camera-layout=portrait_ccw]{--camera-rotation: -90deg}.stage:is([data-camera-layout=portrait_cw],[data-camera-layout=portrait_ccw]) .media-tile[data-source=camera][data-presenter=teacher] video{position:absolute;inset:50% auto auto 50%;width:100cqh;height:100cqw;max-width:none;transform:translate(-50%,-50%) rotate(var(--camera-rotation))}.stage[data-stage-layout=duo] .remote-video{grid-template-columns:repeat(2,minmax(0,1fr))}.stage[data-stage-layout=duo] .media-tile[data-source=camera][data-presenter=teacher]{grid-area:1 / 1}.stage[data-stage-layout=duo] .media-tile[data-source=camera][data-presenter=guest]{grid-area:1 / 2}.stage[data-stage-layout=spotlight] .media-tile:not([data-presenter=guest]){display:none}.stage[data-stage-layout=spotlight] .stage-placeholder{visibility:hidden}.stage[data-stage-layout=duo] .stage-placeholder{margin-inline-end:50%}.guest-placeholder{display:grid;justify-items:center;align-content:center;gap:.45rem;position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;background:#1d2c44;color:#f7f9ff;padding:.5rem;overflow-wrap:anywhere}.stage[data-stage-layout=duo] .guest-placeholder{inset-inline-start:50%;border-inline-start:1px solid #ffffff25}.stage:has(.media-tile[data-presenter=guest][data-source=camera]:not([hidden])) .guest-placeholder{visibility:hidden}.guest-placeholder small{color:#c3d3ed;font-size:.8rem}.room-page:is(:fullscreen,.room-focus){background:var(--bg, #f4f6ff);overflow:auto;overscroll-behavior:contain;padding:.7rem max(.7rem,env(safe-area-inset-right)) max(.7rem,env(safe-area-inset-bottom)) max(.7rem,env(safe-area-inset-left))}.room-page.room-focus{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120}.room-page:is(:fullscreen,.room-focus) .stage:not([data-camera-layout^=portrait]){max-height:72dvh}.exam-media{display:grid;gap:.65rem;margin-block:.75rem}.exam-media img,.exam-media video{display:block;max-width:100%;max-height:65vh;width:auto;object-fit:contain;border-radius:8px}.exam-media audio{width:min(100%,26rem)}.exam-board{margin-block:.65rem}.exam-board canvas{width:100%;height:auto;touch-action:none;background:#fff;border:1px solid var(--line);border-radius:8px;margin-block:.5rem;cursor:crosshair}.teacher-notice-text{white-space:pre-wrap;overflow-wrap:anywhere}.challenge-message p{overflow-wrap:anywhere;max-height:26vh;overflow:auto}.room-controls{padding-block:.75rem 0}.room-controls button,.student-actions button{min-height:48px}.student-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;margin-block-start:.65rem}.hand-button{background:var(--yellow);min-height:54px;border-radius:999px}.note-time{color:#4648b5;padding-inline-end:.4rem;font-variant-numeric:tabular-nums}.note .status{margin-inline-start:.35rem}.challenge-panel{border-color:#f0c3ce;background:#fffafd}.answer-control{display:grid;gap:.7rem}.answer-control legend{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}.choice-grid{display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}.choice-grid button,.answer-control button{min-height:48px;overflow-wrap:anywhere}.tabs{margin-block-end:.9rem}@media(max-width:1120px){.teacher-room{grid-template-columns:minmax(150px,.58fr) minmax(0,2fr)}.teacher-room>aside:last-child{grid-column:1 / -1}}@media(max-width:760px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:static;height:auto;padding:.65rem .8rem;gap:.35rem;border-inline-end:0;border-block-end:1px solid var(--line);display:grid;grid-template-columns:1fr auto}.sidebar .wordmark{padding:0;font-size:1.2rem}.school-name{display:none}.sidebar nav{grid-column:1 / -1;grid-row:2;display:flex;flex-wrap:wrap}.sidebar nav a{font-size:.79rem;padding:.4rem .55rem}.sidebar-footer{grid-column:2;grid-row:1;padding:0;border:0}.sidebar-footer .small-avatar{display:none}.login-shell,.management-grid,.teacher-room{grid-template-columns:minmax(0,1fr)}.login-shell{margin-block-start:1rem}.login-story{min-height:0;border-inline-end:0;border-block-end:1px solid #e1e4ff}.lesson-art{min-height:100px;justify-content:flex-end;position:absolute;inset-inline-end:1.8rem;inset-block-start:1.2rem;pointer-events:none}.lesson-art svg{width:45px;height:45px;padding:.6rem;border-radius:14px}.lesson-art span{display:none}.login-story h1{padding-inline-end:2.8rem}.management-nav{display:flex;flex-wrap:wrap}.management-nav h3{display:none}.teacher-room>section{grid-row:1}.next-art{flex-basis:120px}.next-art svg{width:52px;height:52px}.next-art span{display:none}}@media(max-width:470px){.content{padding:.8rem}.lesson-row{grid-template-columns:48px minmax(0,1fr) auto 38px;gap:.3rem}.lesson-icon{display:none}.lesson-row .icon{min-width:38px}.lesson-row .status{font-size:.68rem;padding:.18rem .27rem}.notice{align-items:flex-start;flex-direction:column}.page-heading{align-items:flex-start;flex-wrap:wrap}.form-grid,.report-grid{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important}}@media print{body{background:#fff;color:#000}.app-shell{display:block}.sidebar,.report-filters{display:none}.content{width:100%;padding:0}.panel{border:0}}.jalali-input{display:grid;gap:.55rem;align-content:start;min-width:0}.jalali-input input[dir=ltr]{text-align:right;font-variant-numeric:tabular-nums}.jalali-input small{color:#8b2437}.account-photo{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.small-avatar:has(.account-photo){width:33px;height:33px;padding:0;overflow:hidden;flex-shrink:0}.profile-avatar{overflow:hidden}.profile-photo-actions{margin-block:.7rem}.photo-picker{position:relative;cursor:pointer}.photo-picker input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.photo-picker:focus-within{outline:3px solid #6c64e6;outline-offset:3px}.stage:not([data-stage-layout=spotlight]) .remote-video:has(.media-tile[data-source=screen_share]:not([hidden])) .media-tile[data-source=screen_share]{position:absolute;top:0;right:0;bottom:0;left:0}.stage:not([data-stage-layout=spotlight]) .remote-video:has(.media-tile[data-source=screen_share]:not([hidden])) .media-tile[data-source=camera]{position:absolute;z-index:1;inset-inline-end:.7rem;inset-block-end:.7rem;width:22%;aspect-ratio:16 / 9;background:#142033;border:1px solid #ffffffa0;border-radius:.55rem}.stage[data-stage-layout=duo] .remote-video:has(.media-tile[data-source=screen_share]:not([hidden])) .media-tile[data-presenter=guest][data-source=camera]{inset-inline-end:calc(22% + 1.15rem)}.stage[data-camera-layout^=portrait]:not([data-stage-layout=spotlight]) .remote-video:has(.media-tile[data-source=screen_share]:not([hidden])) .media-tile[data-presenter=teacher][data-source=camera]{aspect-ratio:9 / 16;width:13%}.student-shell{--primary: #4c47c9}.student-shell .sidebar nav a{min-height:48px}.student-shell .next-lesson{border-color:#d6dcff;background:#e9edff}.student-shell .next-lesson .primary,.student-shell .student-actions button{min-height:52px}.calendar-toolbar,.calendar-filters{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:.8rem;margin-bottom:.8rem}.calendar-filters{justify-content:start}.calendar-switch{display:inline-flex;border:1px solid var(--line);background:#f6f7ff;padding:.2rem;border-radius:12px}.calendar-switch button{background:none;min-width:62px}.calendar-switch button[aria-pressed=true]{background:var(--primary);color:#fff}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem}.calendar-weekday{text-align:center;color:var(--muted);font-size:.83rem;padding-block:.3rem;overflow:hidden}.calendar-cell{min-width:0;min-height:88px;justify-content:flex-start;align-items:stretch;flex-direction:column;gap:.15rem;text-align:right;border:1px solid #e2e6fa;background:#f9faff;padding:.45rem}.calendar-cell strong{font-size:1.13rem}.calendar-cell[aria-pressed=true]{border-color:#5a56d4;background:#efeeff;box-shadow:inset 0 0 0 1px #5a56d4}.calendar-cell[aria-current=date] strong{color:#3a32a1}.calendar-cell.outside{background:#f7f7f9;color:#5e6276}.calendar-cell small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;font-size:.71rem;font-weight:600}.calendar-count{color:#4137ad}.calendar-tag,.calendar-event{color:#114c3c;background:#dff7ee;border-radius:7px;padding:.12rem .3rem}.calendar-tag.holiday,.calendar-event.holiday{color:#734713;background:#fff0cd}.calendar-event{padding:.45rem .65rem;margin-block:.45rem}.calendar-event small{margin-inline-start:.6rem;font-weight:750}.calendar-detail{margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--line)}.calendar-detail h2{margin-bottom:.45rem}.calendar-lesson{display:grid;grid-template-columns:minmax(0,1.2fr) auto auto auto;align-items:center;gap:.65rem;padding-block:.5rem;border-bottom:1px solid var(--line)}.calendar-lesson small,.notice small{display:block;color:var(--muted)}.app-dialog{width:min(440px,calc(100% - 2rem));padding:1.2rem;color:var(--ink);border:1px solid var(--line);border-radius:19px}.app-dialog::backdrop{background:#18204870}.app-dialog .section-heading{margin-bottom:0}.challenge-message{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;margin-block:.65rem;padding:.75rem;background:#fff2cd;border:1px solid #edcd78;border-radius:13px;color:#463108}.challenge-message .primary{margin-inline-start:auto}.room-network{color:#41499a;margin-block:.4rem}.structure-select,.library-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(145px,100%),1fr));gap:.65rem}.structure-panel .row{margin-block:.65rem}.library-filters{align-items:end}.library-filters .row{flex-wrap:wrap}.person-header{display:flex;gap:.85rem;align-items:center;padding:.6rem;border-radius:12px;background:#f6f7ff}.person-header .profile-avatar{flex-shrink:0}.person-row{width:100%;justify-content:start;border-radius:0;border-bottom:1px solid var(--line);background:#fff;text-align:start}.person-row:hover{background:#f3f5ff}.person-row span:last-child{margin-inline-start:auto;color:#494caa;font-size:.84rem}.insight-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr));gap:.65rem;margin-block:.85rem}.insight-kpis>span{display:flex;align-items:center;gap:.5rem;padding:.65rem;border:1px solid var(--line);border-radius:12px;background:#f2f4ff}.insight-kpis strong{font-size:1.15rem;color:#3d3da0}.insight-kpis svg{color:#534cc3;width:19px}.insight-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.insight-chart{--bar: #6055cf;--rail: #ece9ff;background:#fff;border:1px solid var(--line);border-radius:14px;padding:.85rem}.insight-chart.green{--bar: #187962;--rail: #dcf3ec}.insight-chart.blue{--bar: #286c9e;--rail: #e6f2fb}.insight-chart.amber{--bar: #996313;--rail: #fcf1d8}.insight-chart ul{padding:0;margin:.65rem 0 0;list-style:none;display:grid;gap:.55rem}.insight-chart li{display:grid;grid-template-columns:1fr auto;gap:.24rem .5rem;align-items:center;font-size:.9rem}.chart-track{height:9px;background:var(--rail);border-radius:10px;overflow:hidden;grid-column:1 / -1}.chart-track>span{height:100%;display:block;background:var(--bar);border-radius:inherit}@media(max-width:650px){.calendar-grid{gap:.2rem}.calendar-cell{padding:.25rem;min-height:74px;text-align:center}.calendar-grid.month .calendar-cell{min-height:51px}.calendar-weekday,.calendar-cell span{font-size:.65rem}.calendar-cell strong{font-size:.9rem}.calendar-cell small{font-size:.61rem}.calendar-lesson{grid-template-columns:minmax(0,1fr) auto}.insight-charts{grid-template-columns:minmax(0,1fr)}.challenge-message .primary{margin-inline-start:0}}@media print{.insight-toolbar form{display:none}.insight-chart{break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.room-challenge-toast{position:fixed;z-index:10;inset-inline-end:clamp(.8rem,3vw,2rem);inset-block-end:.8rem;width:max-content;max-width:calc(100vw - 1.6rem);box-shadow:0 12px 28px #322a3433}.lesson-view-switch{display:inline-flex;gap:.2rem;padding:.18rem;margin-bottom:.65rem;max-width:100%;border:1px solid var(--line);border-radius:12px;background:#f5f6ff}.lesson-view-switch button{background:transparent;border-radius:9px;padding-inline:.65rem}.lesson-view-switch button[aria-pressed=true]{background:#4d46c7;color:#fff}.stage[hidden]{display:none}.board-toolbar{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;padding-bottom:.55rem;justify-content:space-between}.board-toolbar [aria-pressed=true].secondary{border-color:#7269dc;background:#efedff;color:#4139a9}.board-colors{padding:.2rem;gap:.45rem}.board-color{width:31px;min-height:31px;padding:0;border:0;border-radius:50%}.board-color[aria-pressed=true]{outline:2px solid #242d4c;outline-offset:2px}.whiteboard canvas{display:block;width:100%;aspect-ratio:16 / 9;height:auto;background-color:#fff;background-image:linear-gradient(#eef0f7 1px,transparent 1px),linear-gradient(90deg,#eef0f7 1px,transparent 1px);background-size:21px 21px;border:1px solid #dce3f3;border-radius:12px}.whiteboard canvas.writable{cursor:crosshair;touch-action:none}.whiteboard>small{display:block;padding-top:.35rem}.teacher-room.board-view{grid-template-columns:minmax(0,1fr)}.teacher-room.board-view>.room-side{display:none}.lesson-materials{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:.9rem}.lesson-materials section{min-width:0;padding:.65rem;border:1px solid var(--line);border-radius:12px}.lesson-materials h2{margin-bottom:.4rem}.lesson-materials .section-heading{flex-wrap:wrap;margin-bottom:.35rem}.lesson-materials .section-heading h2{margin:0}.lesson-chat-log{max-height:19rem;overflow:auto;display:grid;gap:.4rem;margin-bottom:.45rem}.lesson-chat-log article{background:#f6f7ff;border-radius:10px;padding:.45rem .55rem;overflow-wrap:anywhere}.lesson-chat-log article.teacher-message{background:#eeebff;border-inline-start:3px solid #7468d6}.lesson-chat-log article small{color:var(--muted)}.lesson-chat-log article button{margin-inline-start:auto}.lesson-chat-form{display:flex;flex-wrap:wrap;gap:.35rem}.lesson-chat-form input{flex:1 1 12rem}.audio-check{margin-block:.55rem}.audio-check summary{color:#4840aa;cursor:pointer;font-weight:650;width:fit-content}.audio-check>div{margin-block:.4rem}@media(max-width:480px){.lesson-view-switch button{padding-inline:.38rem;gap:.28rem;font-size:.85rem}.board-toolbar .row{gap:.3rem}}.school-fields,.school-records{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr))}.school-fields{align-items:end}.school-inset{border:1px solid var(--line);border-radius:12px;padding:.85rem;background:#fafbff}.school-copy{white-space:pre-wrap;overflow-wrap:anywhere}.public-admission{width:min(calc(100% - 2rem),640px);margin:clamp(1rem,8vh,5rem) auto}.public-admission bdi{overflow-wrap:anywhere}.row.between{justify-content:space-between}.mobile-nav{display:none}.quick-links{display:flex;flex-wrap:wrap;gap:.55rem;margin-block:.9rem}.quick-links a{flex:0 1 auto}.mobile-menu nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.mobile-menu nav a{display:flex;align-items:center;gap:.45rem;padding:.55rem;min-height:48px;border-radius:10px;color:var(--ink)}.mobile-menu nav a[aria-current]{color:#383ab1;background:var(--primary-soft)}.guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,370px),1fr));gap:.85rem;align-items:start}.guide-card>a{justify-self:start}.guide-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem;list-style:none;margin:0;padding:0}.guide-flow li{display:flex;align-items:center;gap:.2rem}.guide-flow li>span{min-width:0;flex:1;display:grid;place-items:center;gap:.3rem;text-align:center;padding:.55rem .2rem;min-height:78px;background:#f0f0ff;border:1px solid #dedfff;border-radius:10px;color:#303675;font-size:.82rem}.guide-arrow{flex:none;color:#5751bd}.guide-arrow-mobile{display:none}.presence-history{color:var(--muted);font-size:.82rem}.presence-history summary{cursor:pointer}.presence-history ol{padding-inline-start:1.35rem;margin-block:.3rem;max-height:10rem;overflow:auto}.rollcall-card{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem .85rem;margin-block:.7rem;padding:.8rem;border:2px solid #7670e8;background:#f1efff;color:#272355;border-radius:13px}.rollcall-card>div{flex:1 1 12rem}.rollcall-card p{margin-block:.2rem}.rollcall-card .alert{flex-basis:100%}.rollcall-time{font-weight:750;white-space:nowrap}.rollcall-warning{border-color:#bd641b;background:#fff4df;color:#6a3409;animation:attendance-shake .42s ease-out}@keyframes attendance-shake{20%,60%{transform:translate(5px)}40%,80%{transform:translate(-5px)}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:760px){.sidebar nav{display:none}.sidebar{position:sticky;top:0;z-index:5;background:#fff;padding-block-start:max(.65rem,env(safe-area-inset-top))}.with-mobile-nav .content{padding-bottom:calc(86px + env(safe-area-inset-bottom))}.mobile-nav{display:flex;position:fixed;z-index:20;inset:auto 0 0;justify-content:space-around;gap:.2rem;padding:.35rem max(.55rem,env(safe-area-inset-right)) calc(.35rem + env(safe-area-inset-bottom)) max(.55rem,env(safe-area-inset-left));background:#fff;border-top:1px solid var(--line);box-shadow:0 -4px 18px #29275712}.mobile-nav>a,.mobile-nav>button{flex:1;display:grid;place-items:center;align-content:center;min-height:52px;gap:.15rem;border:0;border-radius:11px;background:transparent;color:#4d5877;font-size:.76rem;padding:.2rem}.mobile-nav [aria-current],.mobile-nav .selected{color:#3734aa;background:var(--primary-soft);font-weight:750}dialog.mobile-menu{margin:auto 0 0;width:100%;max-width:none;max-height:80dvh;padding-bottom:calc(1rem + env(safe-area-inset-bottom));border-radius:18px 18px 0 0}.challenge-message{bottom:calc(76px + env(safe-area-inset-bottom))}}@media(max-width:365px){.guide-flow{grid-template-columns:1fr}.guide-flow li{display:grid;justify-items:center}.guide-flow li>span{width:100%;min-height:46px;grid-auto-flow:column;justify-content:center}.guide-arrow{display:none}.guide-arrow-mobile{display:block;color:#5751bd}}@media print{.mobile-nav,.quick-links{display:none}}.calendar-cell.drop-target{outline:2px solid #4c43c5;outline-offset:2px;background:#eae7ff}.draggable-lesson{cursor:grab}.draggable-lesson:active{cursor:grabbing}.drag-grip{vertical-align:middle;color:#675bc0;margin-inline-end:.25rem}@media(pointer:coarse){.calendar-drag-hint,.drag-grip{display:none}}.rollcall-prompt{position:fixed;z-index:25;inset:max(1rem,env(safe-area-inset-top)) 1rem auto;max-width:550px;margin-inline:auto;box-shadow:0 12px 34px #25204435}@media(max-width:760px){.rollcall-prompt{inset-block-start:auto;inset-block-end:calc(69px + env(safe-area-inset-bottom))}}.file-drop{display:grid;gap:.45rem;border:1px dashed #a39fda;border-radius:12px;padding:.7rem;background:#fafaff}.file-drop-hover{background:#eeeaff;outline:2px solid #5b52c9}.file-drop small{color:var(--muted)}.school-tile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10.25rem),1fr));gap:clamp(.55rem,2vw,1.15rem);max-width:70rem}.school-tile{aspect-ratio:1;min-width:0;display:grid;grid-template-rows:auto 1fr auto;text-align:start;justify-items:start;align-items:start;gap:.65rem;padding:clamp(.7rem,2vw,1.3rem);border:1px solid #1a284920;border-radius:1.15rem;color:#17243c;overflow-wrap:anywhere}.school-tile strong{align-self:end;font-size:clamp(.95rem,1.7vw,1.2rem);line-height:1.45}.school-tile span{font-size:.84rem;color:#36445c;line-height:1.45}.school-tile.mint{background:#dcf3e9}.school-tile.lilac{background:#e9e4ff}.school-tile.sand{background:#fcebc8}.school-tile.blue{background:#deedff}.school-tile.rose{background:#f9e1e9}.school-tile:hover{outline:2px solid currentColor;outline-offset:-3px}.sidebar-toggle{align-self:start;margin-block:.35rem}@media(min-width:761px){.app-shell.sidebar-compact{grid-template-columns:76px minmax(0,1fr)}.sidebar-compact .sidebar-text{display:none}.sidebar-compact .sidebar .wordmark,.sidebar-compact .sidebar nav a{justify-content:center;padding-inline:.25rem}.sidebar-compact .sidebar-footer{display:grid;justify-items:center}.sidebar-compact .sidebar-footer button{margin:0}}@media(max-width:760px){.sidebar-toggle{display:none}.school-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.date-picker{border:1px solid var(--line);border-radius:.65rem;padding:.35rem .65rem;max-width:24rem}.date-picker summary{color:var(--primary);cursor:pointer}.date-picker[open] summary{margin-block-end:.25rem}.picker-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:.16rem}.picker-days button{min-width:0;padding-inline:0;min-height:2.35rem}.picker-days button[aria-pressed=true]{background:var(--primary);color:#fff}.time-picker{min-inline-size:0}.time-picker select{min-width:0}.picker-selects{margin-block-end:.35rem}.picker-selects select{min-width:0;flex:1}.floating-recording{position:fixed;z-index:22;inset-inline-end:1rem;inset-block-end:1rem;width:min(21rem,calc(100% - 2rem));background:#fff;border:1px solid var(--line);border-radius:.85rem;padding:.45rem;box-shadow:0 10px 28px #18204838}.floating-recording header{padding-inline:.35rem}.floating-recording video{width:100%;max-height:38dvh;display:block;background:#252d55;border-radius:.6rem}@media(max-width:760px){.floating-recording{inset-block-end:calc(4.5rem + env(safe-area-inset-bottom));width:min(16rem,calc(100% - 2rem))}}@media print{.floating-recording{display:none}}.room-layout{grid-template-columns:minmax(0,1fr) minmax(15rem,19rem);align-items:start}.room-layout>section:first-of-type{grid-column:1;grid-row:1;min-width:0}.room-layout>.room-roster{grid-column:2;grid-row:1;min-width:0;padding:.65rem}.room-layout:not(:has(.room-roster)){grid-template-columns:minmax(0,1fr)}.room-layout>.classroom-tools-dock{grid-column:1 / -1}.room-roster-tabs{display:flex;gap:.3rem;padding:.22rem;margin-block-end:.65rem;background:#edf1f8;border-radius:.72rem}.room-roster-tabs button{flex:1;display:inline-flex;justify-content:center;gap:.4rem;align-items:center;background:transparent;min-height:2.65rem;padding:.45rem}.room-roster-tabs button[aria-pressed=true]{background:#fff;color:#23554c;box-shadow:0 1px 5px #1927421a}.room-roster-tabs span{padding-inline:.34rem;background:#dcece8;border-radius:.35rem;font-size:.78rem}.roster-search{display:flex;align-items:center;gap:.35rem;padding-inline:.2rem;margin-block-end:.4rem}.roster-search input{min-width:0}.room-roster-list{max-block-size:min(52dvh,28rem);overflow:auto;overscroll-behavior:contain}.roster-person{border-block-end:1px solid #e5eaf3;padding:.58rem .35rem}.roster-person:last-child{border-block-end:0}.roster-person.featured{background:#e6f4ef;border-radius:.6rem}.roster-person-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem}.roster-person-main strong,.roster-person-main small{display:block;overflow-wrap:anywhere}.roster-person-main strong small{display:inline}.roster-person-main small{color:#53647d;font-size:.76rem}.roster-avatar{position:relative;display:grid;place-items:center;inline-size:2.28rem;block-size:2.28rem;flex:none;border-radius:.7rem;background:#e8eef9;color:#142033}.roster-avatar i{position:absolute;inset-inline-end:-.13rem;inset-block-end:-.12rem;inline-size:.65rem;block-size:.65rem;background:#73819a;border:2px solid white;border-radius:50%}.roster-avatar i.online{background:#24866d}.roster-person details{margin-block-start:.25rem}.roster-person summary{cursor:pointer;font-size:.78rem;color:#415878;padding:.35rem 0}.roster-person summary svg{vertical-align:middle}.roster-person details button,.stage-moderation button{font-size:.77rem;min-height:2.3rem;padding:.35rem .55rem}.stage-moderation{padding:.55rem;margin-block-end:.5rem;background:#e6f4ef;border:1px solid #c4e8dd;border-radius:.65rem}.stage-moderation .row{margin-block-start:.4rem;gap:.24rem}.room-chat-only{display:block}.room-chat-only section{padding:.35rem .15rem;border:0}.room-chat-only .lesson-chat-log{max-block-size:min(41dvh,22rem)}.stage-invitation{margin-block-start:.65rem}@media(max-width:980px){.room-layout{grid-template-columns:minmax(0,1fr)}.room-layout>section:first-of-type{display:contents}.room-layout:has(.room-main) .room-main{grid-column:1;grid-row:1}.room-layout>.room-roster{grid-column:1;grid-row:2}}@media(max-width:550px){.room-main .room-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.room-main .room-controls:empty{display:none}.room-main .room-controls>:only-child{grid-column:1 / -1}.room-main .room-controls>button,.room-main .room-controls>select{min-width:0;width:100%;min-height:2.8rem;padding:.35rem;font-size:.8rem;line-height:1.35;justify-content:center}.room-main .room-controls svg{flex-shrink:0}}.session-summary{max-inline-size:39rem;margin:clamp(1rem,7vh,4.5rem) auto 0;padding:clamp(1.25rem,5vw,2.6rem)}.session-summary h1{margin-block:.85rem .5rem;font-size:clamp(1.45rem,4vw,2.15rem)}.session-summary p{color:var(--muted)}.session-summary-icon{display:inline-grid;place-items:center;inline-size:3.4rem;block-size:3.4rem;border-radius:.9rem;background:#e0f3e8;color:#246349}.summary-recording{margin-block:1.2rem;padding:.7rem .85rem;display:flex;align-items:center;gap:.65rem;background:#eef2fa;border-radius:.7rem}.summary-recording svg{flex:none}.summary-actions{margin-block-start:1.1rem}
