:root{--layout-pad:16px;--iso-bg:#fafcfb;--iso-bg-mid:#f3f7f4;--iso-panel:#eef4f0;--iso-border:rgba(32,43,37,0.38);--iso-text:#1e2b24;--iso-muted:#46544c;--iso-primary:#3a6150}*{box-sizing:border-box}body{margin:0}.iso-body{background:linear-gradient(180deg,#ffffff 0,var(--iso-bg) 28%,var(--iso-bg-mid) 100%);color:var(--iso-text);min-height:100vh;display:flex;flex-direction:column}.page-wrap--footer{flex:1 1;width:100%}.top-nav{position:-webkit-sticky;position:sticky;top:0;width:100%;box-sizing:border-box;z-index:200;isolation:isolate;padding:8px 14px 10px;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(32,43,37,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.nav-inner{width:100%;max-width:none;margin:0;gap:14px;justify-content:space-between;row-gap:12px}.nav-cluster,.nav-inner{display:flex;align-items:center;flex-wrap:wrap}.nav-cluster{gap:12px 20px;justify-content:flex-end}.nav-cluster-sep{flex:0 0 auto;width:1px;align-self:stretch;min-height:22px;margin:0 2px;background:rgba(32,43,37,.14)}@media (max-width:960px){.nav-cluster-sep{display:none}}.nav-brand-block{display:flex;flex-direction:column;align-items:flex-start;gap:6px;flex-shrink:0;min-width:0}.nav-brand-product-line{display:block;max-width:min(64ch,100%);padding:1px 2px 0 14px;font-size:.68rem;font-weight:600;line-height:2.3;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-inner--has-brand-meta{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);grid-template-areas:"brand cluster" "meta meta";align-items:end;grid-gap:0 16px;gap:0 16px}.nav-inner--has-brand-meta .nav-brand-block{grid-area:brand}.nav-inner--has-brand-meta .nav-cluster-scroll-outer{grid-area:cluster}.nav-inner--has-brand-meta .nav-cluster.nav-cluster--desktop{padding-bottom:0}.nav-brand-meta-row{grid-area:meta;display:flex;align-items:baseline;justify-content:space-between;gap:12px 20px;min-width:0;width:100%;line-height:1.2}.nav-brand-meta-row .nav-brand-product-line{flex:0 1 auto;min-width:0;padding-top:0}.nav-brand-meta-row .nav-brand-user-line{padding-top:0}.nav-brand-user-line{flex:0 1 auto;max-width:min(48ch,58%);margin-left:auto;padding:1px 2px 0;font-size:.68rem;font-weight:600;line-height:1.3;letter-spacing:.02em;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:960px){.nav-inner--has-brand-meta{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand menu" "meta meta";column-gap:10px}.nav-inner--has-brand-meta .nav-mobile-menu-btn{grid-area:menu}}.nav-cluster-scroll-outer{display:none}@media (min-width:961px){.nav-inner{flex-wrap:nowrap;align-items:center;gap:16px}.nav-inner.nav-inner--has-brand-meta{gap:0 16px}.nav-cluster-scroll-outer{display:flex;flex:1 1 auto;min-width:0;align-items:stretch;gap:4px}.nav-cluster-scroll-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;align-self:center;width:30px;min-height:38px;margin:0;padding:0;border:1px solid var(--iso-border);border-radius:8px;background:rgba(255,255,255,.55);color:var(--iso-text);cursor:pointer;transition:background .18s ease,opacity .18s ease;-webkit-tap-highlight-color:transparent}.nav-cluster-scroll-btn:hover:not(:disabled){background:rgba(255,255,255,.92)}.nav-cluster-scroll-btn:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.nav-cluster-scroll-btn:disabled{opacity:.22;cursor:default}.nav-cluster-scroll-btn--hidden{display:none}.nav-cluster.nav-cluster--desktop{flex:1 1 auto;min-width:0;display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:12px 14px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;padding-bottom:4px;touch-action:pan-x}.nav-cluster.nav-cluster--desktop[data-nav-scroll-edge=left]{box-shadow:inset 12px 0 14px -12px rgba(32,43,37,.14)}.nav-cluster.nav-cluster--desktop[data-nav-scroll-edge=right]{box-shadow:inset -12px 0 14px -12px rgba(32,43,37,.14)}.nav-cluster.nav-cluster--desktop[data-nav-scroll-edge=both]{box-shadow:inset 12px 0 14px -12px rgba(32,43,37,.12),inset -12px 0 14px -12px rgba(32,43,37,.12)}.nav-cluster.nav-cluster--desktop::-webkit-scrollbar{height:6px}.nav-cluster.nav-cluster--desktop::-webkit-scrollbar-thumb{background:rgba(32,43,37,.28);border-radius:4px}.nav-cluster.nav-cluster--desktop::-webkit-scrollbar-track{background:rgba(32,43,37,.06);border-radius:4px}}.nav-group{display:inline-flex;align-items:center;flex-wrap:wrap;gap:12px;padding:6px 10px;border-radius:14px;background:rgba(255,255,255,.22);border:1px solid rgba(32,43,37,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}.nav-group-sep{width:1px;height:22px;background:rgba(32,43,37,.2);flex-shrink:0;border-radius:1px}.brand{border:1px solid var(--iso-border);border-radius:8px;padding:8px 14px;color:var(--iso-text);text-decoration:none;background:rgba(255,255,255,.15);transition:background .22s ease,box-shadow .22s ease;font-weight:600;letter-spacing:.02em}.brand:hover{background:rgba(255,255,255,.35)}.brand--active{border-radius:9999px;background:rgba(255,255,255,.55);box-shadow:0 2px 12px rgba(32,60,48,.12);transition:border-radius .38s cubic-bezier(.4,0,.2,1),background .22s ease,box-shadow .22s ease}.nav-pill{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--iso-border);border-radius:8px;padding:8px 14px;color:var(--iso-text);text-decoration:none;background:rgba(255,255,255,.08);text-transform:uppercase;letter-spacing:.08em;font-size:11px;cursor:pointer;transition:background .22s ease,border-color .22s ease,box-shadow .22s ease}.nav-pill-icon{font-size:14px;line-height:1;text-transform:none;letter-spacing:0}.nav-pill-icon--svg{display:inline-flex;width:16px;height:16px;flex-shrink:0}.nav-pill:hover{background:rgba(255,255,255,.42);border-radius:8px}.nav-pill:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.nav-pill--active{border-radius:9999px;background:rgba(255,255,255,.62);border-color:rgba(58,97,80,.55);box-shadow:0 2px 14px rgba(32,60,48,.14);transition:border-radius .38s cubic-bezier(.4,0,.2,1),background .22s ease,border-color .22s ease,box-shadow .22s ease}.nav-pill--active:hover{border-radius:9999px;background:rgba(255,255,255,.72)}.nav-school-switch-tabs{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.nav-school-switch-tabs .nav-pill{text-transform:none;letter-spacing:.02em;font-size:12px;padding:6px 10px}.nav-dropdown{position:relative}.nav-dropdown,.nav-dropdown .nav-pill--summary{list-style:none}.nav-dropdown .nav-pill--summary::-webkit-details-marker{display:none}.nav-pill--summary{-webkit-user-select:none;-moz-user-select:none;user-select:none}.nav-pill--summary:after{content:"";display:inline-block;width:0;height:0;margin-left:6px;vertical-align:middle;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid;opacity:.65;transition:transform .25s ease}.nav-dropdown details[open] .nav-pill--summary:after{transform:rotate(180deg)}.nav-dropdown details[open] .nav-pill--summary{border-radius:9999px;background:rgba(255,255,255,.5)}.nav-dropdown details:not([open]) .nav-pill--summary:hover{border-radius:8px}.nav-dropdown-panel{position:absolute;right:0;top:calc(100% + 8px);min-width:200px;padding:8px;border-radius:14px;border:1px solid rgba(32,43,37,.2);background:rgba(237,244,239,.98);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 12px 40px rgba(20,35,28,.18);z-index:50;animation:nav-dropdown-in .22s ease}.nav-dropdown-panel.nav-dropdown-panel--fixed{position:fixed;z-index:300}@keyframes nav-dropdown-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.nav-dropdown-link{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;color:var(--iso-text);text-decoration:none;font-size:12px;letter-spacing:.04em;text-transform:none;transition:background .2s ease;box-sizing:border-box}.nav-dropdown-link:hover{background:rgba(255,255,255,.65)}.nav-dropdown-link.nav-dropdown-link--active{background:rgba(255,255,255,.82);font-weight:600}.nav-dropdown-link-leading{flex:0 0 22px;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center}.nav-dropdown-link-label{flex:1 1 auto;min-width:0;line-height:1.25}.nav-dropdown-divider{height:0;margin:8px 4px 4px;border:none;border-top:1px solid rgba(32,43,37,.12)}button.nav-dropdown-link{width:100%;text-align:left;border:none;background:none;cursor:pointer;font-family:inherit}.nav-dropdown-link--signout{color:var(--iso-text)}.nav-dropdown-signout-icon{display:block;width:16px;height:16px}.nav-mobile-menu-btn{display:none;flex-shrink:0;width:44px;height:44px;align-items:center;justify-content:center;margin:0;padding:0;border:1px solid var(--iso-border);border-radius:10px;background:rgba(255,255,255,.35);color:var(--iso-text);cursor:pointer;transition:background .2s ease}.nav-mobile-menu-btn:hover{background:rgba(255,255,255,.55)}.nav-mobile-backdrop,.nav-mobile-panel{display:none}.brand--nav-logo{flex-shrink:0;white-space:nowrap}@media (max-width:960px){.top-nav.top-nav--menu-open{z-index:260}.nav-inner{flex-wrap:nowrap;gap:10px}.nav-inner.nav-inner--has-brand-meta{gap:0 10px}.nav-cluster--desktop{display:none!important}.nav-mobile-menu-btn{display:inline-flex}.nav-mobile-backdrop{display:block;inset:0;z-index:44;background:rgba(15,35,28,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;-webkit-tap-highlight-color:transparent}.nav-mobile-backdrop,.nav-mobile-panel{position:fixed;margin:0;padding:0;border:none}.nav-mobile-panel{display:flex;flex-direction:column;top:0;right:0;bottom:0;width:min(320px,88vw);z-index:45;border-left:1px solid rgba(32,43,37,.14);border-radius:0;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(236,252,244,.97));box-shadow:-8px 0 32px rgba(25,45,35,.15);animation:nav-mobile-panel-in .25s ease}@keyframes nav-mobile-panel-in{0%{transform:translateX(100%);opacity:.9}to{transform:translateX(0);opacity:1}}.nav-mobile-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px 12px;border-bottom:1px solid rgba(58,97,80,.12);flex-shrink:0}.nav-mobile-panel-title{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--iso-primary)}.nav-mobile-panel-close{width:40px;height:40px;padding:0;font-size:1.1rem;line-height:1;border-radius:10px}.nav-mobile-panel-body{flex:1 1;overflow-y:auto;padding:12px 14px 24px;display:flex;flex-direction:column;gap:4px}.nav-mobile-site-menu-root--chat .nav-mobile-backdrop{z-index:270}.nav-mobile-site-menu-root--chat .nav-mobile-panel{z-index:271}.nav-mobile-link{display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:12px 14px;border-radius:10px;border:1px solid rgba(32,43,37,.12);background:rgba(255,255,255,.5);color:var(--iso-text);text-decoration:none;font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;transition:background .2s ease,border-color .2s ease}.nav-mobile-link .nav-pill-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;flex-shrink:0;font-size:14px;line-height:1}.nav-mobile-menu-leading .nav-mobile-link-signout-icon{width:18px;height:18px;color:var(--iso-primary)}.nav-mobile-link-label{flex:1 1 auto;min-width:0;text-align:left}.nav-mobile-link:hover{background:rgba(255,255,255,.85)}.nav-mobile-link--active{border-color:rgba(58,97,80,.45);background:rgba(220,233,226,.85)}button.nav-mobile-link{width:100%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit}.nav-mobile-link--signout{margin-top:6px}.nav-mobile-details{margin-top:6px;border-radius:10px;border:1px solid rgba(32,43,37,.12);background:rgba(255,255,255,.35);overflow:hidden}.nav-mobile-summary{list-style:none;padding:12px 14px;font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-text);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.nav-mobile-summary::-webkit-details-marker{display:none}.nav-mobile-sublinks{display:flex;flex-direction:column;gap:2px;padding:0 8px 10px}.nav-mobile-sublink{display:block;padding:10px 12px;border-radius:8px;font-size:.88rem;color:var(--iso-text);text-decoration:none;transition:background .2s ease}.nav-mobile-sublink:hover{background:rgba(255,255,255,.7)}}@media (min-width:961px){.nav-mobile-backdrop,.nav-mobile-menu-btn,.nav-mobile-panel{display:none!important}}@media (max-width:720px){.nav-group-sep{display:none}}.page-wrap{max-width:1220px;margin:0 auto;padding:16px}body.iso-body:has(.school-messaging-page)>main.page-wrap.page-wrap--footer{max-width:none;width:100%;padding-top:var(--layout-pad);padding-bottom:var(--layout-pad);padding-left:0;padding-right:0}body.iso-body:has(.school-reports-page)>main.page-wrap.page-wrap--footer{max-width:none;width:100%;padding-top:var(--layout-pad);padding-bottom:var(--layout-pad);padding-left:0;padding-right:0}body.iso-body:has(.school-manage-students-page)>main.page-wrap.page-wrap--footer,body.iso-body:has(.school-partner-directory-page)>main.page-wrap.page-wrap--footer,body.iso-body:has(.school-partner-enrollment-page)>main.page-wrap.page-wrap--footer{max-width:none;width:100%;padding-top:var(--layout-pad);padding-bottom:var(--layout-pad);padding-left:0;padding-right:0}body.iso-body:has(.school-welcome-page-root)>main.page-wrap.page-wrap--footer{max-width:none;width:100%;padding-top:var(--layout-pad);padding-bottom:var(--layout-pad);padding-left:0;padding-right:0}body.iso-body:has(.class-notes-student-page)>main.page-wrap.page-wrap--footer{max-width:none;width:100%;padding-top:var(--layout-pad);padding-bottom:var(--layout-pad);padding-left:0;padding-right:0}body.iso-body:has(.platform-console-page)>main.page-wrap.page-wrap--footer{max-width:none;width:100%;padding-top:var(--layout-pad);padding-bottom:var(--layout-pad);padding-left:0;padding-right:0}@media (min-width:961px){body.iso-body:has(.class-notes-detail-page)>main.page-wrap.page-wrap--footer,body.iso-body:has(.school-roster-page)>main.page-wrap.page-wrap--footer{max-width:none;width:100%;padding-top:var(--layout-pad);padding-bottom:var(--layout-pad);padding-left:0;padding-right:0}body.iso-body:has(.chat-page.notes-page--desktop-fullwidth)>main.page-wrap.page-wrap--footer{max-width:none;width:100%;padding-top:var(--layout-pad);padding-bottom:var(--layout-pad);padding-left:0;padding-right:0}body.iso-body:has(.chat-page.notes-page--desktop-fullwidth) .chat-page.notes-page--desktop-fullwidth{width:100%;max-width:none;margin-left:0;margin-right:0;padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}body.iso-body:has(.chat-page.notes-page--desktop-fullwidth) .chat-app.notes-app{width:100%;max-width:none;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:16px}body.iso-body:has(.chat-page.challenge-practice-page--desktop-fullwidth)>main.page-wrap.page-wrap--footer{max-width:none;width:100%;padding-top:var(--layout-pad);padding-bottom:var(--layout-pad);padding-left:0;padding-right:0}body.iso-body:has(.chat-page.challenge-practice-page--desktop-fullwidth) .chat-page.challenge-practice-page--desktop-fullwidth{width:100%;max-width:none;margin-left:0;margin-right:0;padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}body.iso-body:has(.chat-page.challenge-practice-page--desktop-fullwidth) .chat-app{width:100%;max-width:none;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:16px}}@media (min-width:768px){body.iso-body:has(.chat-page--teacher-pack-fullwidth)>main.page-wrap.page-wrap--footer{max-width:none;width:100%;padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}body.iso-body:has(.chat-page--teacher-pack-fullwidth) .chat-page{width:100%;max-width:none;margin-left:0;margin-right:0;padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}body.iso-body:has(.chat-page--teacher-pack-fullwidth) .chat-app{width:100%;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:16px}body.iso-body:has(.chat-page--teacher-pack-fullwidth) .challenge-shell{padding-left:12px;padding-right:12px}body.iso-body:has(.chat-page--teacher-pack-fullwidth) .challenge-start-panel--teacher-pack-grid{width:100%;max-width:none}}.challenge-teacher-pack-pagination-desktop,.challenge-teacher-pack-picker-desktop{display:none}@media (min-width:768px){.challenge-teacher-pack-picker-mobile{display:none!important}.challenge-teacher-pack-pagination-desktop,.challenge-teacher-pack-picker-desktop{display:block}}.panel{border:1px solid var(--iso-border);background:var(--iso-panel);border-radius:14px;padding:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}.input,.select,.textarea{width:100%;border:1px solid var(--iso-border);border-radius:10px;background:#eff5f1;color:var(--iso-text);padding:10px 12px;font:inherit}.textarea{min-height:200px;resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--iso-border);border-radius:10px;padding:10px 14px;background:transparent;color:var(--iso-text);cursor:pointer;text-decoration:none;line-height:1.2;font:inherit}.btn-primary{background:var(--iso-primary);color:#fff;border-color:var(--iso-primary)}.muted{color:var(--iso-muted)}.form-grid,.stack{display:grid;grid-gap:12px;gap:12px}.form-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:4px}.form-tab{border:1px solid var(--iso-border);border-radius:10px;padding:8px 14px;background:rgba(255,255,255,.35);color:var(--iso-text);font:inherit;cursor:pointer}.form-tab-active{background:var(--iso-primary);color:#fff;border-color:var(--iso-primary)}.form-tab-disabled{opacity:.45;cursor:not-allowed}.form-subsection{border:1px solid var(--iso-border);border-radius:12px;padding:14px;display:grid;grid-gap:12px;gap:12px}.form-subsection-title{margin:0;font-size:.8rem;letter-spacing:.07em;text-transform:uppercase;color:var(--iso-muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chat-page.school-roster-chat .school-messaging-gmail--compose-open{min-height:min(88vh,880px)}.chat-page.school-roster-chat .school-messaging-gmail{display:grid;grid-template-columns:minmax(10rem,12rem) minmax(0,1fr);grid-gap:0;gap:0;min-height:min(70vh,720px);border:1px solid var(--iso-border);border-radius:12px;overflow:hidden;background:var(--iso-surface,#fff)}.chat-page.school-roster-chat .school-messaging-gmail__list-main{display:flex;flex-direction:row;align-items:stretch;min-width:0;min-height:min(70vh,720px);max-height:min(70vh,720px);overflow:hidden}.chat-page.school-roster-chat .school-messaging-gmail__list-main--compose{flex-direction:column;flex:1 1 auto;min-height:0;max-height:min(88vh,900px);height:min(88vh,900px)}.chat-page.school-roster-chat .school-messaging-gmail__splitter{flex:0 0 8px;width:8px;flex-shrink:0;align-self:stretch;cursor:col-resize;touch-action:none;position:relative;z-index:2;background:transparent;border:none;padding:0;margin:0}.chat-page.school-roster-chat .school-messaging-gmail__splitter:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;transform:translateX(-50%);background:var(--iso-border);pointer-events:none}.chat-page.school-roster-chat .school-messaging-gmail__splitter:focus-visible:after,.chat-page.school-roster-chat .school-messaging-gmail__splitter:hover:after{width:3px;border-radius:2px;background:rgba(58,97,80,.35)}.chat-page.school-roster-chat .school-messaging-gmail__splitter:focus-visible{outline:2px solid var(--iso-primary,#3a6150);outline-offset:1px}.chat-page.school-roster-chat .school-messaging-gmail__folders{border-right:1px solid var(--iso-border);padding:12px 10px;display:flex;flex-direction:column;gap:10px;background:rgba(0,0,0,.02)}.chat-page.school-roster-chat .school-messaging-gmail__folders-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-page.school-roster-chat .school-messaging-gmail__compose-btn{width:100%;justify-content:center}.chat-page.school-roster-chat .school-messaging-gmail__folder-list{--messaging-folder-disclosure:1.5rem;--messaging-folder-head-gap:0.125rem;--messaging-folder-child-tree:0.875rem;display:flex;flex-direction:column;gap:2px}.chat-page.school-roster-chat .school-messaging-gmail__folder-row{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;padding:8px 10px;border:none;border-radius:8px;background:transparent;font:inherit;font-size:.9rem;cursor:pointer;color:inherit}.chat-page.school-roster-chat .school-messaging-gmail__folder-row:hover{background:rgba(58,97,80,.08)}.chat-page.school-roster-chat .school-messaging-gmail__folder-row.is-active{background:rgba(58,97,80,.14);font-weight:600}.chat-page.school-roster-chat .school-messaging-gmail__badge{min-width:1.35rem;padding:0 6px;height:1.35rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:.72rem;font-weight:700;background:var(--iso-primary,#3a6150);color:#fff}.chat-page.school-roster-chat .school-messaging-gmail__badge--sm{min-width:1.2rem;height:1.2rem;font-size:.68rem}.chat-page.school-roster-chat .school-messaging-gmail__list{border-right:none;display:flex;flex-direction:column;min-width:0;min-height:0;max-height:none;overflow:hidden}.chat-page.school-roster-chat .school-messaging-gmail__list-scroll{flex:1 1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.chat-page.school-roster-chat .school-messaging-gmail__list-pager{flex-shrink:0;padding:6px 12px;border-top:1px solid var(--iso-border);text-align:center}.chat-page.school-roster-chat .school-messaging-gmail__list-load-more{flex-shrink:0;padding:8px 10px;border-top:1px solid var(--iso-border);display:flex;justify-content:center}.chat-page.school-roster-chat .school-messaging-gmail__list-head{padding:10px 12px;border-bottom:1px solid var(--iso-border);flex-shrink:0}.chat-page.school-roster-chat .school-messaging-gmail__thread-ul{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1 1}.chat-page.school-roster-chat .school-messaging-gmail__thread-item{width:100%;text-align:left;padding:10px 12px;border:none;border-bottom:1px solid var(--iso-border);background:transparent;font:inherit;cursor:pointer;color:inherit}.chat-page.school-roster-chat .school-messaging-gmail__thread-item:hover{background:rgba(0,0,0,.03)}.chat-page.school-roster-chat .school-messaging-gmail__thread-item.is-active{background:rgba(58,97,80,.08)}.chat-page.school-roster-chat .school-messaging-gmail__thread-line1{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.chat-page.school-roster-chat .school-messaging-gmail__thread-peer{font-weight:600;flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-page.school-roster-chat .school-messaging-gmail__thread-readstate{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:1.125rem;line-height:1}.chat-page.school-roster-chat .school-messaging-gmail__thread-readstate-tag{font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 5px;border-radius:3px;color:var(--iso-primary,#3a6150);background:rgba(58,97,80,.1);border:1px solid rgba(58,97,80,.2)}.chat-page.school-roster-chat .school-messaging-gmail__thread-readstate-icon{display:block;flex-shrink:0;color:var(--iso-muted);opacity:.75}.chat-page.school-roster-chat .school-messaging-gmail__thread-cat{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--iso-muted);flex-shrink:0}.chat-page.school-roster-chat .school-messaging-gmail__thread-time{font-size:.75rem;flex-shrink:0}.chat-page.school-roster-chat .school-messaging-gmail__thread-line2{margin-top:4px;font-size:.85rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chat-page.school-roster-chat .school-messaging-gmail__conversation{display:flex;flex-direction:column;flex:1 1;min-width:0;min-height:0;max-height:none;overflow:hidden}.chat-page.school-roster-chat .school-messaging-gmail__mobile-conv-nav{display:none}.chat-page.school-roster-chat .school-messaging-gmail__conv-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--iso-border);flex-shrink:0}.chat-page.school-roster-chat .school-messaging-gmail__messages{flex:1 1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:12px}.chat-page.school-roster-chat .school-messaging-gmail__bubble{position:relative;border:1px solid var(--iso-border);border-radius:12px;padding:12px 14px;max-width:100%;box-shadow:0 1px 2px rgba(30,43,36,.05)}.chat-page.school-roster-chat .school-messaging-gmail__bubble.is-peer{border-left:4px solid var(--iso-primary);padding-left:14px;background:#f4f8f6}.chat-page.school-roster-chat .school-messaging-gmail__bubble.is-self{margin-left:auto;border-left:1px solid var(--iso-border);border-right:4px solid var(--iso-primary);padding-right:14px;background:rgba(58,97,80,.09)}.chat-page.school-roster-chat .school-messaging-gmail__bubble__meta{display:flex;flex-wrap:wrap;align-items:center;gap:0 2px;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.chat-page.school-roster-chat .school-messaging-gmail__bubble.is-peer .school-messaging-gmail__bubble__meta{justify-content:flex-start;color:var(--iso-muted)}.chat-page.school-roster-chat .school-messaging-gmail__bubble.is-self .school-messaging-gmail__bubble__meta{justify-content:flex-end;text-align:right;color:var(--iso-primary)}.chat-page.school-roster-chat .school-messaging-gmail__bubble__you{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:.62rem;font-weight:700;letter-spacing:.1em;background:var(--iso-primary);color:#fff;margin-right:4px}.chat-page.school-roster-chat .school-messaging-gmail__bubble__sender{color:var(--iso-text);font-weight:700}.chat-page.school-roster-chat .school-messaging-gmail__bubble__time{font-weight:600;text-transform:none;letter-spacing:.02em;color:inherit;opacity:.92}.chat-page.school-roster-chat .school-messaging-gmail__bubble.is-peer .school-messaging-gmail__bubble__time{color:var(--iso-muted);opacity:1}.chat-page.school-roster-chat .school-messaging-gmail__bubble__subject{margin-top:8px;font-size:.88rem;font-weight:600;color:var(--iso-text)}.chat-page.school-roster-chat .school-messaging-gmail__bubble__body{margin-top:6px;white-space:pre-wrap;font-size:.92rem;line-height:1.48;color:rgba(22,38,30,.96)}.chat-page.school-roster-chat .school-messaging-gmail__bubble__body--tight-top{margin-top:10px}.chat-page.school-roster-chat .school-messaging-gmail__bubble__attachments{margin-top:8px;font-size:.82rem}.chat-page.school-roster-chat .school-messaging-gmail__reply{border-top:1px solid var(--iso-border);border-left:4px solid var(--iso-primary);padding:14px 16px 14px 18px;display:flex;flex-direction:column;gap:8px;flex-shrink:0;background:rgba(58,97,80,.05)}.chat-page.school-roster-chat .school-messaging-gmail__reply-head{display:flex;align-items:center;gap:8px;margin-bottom:2px}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline,.chat-page.school-roster-chat .school-messaging-gmail__reply-head__label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline{display:flex;flex-direction:column;gap:6px;margin-top:8px;cursor:pointer}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]{align-self:stretch;width:100%;max-width:100%;box-sizing:border-box;min-height:2.75rem;margin-top:0;padding:.4rem .65rem .4rem .45rem;border:1px solid rgba(58,97,80,.22);border-radius:10px;background:#eff5f1;font:inherit;font-size:.88rem;font-weight:500;letter-spacing:normal;text-transform:none;color:var(--iso-text);cursor:pointer;line-height:1.35}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]:focus{outline:none}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]:focus-visible{outline:2px solid rgba(58,97,80,.45);outline-offset:2px}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]:disabled{opacity:.65;cursor:not-allowed}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]::-webkit-file-upload-button{margin-right:.85rem;padding:.5rem 1.05rem;border:1px solid rgba(58,97,80,.35);border-radius:8px;background:rgba(255,255,255,.92);color:rgba(22,38,30,.92);font:inherit;font-size:.86rem;font-weight:650;letter-spacing:.02em;cursor:pointer;-webkit-transition:background .15s ease,border-color .15s ease;transition:background .15s ease,border-color .15s ease}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]::-webkit-file-upload-button,.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]::file-selector-button{margin-right:.85rem;padding:.5rem 1.05rem;border:1px solid rgba(58,97,80,.35);border-radius:8px;background:rgba(255,255,255,.92);color:rgba(22,38,30,.92);font:inherit;font-size:.86rem;font-weight:650;letter-spacing:.02em;cursor:pointer;-webkit-transition:background .15s ease,border-color .15s ease;transition:background .15s ease,border-color .15s ease}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]:hover:not(:disabled)::-webkit-file-upload-button{background:rgba(58,97,80,.08);border-color:rgba(58,97,80,.45)}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]:hover:not(:disabled)::-webkit-file-upload-button,.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]:hover:not(:disabled)::file-selector-button{background:rgba(58,97,80,.08);border-color:rgba(58,97,80,.45)}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]:disabled::-webkit-file-upload-button{opacity:.55;cursor:not-allowed}.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]:disabled::-webkit-file-upload-button,.chat-page.school-roster-chat .school-messaging-gmail__attach-inline input[type=file]:disabled::file-selector-button{opacity:.55;cursor:not-allowed}.chat-page.school-roster-chat .school-messaging-gmail__attach-mini{display:inline-block;margin-top:8px;font-size:.82rem;cursor:pointer;color:var(--iso-primary,#3a6150);text-decoration:underline}.chat-page.school-roster-chat .school-messaging-gmail__folder-row-text{flex:1 1;min-width:0;text-align:left}.chat-page.school-roster-chat .school-messaging-gmail__folder-row-text--unread{font-weight:700}.chat-page.school-roster-chat .school-messaging-gmail__folder-row-paren{font-weight:700;color:var(--iso-text)}.chat-page.school-roster-chat .school-messaging-gmail__folder-backdrop,.chat-page.school-roster-chat .school-messaging-gmail__folder-drawer,.chat-page.school-roster-chat .school-messaging-gmail__mobile-folder-strip{display:none}@media (min-width:961px){.chat-page.school-roster-chat .school-messaging-gmail__folder-backdrop,.chat-page.school-roster-chat .school-messaging-gmail__folder-drawer,.chat-page.school-roster-chat .school-messaging-gmail__mobile-folder-strip{display:none!important}}@media (max-width:960px){.chat-page.school-roster-chat .school-messaging-gmail__folders--desktop{display:none!important}.chat-page.school-roster-chat .school-messaging-gmail{grid-template-columns:1fr;grid-template-rows:auto 1fr;min-height:auto}.chat-page.school-roster-chat .school-messaging-gmail__mobile-conv-nav{display:flex;align-items:center;padding:8px 10px;border-bottom:1px solid var(--iso-border);background:rgba(255,255,255,.96);flex-shrink:0}.chat-page.school-roster-chat .school-messaging-gmail__mobile-conv-back{font-size:.9rem;padding:8px 12px}.chat-page.school-roster-chat .school-messaging-gmail__list-main--thread-view .school-messaging-gmail__list,.chat-page.school-roster-chat .school-messaging-gmail__list-main--thread-view .school-messaging-gmail__splitter{display:none!important}.chat-page.school-roster-chat .school-messaging-gmail__list-main--thread-view .school-messaging-gmail__conversation{flex:1 1 auto!important;min-height:0!important;width:100%!important;max-height:none!important}.chat-page.school-roster-chat .school-messaging-gmail__list-scroll{max-height:min(40vh,320px)}.chat-page.school-roster-chat .school-messaging-gmail__splitter{display:none!important}.chat-page.school-roster-chat .school-messaging-gmail__list{width:100%!important;flex:0 0 auto!important;max-width:none!important}.chat-page.school-roster-chat .school-messaging-gmail__conversation{flex:1 1 auto;min-height:0}.chat-page.school-roster-chat .school-messaging-gmail__mobile-folder-strip{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--iso-border);background:rgba(255,255,255,.92);grid-column:1;grid-row:1;position:relative;z-index:72}.chat-page.school-roster-chat .school-messaging-gmail__list-main{grid-column:1;grid-row:2;flex-direction:column;min-height:0;max-height:none;flex:1 1 auto}.chat-page.school-roster-chat .school-messaging-gmail__mobile-folder-menu-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid var(--iso-border);border-radius:10px;background:rgba(255,255,255,.9);cursor:pointer;color:var(--iso-text)}.chat-page.school-roster-chat .school-messaging-gmail__mobile-folder-menu-btn:focus-visible{outline:2px solid var(--iso-primary,#3a6150);outline-offset:2px}.chat-page.school-roster-chat .school-messaging-gmail__hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:20px}.chat-page.school-roster-chat .school-messaging-gmail__hamburger span{display:block;height:2px;border-radius:1px;background:var(--iso-text)}.chat-page.school-roster-chat .school-messaging-gmail__mobile-folder-title-wrap{flex:1 1;min-width:0}.chat-page.school-roster-chat .school-messaging-gmail__mobile-folder-title{font-size:1rem;line-height:1.35;color:var(--iso-text);font-weight:500;letter-spacing:-.02em}.chat-page.school-roster-chat .school-messaging-gmail__mobile-folder-title--unread{font-weight:700}.chat-page.school-roster-chat .school-messaging-gmail__mobile-folder-count{font-weight:700;color:var(--iso-text)}.chat-page.school-roster-chat .school-messaging-gmail__mobile-compose-btn{flex-shrink:0;padding:8px 12px;font-size:.85rem}.chat-page.school-roster-chat .school-messaging-gmail__folder-backdrop{display:block;position:fixed;inset:0;z-index:71;margin:0;padding:0;border:none;background:rgba(15,23,20,.42);cursor:pointer;animation:school-messaging-backdrop-in .2s ease}@keyframes school-messaging-backdrop-in{0%{opacity:0}to{opacity:1}}.chat-page.school-roster-chat .school-messaging-gmail__folder-drawer{display:block;grid-column:1;grid-row:1/-1;height:0;margin:0;padding:0;overflow:visible;align-self:start;justify-self:start;position:relative;z-index:78;pointer-events:none}.chat-page.school-roster-chat .school-messaging-gmail__folder-drawer.is-open{pointer-events:auto}.chat-page.school-roster-chat .school-messaging-gmail__folder-drawer .school-messaging-gmail__folders--drawer{position:fixed;top:0;left:0;bottom:0;width:min(300px,88vw);max-width:100vw;transform:translateX(-105%);transition:transform .3s cubic-bezier(.32,.72,0,1);box-shadow:8px 0 36px rgba(0,0,0,.12);border-right:1px solid var(--iso-border);padding-top:max(12px,env(safe-area-inset-top,0px));padding-bottom:max(12px,env(safe-area-inset-bottom,0px));overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--iso-surface,#fff)}.chat-page.school-roster-chat .school-messaging-gmail__folder-drawer.is-open .school-messaging-gmail__folders--drawer{transform:translateX(0)}.chat-page.school-roster-chat .school-messaging-gmail__folders--drawer .school-messaging-gmail__folder-list{flex-direction:column;flex-wrap:nowrap}.chat-page.school-roster-chat .school-messaging-gmail__folders--drawer .school-messaging-gmail__folder-row{flex:none;min-width:0;width:100%}.chat-page.school-roster-chat .school-messaging-gmail__list{border-right:none;border-bottom:1px solid var(--iso-border)}.chat-page.school-roster-chat .school-messaging-gmail__conversation{max-height:none}}.chat-page.school-roster-chat .school-messaging-compose-full{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;min-width:0;width:100%;background:var(--iso-surface,#fff)}.chat-page.school-roster-chat .school-messaging-compose-full__head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--iso-border);background:rgba(0,0,0,.02)}.chat-page.school-roster-chat .school-messaging-compose-full__body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:8px;padding:12px 14px max(20px,env(safe-area-inset-bottom,0px));overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.chat-page.school-roster-chat .school-messaging-compose-full__body textarea.input,.chat-page.school-roster-chat .school-messaging-compose-full__body>textarea.input{min-height:8.5rem;flex-shrink:0;resize:vertical;box-sizing:border-box}.chat-page.school-roster-chat .school-messaging-compose-full__body>.btn,.chat-page.school-roster-chat .school-messaging-compose-full__body>.btn.btn-primary{flex-shrink:0;align-self:flex-start}.chat-page.school-roster-chat .school-messaging-compose-full__scrollbox{flex:0 1 auto;min-height:0;max-height:11rem;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px 10px;border:1px solid var(--iso-border);border-radius:8px;background:rgba(0,0,0,.015)}.chat-page.school-roster-chat .school-messaging-compose-full__scrollbox--tall{max-height:min(22rem,40vh)}.chat-page.school-roster-chat .school-messaging-compose-full__field-label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary,#3a6150);margin-bottom:4px}.chat-page.school-roster-chat .school-messaging-compose-full__field-hint{font-size:.8rem;line-height:1.4;margin:0 0 10px}.chat-page.school-roster-chat .school-messaging-compose-full__cohort-field,.chat-page.school-roster-chat .school-messaging-compose-full__student-field{flex:0 1 auto;min-height:0;display:flex;flex-direction:column}.chat-page.school-roster-chat .school-messaging-compose-full__student-field{margin-top:6px}.chat-page.school-roster-chat .school-messaging-compose-cohort-panel{border:1px solid var(--iso-border);border-radius:10px;background:rgba(0,0,0,.02);padding:6px 0 8px;max-height:min(20rem,42vh);overflow-y:auto;-webkit-overflow-scrolling:touch}.chat-page.school-roster-chat .school-messaging-compose-cohort-group+.school-messaging-compose-cohort-group{border-top:1px solid var(--iso-border)}.chat-page.school-roster-chat .school-messaging-compose-cohort-group__head{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary,#3a6150);padding:8px 12px 4px}.chat-page.school-roster-chat .school-messaging-compose-cohort-group__list{padding:0 8px 4px 10px}.chat-page.school-roster-chat .school-messaging-compose-cohort-row{display:flex;align-items:flex-start;gap:10px;padding:6px 6px 6px 4px;border-radius:6px;cursor:pointer;font-size:.88rem;line-height:1.35;color:var(--iso-text,#1e2b24)}.chat-page.school-roster-chat .school-messaging-compose-cohort-row:hover{background:rgba(58,97,80,.06)}.chat-page.school-roster-chat .school-messaging-compose-cohort-row--accent{font-weight:600;margin:2px 10px 8px;padding:8px;border:1px dashed rgba(58,97,80,.35);border-radius:8px;background:rgba(58,97,80,.04)}.chat-page.school-roster-chat .school-messaging-compose-cohort-row input[type=checkbox]{margin-top:3px;flex-shrink:0}.chat-page.school-roster-chat .school-messaging-compose-cohort-row__label{flex:1 1;min-width:0}.chat-page.school-roster-chat .school-messaging-compose-intro{font-size:.86rem;line-height:1.45;margin:0 0 14px}.chat-page.school-roster-chat .school-messaging-compose-address{display:flex;flex-direction:column;gap:14px;margin-bottom:6px;flex-shrink:0}.chat-page.school-roster-chat .school-messaging-compose-address__whole-school{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;border:1px solid var(--iso-border);background:rgba(58,97,80,.06);font-size:.9rem;font-weight:600}.chat-page.school-roster-chat .school-messaging-compose-address__to-block{border:1px solid var(--iso-border);border-radius:10px;padding:10px 12px 12px;background:rgba(0,0,0,.02)}.chat-page.school-roster-chat .school-messaging-compose-address__to-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.chat-page.school-roster-chat .school-messaging-compose-address__to-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary,#3a6150)}.chat-page.school-roster-chat .school-messaging-compose-chip-list{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-height:2.25rem}.chat-page.school-roster-chat .school-messaging-compose-chip-list__empty{font-size:.86rem}.chat-page.school-roster-chat .school-messaging-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 6px 4px 10px;border-radius:999px;border:1px solid var(--iso-border);background:var(--iso-surface,#fff);font-size:.82rem;line-height:1.3}.chat-page.school-roster-chat .school-messaging-chip--primary{border-color:rgba(58,97,80,.45);background:rgba(58,97,80,.08);font-weight:600}.chat-page.school-roster-chat .school-messaging-chip__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(22rem,70vw)}.chat-page.school-roster-chat .school-messaging-chip__remove{flex-shrink:0;border:none;background:transparent;cursor:pointer;padding:0 4px;font-size:1.1rem;line-height:1;color:var(--iso-muted);border-radius:4px}.chat-page.school-roster-chat .school-messaging-chip__remove:hover{color:var(--iso-text,#1e2b24);background:rgba(0,0,0,.06)}.chat-page.school-roster-chat .school-messaging-compose-pickers{display:flex;flex-direction:column;gap:12px}.chat-page.school-roster-chat .school-messaging-compose-pickers__grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}@media (max-width:560px){.chat-page.school-roster-chat .school-messaging-compose-pickers__grid{grid-template-columns:1fr}}.chat-page.school-roster-chat .school-messaging-compose-pickers__field{display:flex;flex-direction:column;gap:4px;min-width:0}.chat-page.school-roster-chat .school-messaging-compose-pickers__field-cap{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--iso-primary,#3a6150)}.chat-page.school-roster-chat .school-messaging-compose-scope{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--iso-border);border-radius:8px;background:rgba(0,0,0,.015)}.chat-page.school-roster-chat .school-messaging-compose-scope__title{font-size:.78rem;font-weight:700;color:var(--iso-muted)}.chat-page.school-roster-chat .school-messaging-compose-radio{display:flex;align-items:flex-start;gap:8px;font-size:.88rem;cursor:pointer}.chat-page.school-roster-chat .school-messaging-compose-radio input{margin-top:3px;flex-shrink:0}.chat-page.school-roster-chat .school-messaging-compose-student-scroll{max-height:min(14rem,32vh);overflow-y:auto;-webkit-overflow-scrolling:touch;padding:4px 4px 6px;border:1px solid var(--iso-border);border-radius:8px;background:var(--iso-surface,#fff)}.chat-page.school-roster-chat .school-messaging-compose-student-row{display:flex;align-items:center;gap:8px;padding:5px 4px;border-radius:6px;font-size:.88rem;cursor:pointer}.chat-page.school-roster-chat .school-messaging-compose-student-row:hover{background:rgba(58,97,80,.06)}.school-messaging-bulk-confirm-overlay{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.4)}.school-messaging-bulk-confirm-panel{max-width:26rem;width:100%;border-radius:12px;border:1px solid var(--iso-border);background:var(--iso-surface,#fff);box-shadow:0 16px 48px rgba(0,0,0,.2);padding:18px 20px 20px}.school-messaging-compose-overlay{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:flex-end;padding:16px;pointer-events:none}.school-messaging-compose-overlay>*{pointer-events:auto}.school-messaging-compose-overlay__backdrop{position:absolute;inset:0;border:none;background:rgba(0,0,0,.35);cursor:pointer}.school-messaging-compose-panel{position:relative;z-index:1;width:min(100%,28rem);max-height:calc(100vh - 32px);overflow:auto;border-radius:12px;border:1px solid var(--iso-border);background:var(--iso-surface,#fff);box-shadow:0 12px 40px rgba(0,0,0,.18);display:flex;flex-direction:column}.school-messaging-compose-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--iso-border)}.school-messaging-compose-panel__body{padding:14px;display:flex;flex-direction:column;gap:6px}.phone-input-row{display:flex;gap:8px;align-items:stretch}.phone-input-cc{width:auto;min-width:5.5rem;flex-shrink:0}.phone-input-row .phone-input-number{flex:1 1;min-width:0}.otp-input-row{display:flex;gap:8px;align-items:center;position:relative}.otp-input-row .otp-input{flex:1 1;min-width:0;padding-right:48px}.otp-visibility-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;background:transparent;color:var(--iso-muted);cursor:pointer;border-radius:8px;transition:color .2s ease,background .2s ease}.otp-visibility-btn:hover{color:var(--iso-primary);background:rgba(58,97,80,.08)}.otp-visibility-btn:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page{--chat-kid-sky:rgba(186,230,253,0.5);--chat-kid-peach:rgba(254,215,200,0.42);--chat-kid-mint:rgba(187,247,208,0.38);position:relative;isolation:isolate;padding:14px 12px 12px;margin:4px -2px 0;border-radius:24px;min-height:calc(100vh - 100px);background:radial-gradient(ellipse 95% 60% at 10% -8%,var(--chat-kid-sky),transparent 58%),radial-gradient(ellipse 85% 55% at 96% 4%,var(--chat-kid-peach),transparent 52%),radial-gradient(ellipse 75% 50% at 48% 108%,var(--chat-kid-mint),transparent 50%),linear-gradient(168deg,#edf6f1 0,#f5faf7 45%,#eef5f0 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.chat-page:before{inset:0;border-radius:inherit;background-image:radial-gradient(rgba(255,255,255,.5) 1px,transparent 0);background-size:22px 22px;opacity:.45}.chat-page:after,.chat-page:before{content:"";position:absolute;pointer-events:none;z-index:1}.chat-page:after{width:120px;height:120px;top:8%;right:6%;border-radius:50%;background:radial-gradient(circle,rgba(255,200,180,.25) 0,transparent 70%)}.chat-page-ambient{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;background:radial-gradient(ellipse 120% 100% at 25% 35%,rgba(167,220,255,.42),transparent 54%),radial-gradient(ellipse 100% 90% at 85% 55%,rgba(255,210,190,.38),transparent 50%);animation:chat-ambient-breathe 20s ease-in-out infinite alternate}@keyframes chat-ambient-breathe{0%{opacity:.5;transform:scale(1)}to{opacity:.92;transform:scale(1.035)}}@media (prefers-reduced-motion:reduce){.chat-page-ambient{animation:none;opacity:.72}}.chat-page>:not(.chat-page-ambient):not(.chat-floating-mascot-wrap){position:relative;z-index:2}.chat-page--empty,.chat-page--loading{min-height:min(70vh,520px)}.chat-panel{border-radius:20px;background:rgba(255,255,255,.58);border-color:rgba(58,97,80,.2);box-shadow:0 10px 40px rgba(35,65,50,.1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chat-page .chat-sidebar.panel{max-height:100vh;background:linear-gradient(155deg,rgba(255,255,255,.88),rgba(232,248,238,.92));border-color:rgba(58,97,80,.18);border-radius:20px;box-shadow:0 6px 28px rgba(40,75,58,.09)}.chat-page .sidebar-top .muted{font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;color:var(--iso-primary)}.chat-page .session-item{border-radius:16px;background:rgba(255,255,255,.65);border-color:rgba(58,97,80,.14);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.chat-page .session-item:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(40,75,58,.12);background:rgba(255,255,255,.9)}.chat-page .session-item-active{border-color:rgba(58,97,80,.45);background:linear-gradient(135deg,#e4f5ea,#d8f0e3);box-shadow:0 4px 14px rgba(58,97,80,.15)}.chat-page .chat-shell{background:linear-gradient(185deg,rgba(255,255,255,.82),rgba(240,253,246,.94) 55%,rgba(236,252,244,.98));border-color:rgba(58,97,80,.16);border-radius:22px;box-shadow:0 8px 36px rgba(35,65,50,.1)}.chat-page .chat-header{border-bottom-color:rgba(58,97,80,.12);background:linear-gradient(180deg,rgba(255,255,255,.35),transparent);border-radius:22px 22px 0 0}.chat-page .bubble{font-size:1.02rem;line-height:1.62;border-radius:20px;padding:12px 14px}.chat-page .bubble-user{background:linear-gradient(145deg,#41725e 0,var(--iso-primary) 55%,#335a4a 100%);box-shadow:0 4px 16px rgba(58,97,80,.28)}.chat-page .bubble-assistant{background:linear-gradient(180deg,#ffffff,#f0faf4);border-color:rgba(58,97,80,.12);box-shadow:0 3px 14px rgba(40,75,58,.07)}.chat-page .summary-box{border-radius:16px;border-style:solid;background:rgba(255,255,255,.65);border-color:rgba(58,97,80,.14)}.chat-page .chat-messages{background:radial-gradient(ellipse 80% 80% at 50% 0,rgba(255,255,255,.35),transparent 65%)}.chat-page .chat-composer{background:linear-gradient(352deg,#c0d4d2,rgb(219 234 223/85%));border-top-color:rgba(58,97,80,.1);border-radius:0 0 20px 20px}.chat-page .chat-composer-label{display:block;margin-bottom:.625rem;font-weight:600;font-size:.95rem;color:var(--iso-primary);letter-spacing:.01em}.chat-page .textarea{border-radius:18px;background:rgba(255,255,255,.92);border-color:rgba(58,97,80,.18);font-size:1.02rem;line-height:1.5}.chat-page .chat-composer .companion-mode-pill{border-radius:8px;padding:7px 12px;font-size:.8125rem;line-height:1.25;transition:background .22s ease,border-color .22s ease,box-shadow .22s ease,filter .22s ease,transform .22s ease}.chat-page .chat-composer .companion-mode-pill:not(.btn-primary){background:rgba(255,255,255,.5);border-color:rgba(32,43,37,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}.chat-page .chat-composer .companion-mode-pill:not(.btn-primary):hover{background:rgba(255,255,255,.95);border-color:rgba(58,97,80,.45);border-radius:8px;box-shadow:0 4px 16px rgba(32,60,48,.14);transform:translateY(-1px)}.chat-page .chat-composer .companion-mode-pill:not(.btn-primary):active{transform:translateY(0);box-shadow:0 2px 8px rgba(32,60,48,.1)}.chat-page .chat-composer .companion-mode-pill.btn-primary{border-radius:9999px}.chat-page .chat-composer .companion-mode-pill.btn-primary:hover{filter:brightness(1.08);box-shadow:0 4px 16px rgba(58,97,80,.35);transform:translateY(-1px)}.chat-page .chat-composer .companion-mode-pill.btn-primary:active{transform:translateY(0);filter:brightness(1)}.chat-page .message-hint-btn{background:linear-gradient(145deg,#fff9e6,#fff3d6);border-color:rgba(200,160,80,.35)}.chat-page .profile-btn,.chat-page .signout-btn{background:linear-gradient(180deg,#ffffff,#eef8f1);box-shadow:0 2px 8px rgba(40,75,58,.08)}@media (prefers-reduced-motion:reduce){.chat-page .session-item{transition:none}.chat-page .chat-composer .companion-mode-pill:active,.chat-page .chat-composer .companion-mode-pill:hover,.chat-page .session-item:hover{transform:none}}.chat-mascot{flex-shrink:0;filter:drop-shadow(0 6px 14px rgba(58,97,80,.18))}.chat-floating-mascot-wrap{display:none;position:fixed;bottom:120px;right:24px;z-index:20;cursor:pointer}@media (min-width:960px){.chat-floating-mascot-wrap{display:block}}.chat-floating-mascot{animation:chat-mascot-float 4s ease-in-out infinite}.chat-floating-mascot.chat-mascot--companion{animation:chat-mascot-idle-companion 4s ease-in-out infinite}.chat-floating-mascot.chat-mascot--subject_teacher{animation:chat-mascot-idle-teacher 5s ease-in-out infinite}.chat-floating-mascot.chat-mascot--communication_coach{animation:chat-mascot-idle-coach 4.5s ease-in-out infinite}.chat-floating-mascot.chat-mascot--expert{animation:chat-mascot-idle-expert 5s ease-in-out infinite}.chat-floating-mascot.chat-mascot--thinking{animation:chat-mascot-thinking-bob 2s ease-in-out infinite}.chat-mascot-thinking-dots circle{animation:chat-mascot-dot-pulse 1.2s ease-in-out infinite}.chat-mascot-thinking-dots circle:first-child{animation-delay:0s}.chat-mascot-thinking-dots circle:nth-child(2){animation-delay:.2s}.chat-mascot-thinking-dots circle:nth-child(3){animation-delay:.4s}@keyframes chat-mascot-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes chat-mascot-idle-companion{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-4px) rotate(-2deg)}75%{transform:translateY(-4px) rotate(2deg)}}@keyframes chat-mascot-idle-teacher{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.02)}}@keyframes chat-mascot-idle-coach{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.02)}}@keyframes chat-mascot-idle-expert{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-5px) rotate(2deg)}}@keyframes chat-mascot-thinking-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes chat-mascot-dot-pulse{0%,to{opacity:.4}50%{opacity:.9}}.chat-floating-mascot-wrap.mascot-celebrate{transform-origin:50% 85%;animation:mascot-celebrate-wrap-glow 1.35s cubic-bezier(.34,1.3,.64,1) 1 forwards}@keyframes mascot-celebrate-wrap-glow{0%,to{filter:drop-shadow(0 6px 14px rgba(54,120,90,.18));transform:scale(1)}35%{filter:drop-shadow(0 22px 42px rgba(46,125,95,.48));transform:scale(1.08)}65%{filter:drop-shadow(0 14px 28px rgba(54,120,90,.32));transform:scale(1.03)}}.chat-composer--micro-celebrate{animation:chat-composer-micro-celebrate .9s ease-out 1}@keyframes chat-composer-micro-celebrate{0%,to{box-shadow:0 0 0 0 rgba(58,97,80,0)}35%{box-shadow:0 0 0 3px rgba(58,97,80,.2),0 12px 32px rgba(46,100,78,.12)}}.mascot-celebrate .chat-floating-mascot{animation:none}.mascot-celebrate--companion .chat-floating-mascot{animation:mascot-celebrate-jump-spin 1.35s cubic-bezier(.34,1.25,.64,1) 1 forwards}.mascot-celebrate--subject_teacher .chat-floating-mascot{animation:mascot-celebrate-bounce-nod 1.35s cubic-bezier(.34,1.2,.64,1) 1 forwards}.mascot-celebrate--communication_coach .chat-floating-mascot{animation:mascot-celebrate-wave-pop 1.35s cubic-bezier(.34,1.2,.64,1) 1 forwards}.mascot-celebrate--expert .chat-floating-mascot{animation:mascot-celebrate-lightbulb-pop 1.35s cubic-bezier(.34,1.35,.64,1) 1 forwards}.mascot-celebrate--thinking .chat-floating-mascot{animation:mascot-celebrate-thinking-ding 1.15s cubic-bezier(.34,1.2,.64,1) 1 forwards}@keyframes mascot-celebrate-jump-spin{0%{transform:translateY(0) rotate(0deg) scale(1)}22%{transform:translateY(-38px) rotate(100deg) scale(1.06)}48%{transform:translateY(-52px) rotate(200deg) scale(1.1)}72%{transform:translateY(-18px) rotate(300deg) scale(1.04)}to{transform:translateY(0) rotate(1turn) scale(1)}}@keyframes mascot-celebrate-bounce-nod{0%{transform:translateY(0) scale(1)}18%{transform:translateY(-32px) scale(1.08)}38%{transform:translateY(-6px) scale(1.14)}52%{transform:translateY(-22px) scale(1.08)}68%{transform:translateY(0) scale(1.05)}82%{transform:translateY(-8px) scale(1.02)}to{transform:translateY(0) scale(1)}}@keyframes mascot-celebrate-wave-pop{0%{transform:translateY(0) scale(1) rotate(0deg)}12%{transform:translateY(-22px) scale(1.18) rotate(-12deg)}28%{transform:translateY(-12px) scale(1.12) rotate(12deg)}44%{transform:translateY(-28px) scale(1.16) rotate(-7deg)}58%{transform:translateY(-10px) scale(1.06) rotate(6deg)}78%{transform:translateY(-5px) scale(1.03) rotate(3deg)}to{transform:translateY(0) scale(1) rotate(0deg)}}@keyframes mascot-celebrate-lightbulb-pop{0%{transform:scale(1) translateY(0)}22%{transform:scale(1.32) translateY(-10px)}48%{transform:scale(1.2) translateY(-4px)}72%{transform:scale(1.1) translateY(-2px)}to{transform:scale(1) translateY(0)}}@keyframes mascot-celebrate-thinking-ding{0%{transform:translateY(0) rotate(0deg) scale(1)}22%{transform:translateY(-18px) rotate(-8deg) scale(1.06)}45%{transform:translateY(-8px) rotate(8deg) scale(1.04)}68%{transform:translateY(-12px) rotate(-4deg) scale(1.02)}to{transform:translateY(0) rotate(0deg) scale(1)}}@media (prefers-reduced-motion:reduce){.chat-floating-mascot,.chat-floating-mascot.chat-mascot--communication_coach,.chat-floating-mascot.chat-mascot--companion,.chat-floating-mascot.chat-mascot--expert,.chat-floating-mascot.chat-mascot--subject_teacher,.chat-floating-mascot.chat-mascot--thinking{animation:none}.chat-mascot-thinking-dots circle{animation:none;opacity:.6}.mascot-celebrate--communication_coach .chat-floating-mascot,.mascot-celebrate--companion .chat-floating-mascot,.mascot-celebrate--expert .chat-floating-mascot,.mascot-celebrate--subject_teacher .chat-floating-mascot,.mascot-celebrate--thinking .chat-floating-mascot{animation:none}.chat-floating-mascot-wrap.mascot-celebrate{animation:none;filter:none;transform:none}.chat-composer--micro-celebrate{animation:none}}.chat-empty-intro,.chat-empty-mascot{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.35rem;margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px dashed rgba(58,97,80,.2)}.chat-empty-kicker{margin:.25rem 0 0;font-size:1.15rem;font-weight:600;color:var(--iso-primary);letter-spacing:.02em}.chat-empty-hint{margin:0;max-width:36ch;font-size:.9rem}.chat-welcome-mascot{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.75rem;padding:.5rem 0}.chat-welcome-sparkles{font-size:1.35rem;opacity:.85;animation:chat-sparkle-nod 3s ease-in-out infinite}@keyframes chat-sparkle-nod{0%,to{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-3px) rotate(6deg)}}@media (prefers-reduced-motion:reduce){.chat-welcome-sparkles{animation:none}}.chat-app{display:grid;grid-template-columns:300px minmax(0,1fr);grid-gap:12px;gap:12px}.chat-main-wrap{min-width:0;display:flex;flex-direction:column;gap:12px}.chat-sidebar{min-height:78vh;display:grid;grid-template-rows:auto 1fr;overflow:hidden}.sidebar-top{display:flex;flex-direction:column;align-items:stretch;gap:8px}.sidebar-top .sidebar-actions{width:100%;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:8px;gap:8px}.sidebar-top .sidebar-actions .btn{width:100%;text-align:center}.sidebar-top .sidebar-challenge-btn{width:100%;min-width:0;font-size:.95rem;font-weight:600}.sidebar-top .sidebar-challenge-btn--active{border-color:var(--iso-primary);background:#dce9e2;box-shadow:inset 0 0 0 1px rgba(58,97,80,.2)}.session-list{margin-top:12px;overflow-y:auto;display:grid;grid-gap:8px;gap:8px}.session-item{text-align:left;border:1px solid var(--iso-border);border-radius:10px;background:#e9f0eb;padding:10px;cursor:pointer}.session-item-active{border-color:var(--iso-primary);background:#dce9e2}.session-title{font-weight:600;font-size:14px}.session-preview{margin-top:4px;font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chat-shell{border:1px solid var(--iso-border);background:var(--iso-panel);border-radius:14px;min-height:78vh;min-width:0;display:grid;grid-template-rows:auto auto 1fr auto}.chat-settings-tuning-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:12px 16px;border-bottom:1px solid rgba(200,150,50,.45);background:linear-gradient(180deg,#fff6dc,#ffefbf);color:#4a3d12;font-size:.94rem;line-height:1.45;border-radius:14px 14px 0 0}.chat-settings-tuning-banner p{margin:0;flex:1 1}.chat-settings-tuning-banner-link{color:#a35f00;font-weight:600;text-decoration:underline}.chat-settings-tuning-banner-link:hover{color:#7a4500}.chat-settings-tuning-banner-dismiss{flex-shrink:0;align-self:flex-start}.chat-header{padding:16px;border-bottom:1px solid rgba(32,43,37,.18);display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-btn{width:46px;height:46px;border-radius:999px;border:1px solid var(--iso-border);background:#eef6f0;font-size:22px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.profile-btn--labeled{width:auto;min-height:46px;padding:0 12px;gap:8px;justify-content:flex-start}.profile-btn-avatar{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;border:1px solid rgba(58,97,80,.2);background:rgba(255,255,255,.7);font-size:17px;line-height:1}.profile-btn-label{font-size:.95rem;font-weight:600;line-height:1;white-space:nowrap;max-width:8.5rem;overflow:hidden;text-overflow:ellipsis}.profile-header-block{display:flex;align-items:center;min-width:0}.profile-btn-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.profile-menu-anchor{position:relative}.profile-btn-chevron{font-size:.9rem;color:rgba(35,58,48,.75);margin-left:2px}.profile-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;max-height:min(50vh,320px);overflow-y:auto;background:#ffffff;border:1px solid rgba(32,43,37,.14);border-radius:12px;box-shadow:0 14px 28px rgba(20,35,29,.16);padding:6px;z-index:40}.profile-dropdown-item{width:100%;border:0;background:transparent;text-align:left;font-size:.92rem;font-weight:600;color:var(--iso-text);padding:10px 12px;border-radius:9px;cursor:pointer}.profile-dropdown-item:hover{background:#eef6f0}.profile-dropdown-item:focus-visible{outline:2px solid var(--iso-primary);outline-offset:1px}.profile-dropdown-item--active{background:#e8f2ec}.chat-sidebar-profile-list{display:flex;flex-direction:column;gap:6px;padding:0 0 4px}.chat-sidebar-profile-list .btn{width:100%;text-align:left;justify-content:flex-start;gap:8px}.signout-btn,a.signout-btn{width:46px;height:46px;border-radius:999px;border:1px solid var(--iso-border);background:#eef6f0;color:var(--iso-text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;text-decoration:none}.chat-switcher-title{font-size:.9rem;font-weight:700;color:rgba(35,58,48,.85);margin-bottom:8px}.leaderboard-page{width:min(1100px,100%);margin:0 auto;padding:18px 12px 24px}.leaderboard-card{display:flex;flex-direction:column;min-height:min(72vh,920px);background:var(--iso-panel);border:1px solid rgba(32,43,37,.12);border-radius:16px;padding:16px}.leaderboard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.leaderboard-header h1{margin:0 0 4px}.leaderboard-bonus-marks-note{margin-top:auto;margin-bottom:0;padding-top:16px;text-align:left;font-size:.92rem;font-style:italic;line-height:1.45;max-width:52rem;color:var(--iso-muted)}.leaderboard-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.leaderboard-filters label{display:grid;grid-gap:6px;gap:6px;min-width:180px}.leaderboard-period-tabs{display:inline-flex;gap:0;margin-bottom:14px;border:1px solid rgba(58,97,80,.22);border-radius:10px;overflow:hidden;background:#f3f8f5}.leaderboard-period-tab{border:0;background:transparent;padding:10px 20px;font-size:.92rem;font-weight:600;color:rgba(35,58,48,.7);cursor:pointer;transition:background .15s,color .15s}.leaderboard-period-tab:not(:last-child){border-right:1px solid rgba(58,97,80,.18)}.leaderboard-period-tab:hover{background:#e4f0ea;color:var(--iso-text)}.leaderboard-period-tab--active,.leaderboard-period-tab--active:hover{background:var(--iso-primary,#3a6150);color:#fff}.leaderboard-period-tab:focus-visible{outline:2px solid var(--iso-primary);outline-offset:-2px}.leaderboard-table-wrap{overflow:auto;border-radius:12px;border:1px solid rgba(32,43,37,.12)}.leaderboard-table{width:100%;border-collapse:collapse;background:#fff}.leaderboard-table td,.leaderboard-table th{text-align:left;padding:10px 12px;border-bottom:1px solid rgba(32,43,37,.08);white-space:nowrap;font-size:.92rem}.leaderboard-table th{background:#f3f8f5;color:rgba(35,58,48,.88);font-weight:700}.leaderboard-table tbody tr:hover{background:#f9fcfa}.leaderboard-rank-cell{display:inline-flex;align-items:center;gap:6px}.leaderboard-rank-medal{min-width:1.3em;text-align:center}.signout-btn:hover{background:#e4f0ea}.signout-btn:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.signout-btn-icon{width:22px;height:22px}.signout-btn.signout-btn--labeled,a.signout-btn.signout-btn--labeled{width:auto;min-width:116px;min-height:46px;padding:0 12px;gap:8px;justify-content:flex-start}.signout-btn-label{font-size:.88rem;font-weight:600;line-height:1;white-space:nowrap}.chat-switcher{padding:0 16px 12px}.inline{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.chat-messages{overflow-x:hidden;overflow-y:auto;max-height:56vh;padding:16px}.summary-box{border:1px dashed var(--iso-border);border-radius:10px;background:#eef5f1;padding:10px;margin-bottom:12px}.bubble-row{display:flex;margin-bottom:10px}.bubble-row-user{justify-content:flex-end}.bubble-row-assistant{justify-content:flex-start}.bubble{min-width:0;max-width:min(78ch,85%);border-radius:14px;padding:10px 12px;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word}.bubble-user{background:var(--iso-primary);color:#fff}.bubble-assistant{background:#edf5ef;border:1px solid var(--iso-border)}.bubble-greeting{white-space:pre-line;line-height:1.55}.chat-message-md{white-space:normal;word-break:break-word;overflow-wrap:break-word;line-height:1.55;max-width:100%;overflow-x:auto}.chat-message-md code,.chat-message-md pre{white-space:pre-wrap;word-break:break-word;max-width:100%;overflow-x:auto}.chat-message-md pre:has(code.language-figure){white-space:pre;word-break:normal;overflow-x:auto;padding:.65rem .75rem;margin:.5em 0;border-radius:8px;border:1px solid var(--iso-border,rgba(32,43,37,.15));background:rgba(32,43,37,.04)}.chat-message-md pre:not(:has(code.language-figure)):not(.chat-message-mermaid-fallback){margin:.7em 0;padding:.8rem .95rem;border-radius:10px;border:1px solid rgba(32,43,37,.13);background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(241,247,244,.92));box-shadow:inset 0 1px 0 rgba(255,255,255,.88);white-space:pre-wrap}.chat-message-md pre:not(:has(code.language-figure)):not(.chat-message-mermaid-fallback) code{font-family:ui-monospace,Cascadia Code,SF Mono,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.8125rem;line-height:1.52;color:#14261c;display:block;background:transparent!important;padding:0;border:none}.chat-message-md blockquote code,.chat-message-md h1 code,.chat-message-md h2 code,.chat-message-md h3 code,.chat-message-md h4 code,.chat-message-md li p code,.chat-message-md li>code,.chat-message-md p code,.chat-message-md td code,.chat-message-md th code{font-family:ui-monospace,Cascadia Code,SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.88em;padding:.12em .4em;border-radius:5px;background:rgba(58,97,80,.1);border:1px solid rgba(58,97,80,.12);color:#1a2e22}.chat-message-md p{margin:.5em 0}.chat-message-md p:first-child{margin-top:0}.chat-message-md p:last-child{margin-bottom:0}.chat-message-md p:has(>strong:only-child){margin-top:.85em;margin-bottom:.35em;font-size:.98em;letter-spacing:.01em;color:var(--iso-primary)}.chat-message-md p:has(>strong:only-child):first-child{margin-top:0}.chat-message-md p:has(>strong:only-child) strong{font-weight:700;color:inherit}.chat-message-md h1,.chat-message-md h2,.chat-message-md h3,.chat-message-md h4{margin:.85em 0 .4em;font-weight:700;line-height:1.32;color:var(--iso-text)}.chat-message-md h1{font-size:1.2em}.chat-message-md h2{font-size:1.12em}.chat-message-md h3{font-size:1.06em}.chat-message-md h4{font-size:1em}.chat-message-md h1:first-child,.chat-message-md h2:first-child,.chat-message-md h3:first-child,.chat-message-md h4:first-child{margin-top:0}.chat-message-md hr{margin:1em 0;border:none;border-top:1px solid rgba(32,43,37,.14)}.chat-message-md blockquote{margin:.55em 0;padding:.5em .9em;border-left:3px solid rgba(58,97,80,.4);background:rgba(58,97,80,.06);border-radius:0 10px 10px 0;color:var(--iso-text)}.chat-message-md blockquote p{margin:.35em 0}.chat-message-md strong{font-weight:600;color:rgba(22,40,32,.95)}.chat-message-md ol,.chat-message-md ul{margin:.45em 0;padding-left:1.35rem}.chat-message-md li{margin:.3em 0;padding-left:.1em}.chat-message-md li>p{margin:.35em 0}.chat-message-md li>p:first-child{margin-top:0}.chat-message-md li>p:last-child{margin-bottom:0}.chat-message-md ol ol,.chat-message-md ol ul,.chat-message-md ul ol,.chat-message-md ul ul{margin:.35em 0}.chat-message-md p+ol,.chat-message-md p+ul{margin-top:.3em}.chat-message-md table{width:100%;max-width:100%;border-collapse:collapse;margin:.65em 0;font-size:.92em;line-height:1.4}.chat-message-md td,.chat-message-md th{border:1px solid rgba(32,43,37,.14);padding:.4em .65em;text-align:left;vertical-align:top}.chat-message-md th{background:rgba(58,97,80,.09);font-weight:600}.chat-message-md tbody tr:nth-child(2n){background:rgba(255,255,255,.35)}.chat-message-md .katex-display{overflow-x:auto;max-width:100%;margin:.4em 0;padding:.15em 0}.chat-message-md .katex{font-size:1.05em}.chat-message-md .katex-error{color:var(--iso-katex-error,#8b3a3a);background:rgba(139,58,58,.08);border-radius:4px;padding:0 .15em;font-size:.92em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.chat-message-md img{display:block;max-width:100%;width:auto;height:auto;margin:.5em 0;border-radius:8px;border:1px solid var(--iso-border,rgba(32,43,37,.12))}.chat-message-md .chat-message-mermaid{margin:.55em 0;overflow-x:auto;max-width:100%;padding:.5rem .65rem;border-radius:8px;border:1px solid var(--iso-border,rgba(32,43,37,.15));background:rgba(32,43,37,.03)}.chat-message-md .chat-message-mermaid svg{display:block;max-width:100%;height:auto}.chat-message-md pre.chat-message-mermaid-fallback{white-space:pre-wrap;margin:.5em 0;padding:.65rem .75rem;border-radius:8px;border:1px solid var(--iso-border,rgba(32,43,37,.15));background:rgba(180,60,60,.06)}.chat-pending-reply{display:inline-flex;align-items:center;gap:6px;min-height:2.4rem}.chat-pending-reply-label{font-size:.95em;font-style:italic;color:rgba(32,43,37,.55)}.chat-pending-dots{display:inline-flex;gap:4px;align-items:center}.chat-pending-dots span{width:5px;height:5px;border-radius:50%;background:rgba(58,97,80,.45);animation:chat-pending-dot 1.2s ease-in-out infinite}.chat-pending-dots span:nth-child(2){animation-delay:.15s}.chat-pending-dots span:nth-child(3){animation-delay:.3s}@keyframes chat-pending-dot{0%,80%,to{opacity:.35;transform:scale(.9)}40%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.chat-pending-dots span{animation:none;opacity:.65}}.subject-teacher-followups{border-top:1px solid rgba(32,43,37,.12);padding:10px 16px 12px;background:linear-gradient(180deg,rgba(237,246,241,.65),rgba(255,255,255,.4))}.subject-teacher-followups-head{display:flex;align-items:center;gap:6px;margin-bottom:8px}.subject-teacher-followups-icon{font-size:1rem;line-height:1}.subject-teacher-followups--class-note-inline .subject-teacher-followups-chips{flex-direction:column;align-items:stretch;gap:10px}.subject-teacher-followups--class-note-inline .subject-teacher-followup-chip{display:flex;width:100%;border-radius:12px;text-align:left;justify-content:flex-start;max-width:100%;font-size:.9rem;line-height:1.45;padding:10px 14px}.subject-teacher-followups-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--iso-primary);opacity:.88}.subject-teacher-followups-chips{display:flex;flex-wrap:wrap;gap:8px}.subject-teacher-followup-chip{font-size:13px;font-weight:500;text-align:left;line-height:1.35;padding:8px 12px;border-radius:999px;border:1px solid rgba(58,97,80,.28);background:rgba(255,255,255,.92);color:var(--iso-text,#1e2a24);max-width:100%;white-space:normal;transition:background .15s ease,border-color .15s ease}.subject-teacher-followup-chip:hover:not(:disabled){background:rgba(255,255,255,1);border-color:rgba(58,97,80,.45)}.subject-teacher-followup-chip:disabled{opacity:.65}.assist-style-drawer-root.followups-drawer-root,.followups-drawer-root{z-index:225}@keyframes assist-style-drawer-up{0%{transform:translateY(100%);opacity:.85}to{transform:translateY(0);opacity:1}}.followups-drawer-body{gap:14px}.followups-drawer-status{margin:0;font-size:.875rem;line-height:1.45}.followups-drawer-chips{display:flex;flex-direction:column;gap:10px;align-items:stretch}.followups-drawer-chips .subject-teacher-followup-chip{border-radius:14px;max-width:100%}.companion-mode-assist-icon{display:block}.chat-app:not(.notes-app) .chat-composer .companion-mode-assist-trigger,.chat-app:not(.notes-app) .chat-composer .companion-mode-mobile-suggestions-btn,.chat-app:not(.notes-app) .chat-composer .notes-composer-minmax-btn,.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--new,.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--send{background:linear-gradient(165deg,#243d32 0,var(--iso-primary,#3a6150) 42%,#1e3329 100%);color:#fff;border:1px solid rgba(0,0,0,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 2px 10px rgba(18,38,30,.35)}.chat-app:not(.notes-app) .chat-composer .companion-mode-assist-trigger:hover:not(:disabled),.chat-app:not(.notes-app) .chat-composer .companion-mode-mobile-suggestions-btn:hover:not(:disabled),.chat-app:not(.notes-app) .chat-composer .notes-composer-minmax-btn:hover:not(:disabled),.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--new:hover:not(:disabled),.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--send:hover:not(:disabled){background:linear-gradient(165deg,#2a4a3c,#3d6b56 45%,#243d32);color:#fff}.chat-app:not(.notes-app) .chat-composer .companion-mode-assist-trigger:active:not(:disabled),.chat-app:not(.notes-app) .chat-composer .companion-mode-mobile-suggestions-btn:active:not(:disabled),.chat-app:not(.notes-app) .chat-composer .notes-composer-minmax-btn:active:not(:disabled),.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--new:active:not(:disabled),.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--send:active:not(:disabled){transform:scale(.96)}.chat-app:not(.notes-app) .chat-composer .companion-mode-assist-trigger:disabled,.chat-app:not(.notes-app) .chat-composer .companion-mode-mobile-suggestions-btn:disabled,.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--new:disabled,.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--send:disabled{opacity:.42;cursor:not-allowed;transform:none}.chat-app:not(.notes-app) .chat-composer .companion-mode-assist-trigger:focus-visible,.chat-app:not(.notes-app) .chat-composer .companion-mode-mobile-suggestions-btn:focus-visible,.chat-app:not(.notes-app) .chat-composer .notes-composer-minmax-btn:focus-visible,.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--new:focus-visible,.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--send:focus-visible{outline:2px solid rgba(255,255,255,.9);outline-offset:2px}.chat-app:not(.notes-app) .chat-composer .companion-mode-assist-trigger,.chat-app:not(.notes-app) .chat-composer .companion-mode-mobile-suggestions-btn,.chat-app:not(.notes-app) .chat-composer .notes-composer-minmax-btn{box-sizing:border-box;min-width:44px;min-height:44px;width:44px;height:44px;padding:0;margin:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center}.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--new,.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--send{position:relative;box-sizing:border-box;flex:0 0 auto;min-width:44px;min-height:44px;width:44px;height:44px;padding:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center}.chat-app:not(.notes-app) .chat-composer .notes-composer-btn--new .notes-composer-btn-text-full,.chat-app:not(.notes-app) .chat-composer .notes-composer-btn--send .notes-composer-btn-text-full{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chat-app:not(.notes-app) .chat-composer .notes-composer-btn--new .notes-composer-btn-icon,.chat-app:not(.notes-app) .chat-composer .notes-composer-btn--send .notes-composer-btn-icon{display:block;width:24px;height:24px;flex-shrink:0}.chat-app:not(.notes-app) .chat-composer-send-row .inline.notes-composer-primary-actions--chat{align-self:stretch;width:100%;max-width:100%;box-sizing:border-box}.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-actions--chat{flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px}.chat-app:not(.notes-app) .chat-composer .chat-composer-action-group,.notes-app.chat-app .chat-composer .chat-composer-action-group{padding:6px 8px;border-radius:14px;border:1px solid rgba(58,97,80,.2);background:linear-gradient(165deg,rgba(255,255,255,.55),rgba(244,252,247,.5) 48%,rgba(236,248,241,.45));box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}.notes-app.chat-app .chat-composer-send-row .inline.notes-composer-primary-actions--notes{align-self:stretch;width:100%;max-width:100%;box-sizing:border-box}.notes-app.chat-app .chat-composer .notes-composer-primary-actions--notes{flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px}@media (max-width:960px){.chat-app:not(.notes-app) .chat-composer-send-row .inline.notes-composer-primary-actions--chat,.notes-app.chat-app .chat-composer-send-row .inline.notes-composer-primary-actions--notes{min-width:0}.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-actions--chat,.notes-app.chat-app .chat-composer .notes-composer-primary-actions--notes{align-items:center;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;max-width:100%;gap:6px}.chat-app:not(.notes-app) .chat-composer .notes-composer-primary-btn.notes-composer-btn--new,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--new{display:none!important}}.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--new,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--send,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--topics,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--try-next{box-sizing:border-box;min-height:44px}@media (max-width:960px){.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--new,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--send,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--topics,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--try-next{flex:0 0 44px;width:44px;min-width:44px;max-width:44px}}@media (min-width:961px){.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--new,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--send,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--topics{position:relative;box-sizing:border-box;flex:0 0 44px;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px;padding:0;margin:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:0;background:linear-gradient(165deg,#243d32 0,var(--iso-primary,#3a6150) 42%,#1e3329 100%);color:#fff;border:1px solid rgba(0,0,0,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 2px 10px rgba(18,38,30,.35)}.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--new:hover:not(:disabled),.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--send:hover:not(:disabled),.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--topics:hover:not(:disabled){background:linear-gradient(165deg,#2a4a3c,#3d6b56 45%,#243d32);color:#fff}.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--new:active:not(:disabled),.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--send:active:not(:disabled),.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--topics:active:not(:disabled){transform:scale(.96)}.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--new:disabled,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--send:disabled,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--topics:disabled{opacity:.42;cursor:not-allowed;transform:none}.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--new:focus-visible,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--send:focus-visible,.notes-app.chat-app .chat-composer .notes-composer-primary-btn.notes-composer-btn--topics:focus-visible{outline:2px solid rgba(255,255,255,.9);outline-offset:2px}.notes-app.chat-app .chat-composer .notes-composer-btn--new .notes-composer-btn-text-full,.notes-app.chat-app .chat-composer .notes-composer-btn--send .notes-composer-btn-text-full,.notes-app.chat-app .chat-composer .notes-composer-btn--topics .notes-composer-btn-text-full{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.notes-app.chat-app .chat-composer .notes-composer-btn--new .notes-composer-btn-icon,.notes-app.chat-app .chat-composer .notes-composer-btn--send .notes-composer-btn-icon,.notes-app.chat-app .chat-composer .notes-composer-btn--topics .notes-composer-btn-icon{display:block;width:24px;height:24px;flex-shrink:0}}.notes-app.chat-app .chat-composer .notes-composer-minmax-btn,.notes-app.chat-app .chat-composer .notes-library-drawer-trigger{box-sizing:border-box;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;max-width:44px;max-height:44px;padding:0;margin:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(165deg,#243d32 0,var(--iso-primary,#3a6150) 42%,#1e3329 100%);color:#fff;border:1px solid rgba(0,0,0,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 2px 10px rgba(18,38,30,.35);-webkit-tap-highlight-color:transparent}.notes-app.chat-app .chat-composer .notes-composer-minmax-btn:hover:not(:disabled),.notes-app.chat-app .chat-composer .notes-library-drawer-trigger:hover:not(:disabled){background:linear-gradient(165deg,#2a4a3c,#3d6b56 45%,#243d32);color:#fff}.notes-app.chat-app .chat-composer .notes-composer-minmax-btn:active:not(:disabled),.notes-app.chat-app .chat-composer .notes-library-drawer-trigger:active:not(:disabled){transform:scale(.96)}.notes-app.chat-app .chat-composer .notes-composer-minmax-btn:focus-visible,.notes-app.chat-app .chat-composer .notes-library-drawer-trigger:focus-visible{outline:2px solid rgba(255,255,255,.9);outline-offset:2px}.assist-style-drawer-option-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--iso-primary)}.chat-composer{border-top:1px solid rgba(32,43,37,.18);padding:16px}body.iso-body:has(.chat-app) .chat-shell>.chat-composer{padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}.companion-mode-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:8px}.companion-mode-bar--mobile{display:none}.companion-mode-heading{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;color:var(--iso-primary)}.companion-mode-heading-icon{flex-shrink:0;opacity:.92}.companion-mode-label{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.companion-mode-group{display:flex;flex-wrap:wrap;gap:6px}.companion-mode-group .companion-mode-pill{white-space:normal;text-align:center;max-width:11rem}.chat-composer-send-row{display:flex;flex-direction:column;align-items:stretch;width:100%;gap:8px}.chat-composer-send-row .inline{align-self:flex-start}.chat-send-progress{width:100%;height:3px;border-radius:999px;background:rgba(58,97,80,.14);overflow:hidden}.chat-send-progress-bar{height:100%;width:38%;border-radius:inherit;background:linear-gradient(90deg,var(--iso-primary),#5a8f78);animation:chat-send-progress-indeterminate 1s ease-in-out infinite}@keyframes chat-send-progress-indeterminate{0%{transform:translateX(-120%)}to{transform:translateX(320%)}}@media (prefers-reduced-motion:reduce){.chat-send-progress-bar{animation:none;width:100%;opacity:.65}}.chat-textarea-wrap{position:relative}.chat-textarea-wrap .textarea{padding-right:12px;padding-bottom:12px}.composer-textarea-wrap--enter-toggle .textarea.composer-textarea--enter-toggle{padding-right:56px;padding-bottom:52px}.composer-enter-toggle{position:absolute;right:8px;bottom:8px;z-index:3;box-sizing:border-box;min-width:44px;min-height:44px;width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0;border:1px solid rgba(58,97,80,.22);background:rgba(255,255,255,.94);color:var(--iso-primary,#3a6150);box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 2px 8px rgba(35,65,50,.1);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s ease,transform .12s ease,border-color .15s ease}.composer-enter-toggle:hover:not(:disabled){background:#fff;border-color:rgba(58,97,80,.35)}.composer-enter-toggle:active:not(:disabled){transform:scale(.96)}.composer-enter-toggle:disabled{opacity:.45;cursor:not-allowed}.composer-enter-toggle--enter-sends{color:#fff;background:linear-gradient(165deg,#243d32 0,var(--iso-primary,#3a6150) 52%,#1e3329 100%);border-color:rgba(0,0,0,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 2px 10px rgba(18,38,30,.28)}.composer-enter-toggle--enter-sends:hover:not(:disabled){background:linear-gradient(165deg,#2a4a3c,#3d6b56 45%,#243d32);border-color:rgba(0,0,0,.22)}.composer-enter-toggle:focus-visible{outline:2px solid var(--iso-primary,#3a6150);outline-offset:2px}.composer-enter-toggle--enter-sends:focus-visible{outline-color:rgba(255,255,255,.95)}.message-hint-btn{position:absolute;right:8px;bottom:8px;width:44px;height:44px;border-radius:50%;border:1px solid var(--iso-border);background:#eef6f0;font-size:1.35rem;line-height:1;padding:0;cursor:pointer;z-index:2}.message-hint-btn:hover{background:#e4efea}.chat-hint-disclosure{margin:6px 0 0;font-size:.78rem;line-height:1.35;max-width:42rem}.challenge-shell{padding:16px;border-top:1px solid rgba(32,43,37,.18);overflow-y:auto}.challenge-header{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-bottom:8px}.challenge-session-actions-hidden{display:none!important}.challenge-header-actions{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.challenge-source-subnav{display:flex;flex-wrap:wrap;gap:0;margin:0 0 1rem;padding:0;border-bottom:1px solid rgba(58,97,80,.18)}a.challenge-source-subnav__tab{text-decoration:none}.challenge-source-subnav__tab{position:relative;background:transparent;cursor:pointer;font:inherit;font-weight:650;font-size:.88rem;padding:.55rem 1rem .65rem;margin-bottom:-1px;color:rgba(32,43,37,.55);border:none;border-bottom:2px solid transparent;border-radius:0;transition:color .18s ease,border-color .18s ease}.challenge-source-subnav__tab:hover{color:rgba(32,43,37,.88)}.challenge-source-subnav__tab:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.challenge-source-subnav__tab.is-active{color:var(--iso-primary);font-weight:750;border-bottom-color:var(--iso-primary)}.challenge-leaderboard-link{display:inline-flex;align-items:center;justify-content:center;padding:6px;margin:-6px;border-radius:10px;color:var(--iso-primary);line-height:0}.challenge-leaderboard-link:hover{background:rgba(58,97,80,.1)}.challenge-leaderboard-link:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.challenge-leaderboard-icon{width:1.35rem;height:1.35rem}.challenge-title{font-weight:700;color:var(--iso-primary)}.challenge-mode-tabs{display:flex;gap:8px;margin:0 0 12px;flex-wrap:wrap}.challenge-mode-tab{border:1px solid rgba(58,97,80,.35);background:rgba(255,255,255,.65);color:var(--iso-primary);border-radius:999px;padding:6px 14px;font-size:.9rem;font-weight:600;cursor:pointer}.challenge-mode-tab:hover{background:rgba(233,245,239,.85)}.challenge-mode-tab--active{background:rgba(58,97,80,.16);border-color:rgba(58,97,80,.55)}.teacher-challenge-pack-list{list-style:none;padding:0;margin:0 0 8px}.teacher-challenge-pack-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid rgba(32,43,37,.12)}.challenge-instruction-line,.challenge-marks-line{margin:4px 0 8px;font-size:.9rem}.challenge-controls{display:inline-flex;align-items:center;gap:8px}.challenge-level-highlight{border:1px solid rgba(58,97,80,.32);background:linear-gradient(180deg,rgba(233,245,239,.92),rgba(220,240,229,.9));border-radius:10px;padding:6px 10px;box-shadow:0 2px 10px rgba(58,97,80,.12)}.challenge-level-highlight .muted{color:var(--iso-primary);font-weight:700;letter-spacing:.03em}.challenge-disclaimer{margin:0 0 10px}.challenge-syllabus-line{margin:0 0 10px;font-size:.9rem;line-height:1.45;max-width:42rem}.challenge-syllabus-hint{font-weight:400;opacity:.92}.challenge-inspire{margin:0 0 12px;font-size:.95rem;line-height:1.45;max-width:40rem}.challenge-inspire a{font-weight:600;color:var(--iso-primary);text-decoration:underline;text-underline-offset:3px}.challenge-inspire a:hover{opacity:.9}.challenge-bonus-note{margin:6px 0 10px;border:1px dashed rgba(58,97,80,.4);background:rgba(84,179,153,.12);border-radius:8px;padding:8px 10px;color:#23483a;font-weight:600}.challenge-start-panel{padding:12px;display:flex;flex-direction:column;gap:14px}.challenge-meta-bar{font-size:.92rem;margin-top:4px}.challenge-start-form-grid{display:flex;flex-direction:column;gap:14px;margin-bottom:4px}.challenge-form-row{display:flex;flex-direction:column;gap:6px}.challenge-form-label{font-weight:600;font-size:.92rem;color:#1e3328}.challenge-form-select{width:100%;max-width:100%}.challenge-start-fieldset{border:1px solid rgba(32,43,37,.18);border-radius:10px;padding:12px 14px 14px;margin:0;background:rgba(255,255,255,.65)}.challenge-start-legend{padding:0 6px;font-weight:700;font-size:.98rem;color:#1e3328}.challenge-topic-chips{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:8px}.challenge-topic-chips-empty{list-style:none}.challenge-topic-chip{display:inline-block;padding:6px 10px;border-radius:999px;font-size:.88rem;font-weight:600;color:#1e3328;background:rgba(84,179,153,.2);border:1px solid rgba(58,97,80,.2)}.challenge-focus-field{display:flex;flex-direction:column;gap:6px}.challenge-focus-label{font-weight:600;font-size:.92rem;color:#1e3328}.challenge-focus-hint{font-weight:500;color:var(--iso-muted)}.challenge-focus-textarea{width:100%;min-height:72px;resize:vertical;font-size:.95rem;line-height:1.45}.challenge-focus-help{margin:0;font-size:.86rem;line-height:1.45}.challenge-settings-link{color:var(--iso-primary);font-weight:600;text-decoration:underline;text-underline-offset:2px}.challenge-settings-link:hover{color:#2d4a3c}.challenge-start-btn{align-self:flex-start}.challenge-start-footer{display:flex;flex-direction:column;gap:8px;width:100%}.challenge-start-footer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:flex-start}.challenge-start-primary-toolbar{flex:1 1 auto;min-width:0;margin-top:0;width:auto;flex-wrap:nowrap;gap:10px;align-items:flex-end}.challenge-start-primary-toolbar .notes-power-slider-wrap{min-width:100px;max-width:120px}.challenge-start-primary-toolbar .notes-composer-primary-btn{flex:0 0 auto;min-width:44px;padding:8px}.challenge-start-primary-toolbar .notes-composer-btn-icon{display:block}.challenge-start-primary-toolbar .notes-composer-btn-text-full{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.challenge-start-primary-toolbar .notes-composer-btn--send{position:relative}.challenge-start-toolbar-icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:40px;padding:8px}@media (max-width:960px){.challenge-start-primary-toolbar .notes-power-slider-wrap{min-width:64px;max-width:82px}.challenge-start-primary-toolbar .notes-power-label{font-size:.52rem}}.challenge-start-primary-toolbar .challenge-start-btn{align-self:center}.challenge-start-inline-profile{display:flex;align-items:center}@media (min-width:961px){.challenge-start-inline-profile{display:none}}.challenge-start-cost-note{margin:0;width:100%;font-size:.82rem;font-style:italic;line-height:1.35;color:var(--iso-muted);text-align:right}.challenge-generation-panel{display:flex;flex-direction:column;gap:1rem;min-height:12rem;justify-content:center}.challenge-generation-status{margin:0;font-size:.95rem;font-weight:500;color:var(--iso-text);letter-spacing:.01em}.challenge-generation-hint{margin:0;font-size:.88rem;line-height:1.4}.challenge-generation-progress-track{width:100%;height:8px;border-radius:999px;background:rgba(58,97,80,.14);overflow:hidden}.challenge-generation-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--iso-primary),#5a8f78);transition:width .4s ease-out}.challenge-generation-steps{margin:.25rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.45rem}.challenge-generation-step{display:flex;align-items:flex-start;gap:.55rem;font-size:.84rem;line-height:1.35;color:var(--iso-muted)}.challenge-generation-step--current{color:var(--iso-text);font-weight:500}.challenge-generation-step--done{color:var(--iso-primary)}.challenge-generation-step-marker{flex-shrink:0;width:.55rem;height:.55rem;margin-top:.35rem;border-radius:50%;background:rgba(58,97,80,.22)}.challenge-generation-step--current .challenge-generation-step-marker{background:var(--iso-primary);box-shadow:0 0 0 3px rgba(58,97,80,.18)}.challenge-generation-step--done .challenge-generation-step-marker{background:var(--iso-primary)}@media (prefers-reduced-motion:reduce){.challenge-generation-progress-fill{transition:none}}.challenge-settings-note{margin-top:6px;margin-bottom:10px}.challenge-form{display:flex;flex-direction:column;gap:12px}.challenge-submission-thanks{margin:0;padding:.65rem .75rem;border-radius:8px;font-size:.95rem;color:var(--iso-text);background:rgba(58,97,80,.08);border:1px solid rgba(58,97,80,.22)}.challenge-topic{font-weight:600}.challenge-question{border:1px solid rgba(32,43,37,.18);background:#ffffff;border-radius:10px;padding:10px}.challenge-question-title{display:flex;gap:8px;align-items:flex-start;margin-bottom:4px}.challenge-question-label{font-weight:600;flex-shrink:0;line-height:1.45}.challenge-question-title .chat-message-md{flex:1 1;min-width:0;font-weight:400;overflow:hidden}.challenge-question-image-wrap{margin:.35rem 0 .5rem;display:flex;flex-wrap:wrap;gap:.65rem;align-items:flex-start}.challenge-question-image{display:block;max-width:min(100%,360px);max-height:240px;width:auto;height:auto;border-radius:8px;border:1px solid rgba(32,43,37,.12);object-fit:contain}.challenge-manual-stem-hit{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px;padding:0;margin:0;border:none;background:transparent;cursor:pointer;text-align:left;font:inherit}.challenge-manual-stem-hit--img .challenge-question-image{pointer-events:none}.challenge-image-answer-block{display:flex;flex-direction:column;gap:.5rem}.challenge-image-upload-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.challenge-hidden-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}label.challenge-image-file-trigger{display:inline-block;margin:0;font:inherit}.challenge-image-file-trigger--disabled{opacity:.65;cursor:not-allowed;pointer-events:none}.challenge-image-answer-file-list{margin:.25rem 0 0;padding-left:1.25rem;list-style:decimal}.challenge-image-answer-file-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:.5rem .75rem;gap:.5rem .75rem;align-items:start;margin-bottom:.5rem}.challenge-image-answer-file-order{font-size:.88rem;color:var(--iso-muted);padding-top:.2rem}.challenge-image-answer-file-preview{min-width:0}.challenge-image-answer-file-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.challenge-manual-pdf-badge{display:inline-block;padding:6px 12px;border-radius:8px;font-size:.78rem;font-weight:750;letter-spacing:.06em;color:rgba(120,35,28,.95);background:rgba(254,242,242,.9);border:1px solid rgba(180,35,24,.2)}.challenge-manual-file-preview-backdrop{position:fixed;inset:0;z-index:500;background:rgba(15,22,18,.45);display:flex;align-items:center;justify-content:center;padding:1rem}.challenge-manual-file-preview-dialog{width:min(96vw,900px);max-height:92vh;display:flex;flex-direction:column;gap:.5rem;background:var(--iso-panel,#fff);border-radius:12px;padding:.75rem 1rem 1rem;border:1px solid rgba(32,43,37,.14);box-shadow:0 12px 40px rgba(0,0,0,.22)}.challenge-manual-file-preview-head{display:flex;justify-content:flex-end}.challenge-manual-file-preview-iframe{width:100%;min-height:min(72vh,640px);border:1px solid rgba(58,97,80,.15);border-radius:8px;background:rgba(255,255,255,.6)}.challenge-manual-file-preview-img{max-width:100%;max-height:min(80vh,720px);object-fit:contain;border-radius:8px}.challenge-question .learning-diagram{margin-top:.5rem;margin-bottom:.25rem;padding:.35rem .25rem .2rem}.challenge-question .learning-diagram-svg{max-width:min(100%,280px);max-height:28vh;margin:0 auto}.challenge-question .learning-diagram--compact-frame .learning-diagram-svg{max-width:min(100%,320px)}.challenge-question .chat-message-mermaid{max-width:100%}.challenge-question .chat-message-mermaid svg{max-width:min(100%,280px);height:auto}.challenge-question pre:has(code.language-figure){max-width:100%;font-size:.75rem}@media (max-width:420px){.challenge-question .learning-diagram-svg{max-width:min(100%,220px);max-height:25vh}.challenge-question .learning-diagram--compact-frame .learning-diagram-svg{max-width:min(100%,240px)}.challenge-question .chat-message-mermaid svg{max-width:min(100%,220px)}.challenge-question pre:has(code.language-figure){font-size:.68rem}}@media (min-width:421px) and (max-width:720px){.challenge-question .learning-diagram-svg{max-width:min(100%,260px);max-height:26vh}.challenge-question .learning-diagram--compact-frame .learning-diagram-svg{max-width:min(100%,300px)}.challenge-question .chat-message-mermaid svg{max-width:min(100%,260px)}}@media (min-width:961px){.challenge-question .learning-diagram-svg{max-width:min(100%,340px);max-height:32vh}.challenge-question .learning-diagram--compact-frame .learning-diagram-svg{max-width:min(100%,380px)}.challenge-question .chat-message-mermaid svg{max-width:min(100%,340px)}}.challenge-origin{color:var(--iso-muted);font-size:.88rem;margin-bottom:8px}.challenge-options{display:grid;grid-gap:6px;gap:6px}.challenge-option{display:inline-flex;gap:8px;align-items:flex-start}.challenge-option-md{flex:1 1;min-width:0}.challenge-option-md .chat-message-md{margin:0}.challenge-option-md .chat-message-md>p:first-child{margin-top:0}.challenge-option-md .chat-message-md>p:last-child{margin-bottom:0}.challenge-option-md .katex-display{margin:.35em 0}.challenge-instruction-md-wrap{margin-top:4px}.challenge-instruction-md-wrap .chat-message-md{margin:0}.challenge-instruction-md-wrap .chat-message-md>p:first-child{margin-top:0}.challenge-correction-note--md .chat-message-md{margin:0}.challenge-correction-note--md .chat-message-md>p{margin:.25em 0 0}.challenge-subjective-input{width:100%;resize:vertical;min-height:82px}.challenge-results{border:1px solid rgba(32,43,37,.18);border-radius:10px;background:#eef6f1;padding:10px 12px}.challenge-results ul{margin:8px 0 0;padding-left:1.25rem}.challenge-correct{color:#1d7a42}.challenge-wrong{color:#b11a1a}.challenge-correction-note{margin-top:3px;color:#6d1212;font-size:.9rem;line-height:1.35}.error{color:#b11a1a;font-size:14px}.system-overlay-backdrop{position:fixed;inset:0;z-index:100;background:rgba(30,43,36,.5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px}.system-overlay-panel{max-width:440px;width:100%;border:1px solid var(--iso-border);border-radius:14px;background:var(--iso-panel);padding:24px;box-shadow:0 12px 48px rgba(20,35,28,.22);display:grid;grid-gap:16px;gap:16px}.system-overlay-title{margin:0;font-size:1.25rem;font-weight:600;color:var(--iso-text)}.system-overlay-body{margin:0;font-size:15px;line-height:1.55;color:var(--iso-muted)}.system-overlay-actions{display:flex;justify-content:flex-end}.technical-difficulty-overlay-panel{text-align:center}.technical-difficulty-mascot{display:flex;justify-content:center;margin-bottom:4px}.technical-difficulty-body,.technical-difficulty-title{text-align:center}.technical-difficulty-overlay-panel .system-overlay-actions{justify-content:center}.mobile-profile-drawer-backdrop{position:fixed;inset:0;z-index:218;margin:0;padding:0;border:none;background:rgba(15,35,28,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;-webkit-tap-highlight-color:transparent}.mobile-profile-drawer{position:fixed;left:0;right:0;bottom:0;z-index:219;max-height:min(70vh,420px);display:flex;flex-direction:column;padding:0 0 max(12px,env(safe-area-inset-bottom,0px));border-radius:18px 18px 0 0;background:#f8fcf9;border:1px solid rgba(58,97,80,.14);border-bottom:none;box-shadow:0 -8px 32px rgba(25,45,35,.18);animation:mobile-profile-drawer-in .22s ease-out}@keyframes mobile-profile-drawer-in{0%{transform:translateY(100%);opacity:.85}to{transform:translateY(0);opacity:1}}.mobile-profile-drawer-handle{width:36px;height:4px;margin:10px auto 6px;border-radius:999px;background:rgba(58,97,80,.22)}.mobile-profile-drawer-title{margin:4px 16px 12px;font-size:1rem;font-weight:700;color:var(--iso-text)}.mobile-profile-drawer-list{list-style:none;margin:0;padding:0 10px 8px;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-profile-drawer-item{width:100%;display:flex;align-items:center;gap:10px;padding:12px 14px;margin-bottom:6px;border:1px solid rgba(58,97,80,.1);border-radius:12px;background:#fff;font:inherit;font-size:.95rem;font-weight:600;color:var(--iso-text);text-align:left;cursor:pointer;touch-action:manipulation}.mobile-profile-drawer-item:active{filter:brightness(.97)}.mobile-profile-drawer-item--active{border-color:rgba(58,97,80,.28);background:#e8f2ec}.mobile-profile-drawer-item-icon{font-size:1.35rem;line-height:1}.mobile-profile-drawer-item-name{flex:1 1 auto;min-width:0}.mobile-profile-drawer-item-badge{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:rgba(35,58,48,.55)}@media (max-width:960px){html:has(.chat-app){height:100%;overflow:hidden}body.iso-body:has(.chat-app){overflow:hidden;height:100dvh;max-height:100dvh;min-height:0!important}body.iso-body:has(.chat-app)>main.page-wrap--footer{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:0}body.iso-body:has(.chat-app) .chat-page{display:flex;flex-direction:column;flex:1 1 auto;min-height:0!important;overflow:hidden;margin:2px -2px 0;padding:6px 8px 8px;border-radius:20px}.chat-app{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}body.iso-body:has(.chat-app) .chat-main-wrap{flex:1 1 auto;min-height:0;overflow:hidden;gap:6px}.chat-main-wrap{gap:10px}.chat-mobile-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;padding:max(6px,env(safe-area-inset-top,0px)) 8px 6px 10px;border-radius:14px;border:1px solid rgba(58,97,80,.11);background:linear-gradient(168deg,rgba(255,255,255,.98),rgba(248,252,249,.94) 45%,rgba(236,246,239,.9));box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 1px 3px rgba(35,65,50,.04),0 6px 20px rgba(35,65,50,.05)}body.iso-body:has(.chat-app) .top-nav{position:absolute;left:0;right:0;top:0;width:100%;height:0;min-height:0;padding:0;margin:0;border:none;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;overflow:visible;pointer-events:none;z-index:0}body.iso-body:has(.chat-app) .top-nav .nav-inner{display:none!important}.chat-mobile-site-menu-btn{flex-shrink:0;display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 10px 0 8px;margin:0;border-radius:10px;border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.75);color:var(--iso-primary);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background .15s ease,border-color .15s ease}.chat-mobile-site-menu-btn:hover{background:rgba(255,255,255,.95);border-color:rgba(58,97,80,.2)}.chat-mobile-site-menu-btn:active{background:rgba(237,246,241,.95)}.chat-mobile-site-menu-icon{display:block;flex-shrink:0}.chat-mobile-site-menu-btn-label{font-size:.78125rem;font-weight:700;letter-spacing:.02em;line-height:1.1;white-space:nowrap}.chat-mobile-menu-trigger{flex-shrink:0;width:40px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.75);color:var(--iso-primary);touch-action:manipulation;transition:background .15s ease,border-color .15s ease}.chat-mobile-menu-trigger:hover{background:rgba(255,255,255,.95);border-color:rgba(58,97,80,.2)}.chat-mobile-menu-trigger:active{background:rgba(237,246,241,.95)}.chat-mobile-menu-icon{display:block}.chat-mobile-profile-switcher-btn{flex-shrink:0;width:40px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.75);color:var(--iso-primary);touch-action:manipulation;transition:background .15s ease,border-color .15s ease}.chat-mobile-profile-switcher-btn:hover{background:rgba(255,255,255,.95);border-color:rgba(58,97,80,.2)}.chat-mobile-profile-switcher-btn:active{background:rgba(237,246,241,.95)}.chat-mobile-profile-switcher-emoji{font-size:1.35rem;line-height:1}.chat-mobile-toolbar-quick{display:flex;flex:1 1 auto;min-width:0;gap:0;border-radius:10px;overflow:hidden;border:1px solid rgba(58,97,80,.13);background:rgba(255,255,255,.65);box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}.chat-mobile-toolbar-quick .btn{flex:1 1;min-width:0;margin:0;border:none;border-radius:0;box-shadow:none;text-align:center;font-size:.78125rem;font-weight:600;line-height:1.2;min-height:40px;padding:8px 6px;touch-action:manipulation;transition:background .15s ease,color .15s ease}.chat-mobile-toolbar-quick .btn+.btn{box-shadow:-1px 0 0 rgba(58,97,80,.12)}.chat-mobile-toolbar-quick .btn.sidebar-challenge-btn--active{background:rgba(58,97,80,.1);color:var(--iso-primary)}.chat-mobile-toolbar-quick .btn:active{filter:brightness(.97)}.chat-mobile-backdrop{position:fixed;inset:0;z-index:205;margin:0;padding:0;border:none;background:rgba(15,35,28,.48);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:pointer;-webkit-tap-highlight-color:transparent}.chat-sidebar{position:fixed;top:0;left:0;bottom:0;width:min(300px,90vw);max-height:100dvh;min-height:0;margin:0;z-index:210;border-radius:0 18px 18px 0;transform:translateX(-105%);transition:transform .28s ease;box-shadow:8px 0 36px rgba(25,45,35,.18);grid-template-rows:auto auto auto 1fr}.chat-sidebar--open{transform:translateX(0)}.chat-sidebar-mobile-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px 8px;border-bottom:1px solid rgba(58,97,80,.12);flex-shrink:0}.chat-sidebar-mobile-title{font-weight:700;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--iso-primary)}.chat-sidebar-close-btn{width:40px;height:40px;padding:0;font-size:1.1rem;line-height:1;border-radius:10px}.chat-sidebar .sidebar-top .sidebar-actions,.chat-sidebar-desktop-sessions-label{display:none}.chat-sidebar-mobile-menu{display:flex;flex-direction:column;gap:8px;padding:10px 0 12px;border-bottom:1px solid rgba(58,97,80,.1);flex-shrink:0}.chat-sidebar-mobile-menu-heading{font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:rgba(35,58,48,.55);margin:4px 0 0}.chat-sidebar-mobile-btn-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px}.chat-sidebar-mobile-btn-grid .btn{font-size:.82rem;padding:8px 6px}.chat-sidebar-mobile-account-stack{display:flex;flex-direction:column;gap:6px}.chat-sidebar-mobile-account-stack .btn{width:100%;text-align:center;justify-content:center}.chat-sidebar-mobile-account-stack .btn.chat-sidebar-sign-out-btn{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;text-align:left}.chat-sidebar-sign-out-icon{flex-shrink:0;width:18px;height:18px;color:var(--iso-primary)}.chat-header--desktop{display:none!important}.chat-shell{flex:1 1 auto;min-height:0!important;border-radius:18px;display:flex;flex-direction:column;overflow:hidden}body.iso-body:has(.chat-app) .chat-shell>.chat-settings-tuning-banner,body.iso-body:has(.chat-app) .chat-shell>.chat-switcher{flex-shrink:0}body.iso-body:has(.chat-app) .chat-messages{max-height:none!important;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 12px 14px}body.iso-body:has(.chat-app) .chat-shell>.subject-teacher-followups{flex-shrink:0}body.iso-body:has(.chat-app) .chat-shell>.chat-composer{flex-shrink:0;padding:12px 12px max(16px,env(safe-area-inset-bottom,0px))}body.iso-body:has(.chat-app) .chat-composer-send-row{margin-bottom:6px}body.iso-body:has(.chat-app) .challenge-shell{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}body.iso-body:has(.chat-app) .bubble{font-size:.9375rem;line-height:1.45;padding:9px 11px}body.iso-body:has(.chat-app) .chat-message-md{font-size:.94rem;line-height:1.5}body.iso-body:has(.chat-app) .chat-composer .textarea{min-height:140px;font-size:16px}body.iso-body:has(.chat-app) .chat-settings-tuning-banner{font-size:.88rem;line-height:1.42;padding:10px 12px}body.iso-body:has(.chat-app) .chat-composer-label{font-size:.8rem}.chat-hint-disclosure,.companion-mode-bar--desktop{display:none!important}.companion-mode-bar--mobile{display:flex;flex-wrap:nowrap;align-items:stretch;gap:0;margin-bottom:8px;min-width:0;padding:4px 5px 4px 4px;border-radius:16px;border:1px solid rgba(58,97,80,.14);background:linear-gradient(165deg,rgba(255,255,255,.97),rgba(244,252,247,.94) 48%,rgba(236,248,241,.92));box-shadow:0 2px 16px rgba(35,65,50,.06),inset 0 1px 0 rgba(255,255,255,.88)}.companion-mode-mobile-summary{flex:1 1;min-width:0;display:flex;align-items:center;padding:6px 4px 6px 12px}.companion-mode-mobile-line{display:flex;align-items:center;gap:0;min-width:0;flex:1 1}.companion-mode-mobile-prefix{flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--iso-primary);opacity:.72}.companion-mode-mobile-sep{flex-shrink:0;width:1px;height:16px;margin:0 10px;border-radius:1px;background:linear-gradient(180deg,rgba(58,97,80,0),rgba(58,97,80,.22) 45%,rgba(58,97,80,.22) 55%,rgba(58,97,80,0))}.companion-mode-mobile-current{font-size:.8125rem;font-weight:600;letter-spacing:.02em;line-height:1.25;color:var(--iso-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.companion-mode-mobile-actions{display:flex;flex-shrink:0;align-items:center;gap:6px}.companion-mode-mobile-suggestions-btn{flex-shrink:0;align-self:center;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:0;border:none;border-radius:12px;background:linear-gradient(160deg,rgba(58,97,80,.14),rgba(58,97,80,.08));color:var(--iso-primary);box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 1px 3px rgba(35,65,50,.08);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s ease,transform .12s ease,box-shadow .15s ease}.companion-mode-mobile-suggestions-btn:hover{background:linear-gradient(160deg,rgba(58,97,80,.2),rgba(58,97,80,.11))}.companion-mode-mobile-suggestions-btn:active{transform:scale(.96)}.companion-mode-mobile-suggestions-btn:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.companion-mode-mobile-suggestions-btn:disabled{opacity:.42;cursor:not-allowed;transform:none}.companion-mode-mobile-change-btn{flex-shrink:0;align-self:center;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:0;border:none;border-radius:12px;background:linear-gradient(160deg,rgba(58,97,80,.14),rgba(58,97,80,.08));color:var(--iso-primary);box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 1px 3px rgba(35,65,50,.08);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .12s ease}.companion-mode-mobile-change-btn:hover{background:linear-gradient(160deg,rgba(58,97,80,.2),rgba(58,97,80,.11));color:#2d4f40}.companion-mode-mobile-change-btn:active{transform:scale(.96)}.companion-mode-mobile-change-btn:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.assist-style-drawer-root{position:fixed;inset:0;z-index:220;pointer-events:none}.assist-style-drawer-root>*{pointer-events:auto}.assist-style-drawer-backdrop{position:absolute;inset:0;margin:0;padding:0;border:none;background:rgba(15,35,28,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;-webkit-tap-highlight-color:transparent}.assist-style-drawer{position:absolute;left:0;right:0;bottom:0;max-height:min(85dvh,560px);display:flex;flex-direction:column;border-radius:22px 22px 0 0;border:1px solid rgba(58,97,80,.12);border-bottom:none;background:linear-gradient(188deg,rgba(255,255,255,.995),rgba(248,253,250,.99) 42%,rgba(236,248,241,.97));box-shadow:inset 0 -8px 0 rgba(255,255,255,.35),0 -20px 48px rgba(25,45,35,.2);animation:assist-style-drawer-up .28s ease}@media (prefers-reduced-motion:reduce){.assist-style-drawer{animation:none}}.assist-style-drawer-handle{align-self:center;width:36px;height:5px;margin:12px 0 6px;border-radius:999px;background:rgba(35,58,48,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.assist-style-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 10px 14px 20px;border-bottom:1px solid rgba(58,97,80,.1);flex-shrink:0}.assist-style-drawer-title{margin:0;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--iso-primary);opacity:.88}.assist-style-drawer-close{width:40px;height:40px;padding:0;font-size:1rem;line-height:1;border-radius:12px;border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.65);color:var(--iso-muted);transition:background .15s ease,color .15s ease,border-color .15s ease}.assist-style-drawer-close:hover{background:rgba(255,255,255,.95);color:var(--iso-text);border-color:rgba(58,97,80,.2)}.assist-style-drawer-body{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 14px calc(18px + env(safe-area-inset-bottom, 0px));display:flex;flex-direction:column;gap:10px;min-height:0}.assist-style-drawer-option{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;width:100%;text-align:left;padding:14px 16px;border-radius:16px;border:1px solid rgba(32,43,37,.1);background:rgba(255,255,255,.72);cursor:pointer;font:inherit;color:inherit;box-shadow:inset 0 1px 0 rgba(255,255,255,.85);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .12s ease}.assist-style-drawer-option:hover{background:rgba(255,255,255,.95);border-color:rgba(58,97,80,.2)}.assist-style-drawer-option:active{transform:scale(.99)}.assist-style-drawer-option:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.assist-style-drawer-option--active{border-color:rgba(58,97,80,.38);background:linear-gradient(152deg,rgba(228,241,234,.98),rgba(255,255,255,.9));box-shadow:0 0 0 1px rgba(58,97,80,.08),0 4px 18px rgba(58,97,80,.1)}.assist-style-drawer-option--active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:60%;max-height:40px;border-radius:0 4px 4px 0;background:var(--iso-primary);opacity:.85}.assist-style-drawer-option-main{flex:1 1;display:flex;flex-direction:column;gap:5px;min-width:0;padding-left:2px;text-align:left}.assist-style-drawer-option-label{font-size:1rem;font-weight:700;letter-spacing:.01em;line-height:1.25;color:var(--iso-text)}.assist-style-drawer-option-desc{font-size:.8125rem;line-height:1.45;color:var(--iso-muted)}.assist-style-drawer-option-check{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-top:2px;border-radius:50%;font-size:.85rem;font-weight:800;line-height:1;color:#fff;background:linear-gradient(145deg,#4a7a64 0,var(--iso-primary) 55%,#2f5243 100%);box-shadow:0 2px 8px rgba(58,97,80,.35)}body.iso-body:has(.chat-app) .chat-shell>.subject-teacher-followups{display:none!important}}@media (max-width:960px){html.app-scroll-fallback:has(.chat-app){height:auto!important;overflow-y:auto!important}html.app-scroll-fallback body.iso-body:has(.chat-app){overflow-y:auto!important;height:auto!important;max-height:none!important}html.app-scroll-fallback body.iso-body:has(.chat-app)>main.page-wrap--footer{overflow:visible!important;flex:none!important}html.app-scroll-fallback body.iso-body:has(.chat-app) .chat-page{overflow:visible!important;flex:none!important;min-height:auto!important}html.app-scroll-fallback .chat-app{overflow:visible!important;flex:none!important}html.app-scroll-fallback body.iso-body:has(.chat-app) .chat-main-wrap{overflow:visible!important;flex:none!important}html.app-scroll-fallback .chat-shell{overflow:visible!important;flex:none!important;min-height:auto!important}html.app-scroll-fallback body.iso-body:has(.chat-app) .chat-messages{max-height:45vh;flex:none!important;overflow-y:auto;-webkit-overflow-scrolling:touch}html.app-scroll-fallback body.iso-body:has(.chat-app) .challenge-shell{max-height:65vh;flex:none!important}html.app-scroll-fallback body.iso-body:has(.chat-app) .chat-shell>.chat-composer{flex:none!important}html.app-scroll-fallback body.iso-body:has(.chat-app) .chat-page:after{content:"";position:static;display:block;width:auto;height:90px;background:none}}@media (min-width:961px){.chat-mobile-toolbar,.chat-sidebar-mobile-bar,.chat-sidebar-mobile-menu{display:none}html:not(:has(.chat-app)) .assist-style-drawer-root:not(.followups-drawer-root){display:none!important}body.iso-body:has(.chat-app) .assist-style-drawer-root{position:fixed;inset:0;z-index:220;pointer-events:none}body.iso-body:has(.chat-app) .assist-style-drawer-root>*{pointer-events:auto}body.iso-body:has(.chat-app) .assist-style-drawer-backdrop{position:absolute;inset:0;margin:0;padding:0;border:none;background:rgba(15,35,28,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;-webkit-tap-highlight-color:transparent}body.iso-body:has(.chat-app) .assist-style-drawer{position:absolute;left:0;right:0;bottom:0;max-height:min(85dvh,560px);display:flex;flex-direction:column;border-radius:22px 22px 0 0;border:1px solid rgba(58,97,80,.12);border-bottom:none;background:linear-gradient(188deg,rgba(255,255,255,.995),rgba(248,253,250,.99) 42%,rgba(236,248,241,.97));box-shadow:inset 0 -8px 0 rgba(255,255,255,.35),0 -20px 48px rgba(25,45,35,.2);animation:assist-style-drawer-up .28s ease}@media (prefers-reduced-motion:reduce){body.iso-body:has(.chat-app) .assist-style-drawer{animation:none}}body.iso-body:has(.chat-app) .assist-style-drawer-handle{align-self:center;width:36px;height:5px;margin:12px 0 6px;border-radius:999px;background:rgba(35,58,48,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}body.iso-body:has(.chat-app) .assist-style-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 10px 14px 20px;border-bottom:1px solid rgba(58,97,80,.1);flex-shrink:0}body.iso-body:has(.chat-app) .assist-style-drawer-title{margin:0;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--iso-primary);opacity:.88}body.iso-body:has(.chat-app) .assist-style-drawer-close{width:40px;height:40px;padding:0;font-size:1rem;line-height:1;border-radius:12px;border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.65);color:var(--iso-muted);transition:background .15s ease,color .15s ease,border-color .15s ease}body.iso-body:has(.chat-app) .assist-style-drawer-close:hover{background:rgba(255,255,255,.95);color:var(--iso-text);border-color:rgba(58,97,80,.2)}body.iso-body:has(.chat-app) .assist-style-drawer-body{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 14px calc(18px + env(safe-area-inset-bottom, 0px));display:flex;flex-direction:column;gap:10px;min-height:0}body.iso-body:has(.chat-app) .assist-style-drawer-option{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;width:100%;text-align:left;padding:14px 16px;border-radius:16px;border:1px solid rgba(32,43,37,.1);background:rgba(255,255,255,.72);cursor:pointer;font:inherit;color:inherit;box-shadow:inset 0 1px 0 rgba(255,255,255,.85);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .12s ease}body.iso-body:has(.chat-app) .assist-style-drawer-option:hover{background:rgba(255,255,255,.95);border-color:rgba(58,97,80,.2)}body.iso-body:has(.chat-app) .assist-style-drawer-option:active{transform:scale(.99)}body.iso-body:has(.chat-app) .assist-style-drawer-option:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}body.iso-body:has(.chat-app) .assist-style-drawer-option--active{border-color:rgba(58,97,80,.38);background:linear-gradient(152deg,rgba(228,241,234,.98),rgba(255,255,255,.9));box-shadow:0 0 0 1px rgba(58,97,80,.08),0 4px 18px rgba(58,97,80,.1)}body.iso-body:has(.chat-app) .assist-style-drawer-option--active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:60%;max-height:40px;border-radius:0 4px 4px 0;background:var(--iso-primary);opacity:.85}body.iso-body:has(.chat-app) .assist-style-drawer-option-main{flex:1 1;display:flex;flex-direction:column;gap:5px;min-width:0;padding-left:2px;text-align:left}body.iso-body:has(.chat-app) .assist-style-drawer-option-label{font-size:1rem;font-weight:700;letter-spacing:.01em;line-height:1.25;color:var(--iso-text)}body.iso-body:has(.chat-app) .assist-style-drawer-option-desc{font-size:.8125rem;line-height:1.45;color:var(--iso-muted)}body.iso-body:has(.chat-app) .assist-style-drawer-option-check{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-top:2px;border-radius:50%;font-size:.85rem;font-weight:800;line-height:1;color:#fff;background:linear-gradient(145deg,#4a7a64 0,var(--iso-primary) 55%,#2f5243 100%);box-shadow:0 2px 8px rgba(58,97,80,.35)}}.login-root{margin:0 -16px;padding:16px;min-height:100%}.login-root .chat-page{min-height:calc(100vh - 100px);isolation:auto}.login-root .chat-page-ambient{animation:none;transform:none;opacity:.72}.login-landing{padding:28px 22px 40px;border-radius:22px;background:radial-gradient(ellipse 75% 90% at 8% -10%,rgba(120,175,145,.22),transparent 52%),radial-gradient(ellipse 55% 65% at 98% 8%,rgba(230,245,235,.95),transparent 48%),linear-gradient(168deg,#eef6f1,#f5faf7 42%,#fafcfb);border:1px solid rgba(32,43,37,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 12px 48px rgba(25,45,35,.06)}.chat-page .login-landing{background:transparent;border-color:transparent;box-shadow:none}.login-article{max-width:1100px;margin:0 auto}.login-hero{margin-bottom:2.5rem}.login-hero-grid{display:grid;grid-gap:2rem;gap:2rem;align-items:start}@media (min-width:960px){.login-hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:2.5rem}}@media (max-width:959px){.login-hero-grid{grid-template-columns:1fr;gap:1.5rem}.login-hero-aside{order:-1}.login-hero-copy{order:0}}.login-hero-title{margin:0 0 3rem;font-size:clamp(2rem,4.5vw,3.1rem);font-weight:300;letter-spacing:-.03em;line-height:1.08;color:var(--iso-text)}.login-hero-lead{margin:0 0 1.25rem;font-size:clamp(1.05rem,1.9vw,1.2rem);line-height:1.65;color:var(--iso-muted)}@media (max-width:959px){.login-hero-title{margin:0 0 1rem;font-size:clamp(1.6rem,6.2vw,2.2rem);line-height:1.12}.login-hero-lead{margin-bottom:1rem}}.login-hero-bullets{margin:0;padding-left:1.45rem;max-width:52ch;line-height:1.78;color:var(--iso-text);font-size:clamp(1.02rem,1.4vw,1.12rem);font-weight:400;letter-spacing:.015em;font-feature-settings:"kern" 1,"liga" 1}.login-hero-bullets li{margin-bottom:.55rem;padding-left:.2rem}.login-hero-bullets li::marker{color:var(--iso-primary)}.login-hero-aside{display:flex;flex-direction:column;gap:1.25rem}.school-solutions-page .school-solutions-hero{margin-bottom:2rem}.school-solutions-hero-grid{display:grid;grid-gap:1.75rem;gap:1.75rem;align-items:stretch}@media (min-width:960px){.school-solutions-hero-grid{grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:2.5rem;align-items:center}}.school-solutions-signin{margin:0;padding:1.25rem 1.25rem 1.35rem;max-width:440px;width:100%;box-sizing:border-box;justify-self:center;align-self:center;background:var(--iso-panel);border:1px solid var(--iso-border);border-radius:14px;box-shadow:0 2px 12px rgba(0,0,0,.06)}@media (max-width:959px){.school-solutions-signin{padding:1.1rem 1rem 1.2rem;max-width:none;justify-self:stretch;align-self:stretch}}.school-solutions-signin-loading{margin:0;font-size:.95rem;color:var(--iso-muted)}.school-solutions-signin-footer{margin:1.25rem 0 0;padding-top:1rem;border-top:1px solid var(--iso-border);font-size:.92rem;line-height:1.5;color:var(--iso-muted);text-align:left}.school-solutions-signin-footer-link{color:var(--iso-primary);text-decoration:underline;text-underline-offset:2px}.school-solutions-brand{min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:1rem;justify-content:center}.school-solutions-brand-title{margin:0;font-size:clamp(1.35rem,3.8vw,2.5rem);line-height:1.12}@media (min-width:960px){.school-solutions-brand{gap:1.25rem}}.school-solutions-page .sb-login-embedded{padding-top:0}.school-solutions-page .sb-login-embedded .sb-login-header{text-align:left}.school-solutions-page .sb-login-embedded .sb-login-logo{margin-left:0;margin-right:auto;display:block}.school-solutions-page .sb-login-embedded .sb-login-logo-placeholder{margin-left:0;margin-right:auto}.school-solutions-page .sb-login-embedded .sb-sign-in-mode{justify-content:flex-start}.school-solutions-page .school-solutions-brand .login-hero-aside{margin:0;gap:0}.school-solutions-page .school-solutions-brand .login-hero-figure{margin:0}.login-landing.school-solutions-page--marketing{padding-bottom:4.5rem}.school-solutions-page--marketing .school-solutions-hero--marketing{margin-bottom:0}.school-solutions-page--marketing .school-solutions-hero-figure{margin:1.75rem 0 0}.school-solutions-how-it-works--hero{margin-top:2rem;padding-top:1.75rem;border-top:1px solid rgba(58,97,80,.14)}.school-solutions-how-it-works__title{margin:0 0 .5rem;font-size:clamp(1.2rem,2.2vw,1.45rem);font-weight:600;letter-spacing:-.02em;color:var(--iso-primary);text-align:center}.school-solutions-how-it-works__lead{margin:0 auto 1.35rem;max-width:52ch;font-size:.95rem;line-height:1.55;text-align:center}.school-solutions-how-cards{margin:0;padding:0;list-style:none;display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:minmax(0,1fr)}@media (min-width:900px){.school-solutions-how-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:stretch}}.school-solutions-how-card{display:flex;align-items:flex-start;gap:1rem;min-width:0;height:100%;padding:1.15rem 1.2rem;border-radius:14px;border:1px solid var(--iso-border);background:var(--iso-panel);box-shadow:0 2px 12px rgba(25,45,35,.04)}.school-solutions-how-card__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:10px;background:rgba(58,97,80,.1);color:var(--iso-primary)}.school-solutions-how-card__icon svg{width:1.35rem;height:1.35rem}.school-solutions-how-card__content{min-width:0;flex:1 1 auto}.school-solutions-how-card__eyebrow{margin:0 0 .2rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.school-solutions-how-card__title{margin:0 0 .35rem;font-size:1rem;font-weight:600;line-height:1.35;color:var(--iso-text)}.school-solutions-how-card__body{margin:0;font-size:.9rem;line-height:1.55;color:var(--iso-muted)}@media (max-width:899px){.school-solutions-how-it-works--hero{margin-top:1.5rem;padding-top:1.35rem}.school-solutions-how-it-works__lead{margin-bottom:1.1rem}}@media (min-width:900px){.school-solutions-how-cards--hero .school-solutions-how-card{flex-direction:column;align-items:center;text-align:center;padding:1.35rem 1.15rem 1.4rem}.school-solutions-how-cards--hero .school-solutions-how-card__icon{width:3rem;height:3rem;border-radius:12px}.school-solutions-how-cards--hero .school-solutions-how-card__icon svg{width:1.5rem;height:1.5rem}.school-solutions-how-cards--hero .school-solutions-how-card__content{display:flex;flex-direction:column;align-items:center}}.school-solutions-trust-section{margin-top:2.75rem}.school-solutions-trust-section__lead{max-width:62ch}.school-solutions-trust-grid{display:grid;grid-gap:1rem;gap:1rem;margin:0;padding:0;list-style:none;grid-template-columns:1fr}@media (min-width:640px){.school-solutions-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem}}.school-solutions-trust-card{display:flex;align-items:flex-start;gap:1rem;padding:1.15rem 1.2rem;border-radius:14px;background:var(--iso-panel);border:1px solid var(--iso-border);box-shadow:0 2px 12px rgba(25,45,35,.04)}.school-solutions-trust-card__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:10px;background:rgba(58,97,80,.1);color:var(--iso-primary)}.school-solutions-trust-card__icon svg{width:1.35rem;height:1.35rem}.school-solutions-trust-card__body{min-width:0}.school-solutions-trust-card__title{margin:0 0 .35rem;font-size:1rem;font-weight:600;letter-spacing:-.01em;color:var(--iso-text)}.school-solutions-trust-card__summary{margin:0;font-size:.9rem;line-height:1.55;color:var(--iso-muted)}.school-solutions-hero-marketing-grid{display:grid;grid-gap:1.75rem;gap:1.75rem;align-items:start}@media (min-width:960px){.school-solutions-hero-marketing-grid{grid-template-columns:minmax(0,1fr) minmax(320px,400px);gap:2.25rem;align-items:start}}.school-solutions-hero-copy .school-solutions-brand-title{margin-bottom:1rem}.school-solutions-hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.25rem 0 .75rem}.school-solutions-hero-signin-hint{margin:0;font-size:.92rem}.school-solutions-get-started-card{margin:0;padding:1.25rem 1.35rem 1.3rem;background:rgba(255,255,255,.92);border:1px solid rgba(58,97,80,.18);border-radius:16px;box-shadow:0 6px 24px rgba(25,45,35,.07);scroll-margin-top:5rem}.school-solutions-get-started-card__title{margin:0 0 .35rem;font-size:1.12rem;font-weight:600;color:var(--iso-primary)}.school-solutions-get-started-card__lead{margin:0 0 1rem;font-size:.88rem;line-height:1.5}.school-solutions-get-started-card .school-interest-form{margin:0;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none}.school-solutions-get-started-card .school-interest-form.stack{gap:.75rem}.school-solutions-get-started-card .school-form-success{margin:0;padding:.85rem .95rem}.school-form-field{display:grid;grid-gap:.35rem;gap:.35rem;min-width:0}.school-form-field--full{grid-column:1/-1}.school-form-label{font-size:.84rem;font-weight:600;letter-spacing:0;text-transform:none;color:var(--iso-text)}.school-form-fields--compact{display:grid;grid-gap:.75rem;gap:.75rem}.school-solutions-get-started-card .school-interest-form--compact .input{background:#fff;border:1px solid rgba(58,97,80,.24);border-radius:10px;font-size:.94rem;line-height:1.4;padding:.55rem .75rem;color:var(--iso-text);transition:border-color .15s ease,box-shadow .15s ease}.school-solutions-get-started-card .school-interest-form--compact .input::placeholder{color:rgba(58,97,80,.42)}.school-solutions-get-started-card .school-interest-form--compact .input:focus{border-color:rgba(58,97,80,.45);outline:none;box-shadow:0 0 0 3px rgba(58,97,80,.12)}.school-interest-form--compact .contact-form-captcha--compact{margin:0;font-size:.72rem;line-height:1.35;text-align:center;color:rgba(58,97,80,.55)}.school-solutions-get-started-card .school-interest-form--compact .school-form-actions{margin-top:0}.school-solutions-get-started-card .school-interest-form--compact .school-form-actions .btn{width:100%;padding:.62rem 1rem;font-size:.95rem;font-weight:600;border-radius:10px}.school-solutions-hero-figure{margin:1.5rem 0 0}.school-solutions-role-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.school-solutions-role-tabs__tab{padding:.5rem .85rem;font-size:.88rem;font-weight:600;border-radius:999px;border:1px solid var(--iso-border);background:rgba(255,255,255,.7);color:var(--iso-muted);cursor:pointer;font-family:inherit}.school-solutions-role-tabs__tab--active{background:var(--iso-primary);border-color:var(--iso-primary);color:#fff}.school-solutions-role-panel__headline{margin:0 0 1.25rem;font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.55;color:var(--iso-text);max-width:56ch;font-weight:500}.school-solutions-partner-section{padding-bottom:.5rem}.school-solutions-partner-section>.login-section-title{margin-bottom:1.5rem}.school-solutions-partner-panel{display:grid;grid-gap:1.75rem;gap:1.75rem;align-items:center}@media (min-width:900px){.school-solutions-partner-panel{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:2.75rem 3.25rem}}.school-solutions-partner-panel__copy{display:flex;flex-direction:column;justify-content:center;min-width:0}.school-solutions-partner-panel__lead{margin:0 0 1rem;max-width:56ch;font-size:1rem;line-height:1.6}.school-solutions-partner-panel__bullets{margin:0 0 1.25rem;padding-left:1.2rem;max-width:56ch}.school-solutions-partner-panel__bullets li{margin-bottom:.6rem;line-height:1.55;color:var(--iso-muted)}.school-solutions-partner-panel__bullets li:last-child{margin-bottom:0}.school-solutions-partner-panel__cta{display:flex;flex-wrap:wrap;gap:.75rem;margin:0}.school-solutions-partner-panel__figure{margin:0;align-self:center}.school-solutions-partner-panel__img{width:100%;height:auto;display:block;border-radius:14px;border:1px solid rgba(32,43,37,.12);box-shadow:0 8px 28px rgba(25,45,35,.07);background:rgba(255,255,255,.9)}.school-solutions-partner-panel__caption{margin:.65rem 0 0;font-size:.86rem;line-height:1.5;text-align:left;max-width:48ch}@media (max-width:899px){.school-solutions-partner-panel__figure{order:-1}.school-solutions-partner-panel__caption{max-width:none;text-align:center;margin-left:auto;margin-right:auto}}.school-solutions-leadership-section,.school-solutions-principles-section{margin-bottom:.25rem}.school-solutions-leadership-quote{margin:0;padding:1.35rem 1.5rem 1.25rem;border-radius:16px;border:1px solid rgba(32,43,37,.14);background:rgba(248,250,249,.96);box-shadow:0 2px 14px rgba(25,45,35,.05);font-size:1.05rem;line-height:1.7;color:var(--iso-text)}.school-solutions-leadership-quote p{margin:0}.school-solutions-leadership-attribution{margin:1.15rem 0 0;padding-top:1rem;border-top:1px solid rgba(32,43,37,.1);font-size:.95rem;font-style:normal;color:var(--iso-muted)}.school-solutions-leadership-name{font-style:normal;font-weight:600;color:var(--iso-text)}.school-solutions-leadership-more{margin:1rem 0 0;font-size:.92rem}.about-leader-link,.school-solutions-leadership-link{color:var(--iso-primary);text-decoration:underline;text-underline-offset:2px}.about-leader-link:hover,.school-solutions-leadership-link:hover{text-decoration-thickness:2px}.about-page{padding-bottom:2.5rem}.about-article{max-width:760px;margin:0 auto}.about-hero{margin-bottom:2.5rem}.about-eyebrow{margin:0 0 .5rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.about-title{margin:0 0 .75rem;font-size:clamp(1.75rem,4vw,2.35rem);font-weight:600;letter-spacing:-.03em;color:var(--iso-text)}.about-lead{margin:0 0 .65rem;max-width:62ch;font-size:1.08rem;line-height:1.65;color:var(--iso-text)}.about-meta{margin:0;font-size:.95rem}.about-section{margin-top:2.5rem;padding-top:2rem;border-top:1px solid rgba(32,43,37,.12)}.about-section-title{margin:0 0 1rem;font-size:clamp(1.25rem,2.2vw,1.55rem);font-weight:400;letter-spacing:-.02em;color:var(--iso-text)}.about-body{margin:0;max-width:68ch;font-size:1rem;line-height:1.65;color:var(--iso-muted)}.about-beliefs-grid{display:grid;grid-gap:1rem;gap:1rem;margin:0;padding:0;list-style:none}@media (min-width:720px){.about-beliefs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.about-belief-card{padding:1.1rem 1.15rem 1.15rem;border-radius:14px;border:1px solid rgba(32,43,37,.14);background:rgba(255,255,255,.82)}.about-belief-title{margin:0 0 .45rem;font-size:.95rem;font-weight:600;color:var(--iso-primary)}.about-belief-summary{margin:0;font-size:.92rem;line-height:1.55;color:var(--iso-muted)}.about-leader-card{display:grid;grid-gap:1.35rem;gap:1.35rem;padding:1.35rem 1.4rem;border-radius:16px;border:1px solid rgba(32,43,37,.14);background:rgba(255,255,255,.82);box-shadow:0 2px 14px rgba(25,45,35,.05)}.about-leader-card__header{display:grid;grid-gap:1.25rem;gap:1.25rem;align-items:start}@media (min-width:560px){.about-leader-card__header{grid-template-columns:auto minmax(0,1fr);gap:1.5rem}}.about-leader-photo-wrap{width:7.5rem;flex-shrink:0;border-radius:14px;overflow:hidden;border:1px solid rgba(32,43,37,.12);background:rgba(248,250,249,.96);box-shadow:0 2px 12px rgba(25,45,35,.06)}.about-leader-photo{display:block;width:100%;height:auto;object-fit:cover}.about-leader-summary{margin-bottom:.75rem}.about-leader-card__details{display:grid;grid-gap:1.25rem;gap:1.25rem;padding-top:1.15rem;border-top:1px solid rgba(32,43,37,.1)}@media (min-width:720px){.about-leader-card__details{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}}.about-leader-detail-block{min-width:0}.about-leader-inline-quote{margin:0;padding:1.1rem 1.2rem;font-size:.98rem;line-height:1.65}.about-leader-inline-quote p{margin:0}.about-bullet-list{margin:0;padding-left:1.05rem;font-size:.92rem;line-height:1.55;color:var(--iso-muted)}.about-bullet-list li+li{margin-top:.35rem}.about-leader-name{margin:0 0 .35rem;font-size:1.35rem;font-weight:600;letter-spacing:-.02em;color:var(--iso-text)}.about-leader-role{margin:0 0 .85rem;font-size:.92rem;font-weight:600;color:var(--iso-primary)}.about-leader-links{margin:1rem 0 0}.about-leader-details-title{margin:0 0 .75rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.about-leader-details-title+.about-leader-details-title{margin-top:0}.about-cta-band{margin-top:2.75rem;padding:1.5rem 1.35rem 1.4rem;border-radius:16px;border:1px solid rgba(58,97,80,.22);background:linear-gradient(165deg,rgba(255,255,255,.88),rgba(240,249,244,.72))}.about-cta-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.15rem 0 0}.about-cta-hint{margin:.85rem 0 0;font-size:.9rem}.school-solutions-card-grid{display:grid;grid-gap:1.25rem;gap:1.25rem;grid-template-columns:1fr;align-items:stretch}@media (min-width:560px){.school-solutions-principles-grid,.school-solutions-role-features-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:720px){.school-solutions-highlights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.school-solutions-highlights-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.school-solutions-marketing-card{display:flex;flex-direction:column;height:100%;min-height:0;padding:0;overflow:hidden;border:1px solid rgba(32,43,37,.14);border-radius:16px;background:rgba(255,255,255,.82);box-shadow:0 2px 14px rgba(25,45,35,.05)}.school-solutions-marketing-card__body{display:flex;flex-direction:column;flex:1 1 auto;padding:1.1rem 1.2rem 1.25rem;text-align:left}.school-solutions-marketing-card__body .login-feature-title{margin:0 0 .5rem;font-size:1.05rem;line-height:1.3}.school-solutions-marketing-card__body p{margin:0;flex:1 1 auto;font-size:.92rem;line-height:1.55;color:var(--iso-muted)}.school-solutions-card__figure{position:relative;margin:0;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(145deg,#eef6f1,#e2ebe6)}.school-solutions-card__figure-img{object-fit:cover;object-position:center center}.school-solutions-card__icon{display:flex;align-items:center;justify-content:center;min-height:5.5rem;margin:0;padding:1rem 1rem .5rem;background:linear-gradient(145deg,#eef6f1,#f5faf7)}.school-solutions-marketing-card--icon-only .school-solutions-card__icon{min-height:4.5rem;padding-bottom:.25rem}.school-solutions-highlight-card{position:relative}.school-solutions-role-panel{margin-top:.25rem}.school-solutions-feature-sub{margin:-.25rem 0 .5rem;font-size:.88rem}.school-solutions-role-panel__ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.school-solutions-signup-band{margin:2rem 0;padding:2rem 1.5rem;border-radius:16px;background:linear-gradient(155deg,rgba(238,246,241,.95),rgba(245,250,247,1));border:1px solid rgba(58,97,80,.15)}.school-solutions-signup-band__inner{max-width:520px;margin:0 auto}.school-solutions-steps{margin:0;padding:0;list-style:none;display:grid;grid-gap:1.25rem;gap:1.25rem}@media (min-width:720px){.school-solutions-steps{grid-template-columns:repeat(3,1fr);gap:1.5rem}}.school-solutions-steps__item{display:flex;gap:1rem;align-items:flex-start}.school-solutions-steps__num{flex-shrink:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--iso-primary);color:#fff;font-weight:700;font-size:.95rem}.school-solutions-steps__title{margin:0 0 .35rem;font-size:1.05rem;color:var(--iso-primary)}.school-solutions-pillars{display:grid;grid-gap:1.25rem;gap:1.25rem}@media (min-width:720px){.school-solutions-pillars{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.school-solutions-pillars{grid-template-columns:repeat(4,1fr)}}.school-solutions-pillar-card{padding:1rem;border-radius:12px;border:1px solid var(--iso-border);background:rgba(255,255,255,.65)}.school-solutions-pillar-card__figure{margin:0 0 .75rem;border-radius:8px;overflow:hidden}.school-solutions-pillar-card__img{width:100%;height:auto;display:block}.school-solutions-partner-figure{margin:1rem 0 1.25rem}.school-solutions-partner-figure__img{width:100%;height:auto;border-radius:12px}.school-solutions-who-grid{display:grid;grid-gap:1rem;gap:1rem}@media (min-width:640px){.school-solutions-who-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:960px){.school-solutions-who-grid{grid-template-columns:repeat(4,1fr)}}.school-solutions-who-card{padding:1.1rem 1.15rem;border-radius:12px;border:1px solid var(--iso-border);background:rgba(255,255,255,.72)}.school-solutions-who-card__cta{margin-top:.75rem}.school-solutions-sticky-cta{position:fixed;bottom:0;left:0;right:0;z-index:40;display:flex;gap:.65rem;justify-content:center;padding:.65rem 1rem calc(.65rem + env(safe-area-inset-bottom, 0px));background:rgba(250,252,251,.96);border-top:1px solid var(--iso-border);box-shadow:0 -4px 20px rgba(25,45,35,.08)}@media (min-width:960px){.school-solutions-sticky-cta{display:none}}.school-sign-in-page{padding:2rem 1.25rem 3rem}.school-sign-in-page__article{max-width:440px;margin:0 auto}.school-sign-in-page__header{margin-bottom:1.25rem;text-align:center}.school-sign-in-page__title{margin:0 0 .5rem;font-size:1.75rem;font-weight:600;color:var(--iso-primary)}.school-sign-in-page__lead{margin:0;font-size:.95rem;line-height:1.55}.school-sign-in-page__footer{margin-top:1.5rem;padding-top:1.15rem;border-top:1px solid var(--iso-border);font-size:.9rem;line-height:1.55;color:var(--iso-muted);text-align:center}.school-sign-in-page__alt-roles{margin-bottom:1rem}.school-sign-in-page__alt-roles-label{margin:0 0 .55rem;font-size:.82rem;font-weight:600;letter-spacing:.02em;color:var(--iso-text)}.school-sign-in-page__role-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0;padding:0;list-style:none}.school-sign-in-page__role-links a{display:inline-block;padding:.42rem .9rem;border-radius:999px;border:1px solid rgba(58,97,80,.22);background:rgba(255,255,255,.75);font-size:.88rem;font-weight:600;color:var(--iso-primary);text-decoration:none;transition:background .15s ease,border-color .15s ease}.school-sign-in-page__role-links a:hover{background:rgba(255,255,255,.95);border-color:rgba(58,97,80,.35)}.school-sign-in-page__footer-note{margin:0 0 .35rem}.school-sign-in-page__footer-note--subtle{margin:0;font-size:.84rem}.school-sign-in-page .sb-login-embedded .sb-login-header{text-align:center}.school-sign-in-page .sb-login-embedded .sb-login-logo,.school-sign-in-page .sb-login-embedded .sb-login-logo-placeholder{margin-left:auto;margin-right:auto}.login-hero-form-slot .panel{margin:0}.login-lang-selector{display:flex;flex-wrap:wrap;gap:0;margin-bottom:.75rem;border-radius:8px;overflow:hidden;background:#111;border:1px solid rgba(255,255,255,.12);box-shadow:0 1px 3px rgba(0,0,0,.2)}.login-lang-tab{flex:1 1;min-width:0;padding:.45rem .65rem;font-size:.8rem;font-weight:600;letter-spacing:.02em;color:#f5f5f5;background:transparent;cursor:pointer;border:none;border-right:1px solid rgba(255,255,255,.15);transition:background .15s ease}.login-lang-tab:last-child{border-right:none}.login-lang-tab:hover{background:rgba(255,255,255,.06)}.login-lang-tab--active{background:#2a2a2a;color:#fff}.login-form-card.panel{padding:1.35rem 1.35rem 1.5rem}.chat-page .login-form-card.panel{background:linear-gradient(155deg,rgba(255,255,255,.88),rgba(232,248,238,.92));border-color:rgba(58,97,80,.18);border-radius:20px;box-shadow:0 10px 40px rgba(35,65,50,.1)}.chat-page .login-form .login-label{color:var(--iso-primary);font-weight:600;font-size:.95rem;letter-spacing:.01em}.chat-page .login-form .input,.chat-page .login-form .phone-input-number{border-radius:18px;background:rgba(255,255,255,.92);border-color:rgba(58,97,80,.18);color:var(--iso-text);font-size:1.02rem;line-height:1.5}.chat-page .login-form .input::placeholder{color:rgba(58,97,80,.45)}.chat-page .login-form .input:focus{border-color:rgba(58,97,80,.35);outline:none;box-shadow:0 0 0 2px rgba(58,97,80,.15)}.chat-page .login-form .login-cc{border-color:rgba(58,97,80,.18);background:rgba(255,255,255,.92)}.chat-page .login-form .btn-primary{background:var(--iso-primary);border-color:var(--iso-primary);color:#fff}.chat-page .login-form .btn-primary:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 4px 16px rgba(58,97,80,.35)}.chat-page .login-form-title{color:var(--iso-primary)}.login-form-title{margin:0 0 .35rem;font-size:1.15rem;font-weight:600}.login-form-supervision-notice{margin:0 0 1rem;font-size:.88rem;line-height:1.45;color:var(--iso-primary);font-weight:500}.login-form-sub{margin:0 0 1rem;font-size:.9rem;line-height:1.45}.login-form-card .login-signin-tabs-shell{margin-top:.35rem;min-width:0;border-radius:14px;border:1px solid rgba(58,97,80,.18);background:linear-gradient(155deg,rgba(255,255,255,.95),rgba(232,248,238,.35));box-shadow:0 4px 20px rgba(35,65,50,.07);overflow:hidden;display:flex;flex-direction:column}.chat-page .login-form-card .login-signin-tabs-shell{border-color:rgba(58,97,80,.18)}.login-signin-tabs{display:grid;grid-gap:0;gap:0;margin:0;padding:0;border-radius:0;background:linear-gradient(180deg,rgba(238,244,240,.85),rgba(227,240,232,.65));border:none;border-bottom:1px solid rgba(58,97,80,.12)}.login-signin-tabs--one{grid-template-columns:minmax(0,1fr)}.login-signin-tabs--two{grid-template-columns:repeat(2,minmax(0,1fr))}.login-signin-tabs--three{grid-template-columns:repeat(3,minmax(0,1fr))}.login-signin-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:.65rem .4rem;min-height:3.1rem;font-size:.78rem;line-height:1.2;text-align:center;border-radius:0;border:none;border-right:1px solid rgba(58,97,80,.1);margin:0;cursor:pointer;font-family:inherit;color:var(--iso-muted);background:transparent;transition:background .18s ease,color .18s ease,box-shadow .18s ease}.login-signin-tab:last-child{border-right:none}.login-signin-tab:focus-visible{outline:2px solid rgba(58,97,80,.45);outline-offset:-2px;z-index:1}.login-signin-tab:hover:not(.login-signin-tab--active){color:var(--iso-text);background:rgba(58,97,80,.06)}.login-signin-tab--active{color:var(--iso-primary);font-weight:600;background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(232,248,238,.88));box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 1px 0 rgba(58,97,80,.06)}.login-signin-tab-label{display:block;font-size:.82rem;font-weight:inherit;letter-spacing:.01em}.login-signin-tab-hint{display:block;font-size:.68rem;font-weight:500;opacity:.92;color:inherit}.login-signin-tab--active .login-signin-tab-hint{color:var(--iso-muted)}.login-signin-tab-body{padding:1rem .85rem 1.1rem;background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(245,250,247,.98))}.login-signin-tab-lead{margin:0 0 .85rem!important}.login-signin-email-actions{display:flex;flex-direction:column;gap:.75rem;align-items:stretch}a.login-signin-email-cta{text-align:center;text-decoration:none;justify-content:center}@media (max-width:420px){.login-signin-tab{padding:.55rem .25rem;min-height:3.35rem}.login-signin-tab-label{font-size:.76rem}.login-signin-tab-hint{font-size:.62rem}}.onboarding-supervision-notice{margin:0 0 .75rem;font-size:.95rem;line-height:1.5;color:var(--iso-text);font-weight:500}.onboarding-consent{margin-top:.5rem}.onboarding-consent-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:.92rem;line-height:1.5}.onboarding-consent-label input[type=checkbox]{margin-top:.25rem;flex-shrink:0}.onboarding-consent-label a{color:var(--iso-primary);text-decoration:underline;text-underline-offset:2px}.onboarding-layout .onboarding-chat-surface{padding:10px max(8px,min(3vw,20px)) 52px}.panel.onboarding-panel{max-width:min(1180px,100%);margin-left:auto;margin-right:auto;padding:1.1rem 1.15rem 1.35rem;background:#f5f5f7;color:#1d1d1f;border:1px solid rgba(0,0,0,.06);border-radius:18px;box-shadow:none;display:flex;flex-direction:column;gap:0}.onboarding-header{margin-bottom:1rem;max-width:40rem}.onboarding-eyebrow{margin:0 0 .35rem;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#6e6e73}.onboarding-panel h1{margin:0 0 .65rem;font-size:clamp(1.5rem,4vw,1.85rem);line-height:1.2;color:#1d1d1f;letter-spacing:-.02em;font-weight:600}.onboarding-panel .onboarding-supervision-notice{margin:0;color:#424245;font-size:.94rem;line-height:1.55}.onboarding-panel .onboarding-form{display:flex;flex-direction:column;gap:0;min-width:0}.onboarding-panel .onboarding-tabs-shell{margin-top:.5rem;min-width:0;border-radius:14px;border:1px solid rgba(58,97,80,.18);background:linear-gradient(155deg,rgba(255,255,255,.95),rgba(232,248,238,.35));box-shadow:0 4px 20px rgba(35,65,50,.07);overflow:hidden;display:flex;flex-direction:column}.onboarding-panel .onboarding-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:0;gap:0;margin:0;padding:0;border-radius:0;background:linear-gradient(180deg,rgba(238,244,240,.85),rgba(227,240,232,.65));border:none;border-bottom:1px solid rgba(58,97,80,.12)}.onboarding-panel .onboarding-tab.onboarding-tab-pill{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.65rem .35rem;min-height:3.25rem;font-size:.78rem;line-height:1.25;text-align:center;border-radius:0;border:none;border-right:1px solid rgba(58,97,80,.1);margin-bottom:0;cursor:pointer;font-family:inherit;color:var(--iso-muted);background:transparent;transition:background .18s ease,color .18s ease,box-shadow .18s ease}.onboarding-panel .onboarding-tab.onboarding-tab-pill:last-child{border-right:none}.onboarding-panel .onboarding-tab.onboarding-tab-pill:focus-visible{outline:2px solid rgba(58,97,80,.45);outline-offset:-2px}.onboarding-tab-num{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:0;background:rgba(58,97,80,.1);color:var(--iso-muted);transition:background .18s ease,color .18s ease}.onboarding-panel .onboarding-tab-active .onboarding-tab-num{background:rgba(58,97,80,.22);color:var(--iso-primary)}.onboarding-tab-label{display:block;max-width:9rem}@media (max-width:520px){.onboarding-tab-label{font-size:.7rem;max-width:none}.onboarding-panel .onboarding-tab.onboarding-tab-pill{padding:.55rem .2rem;min-height:3.5rem}}.onboarding-panel .onboarding-tab-body{display:flex;flex-direction:column;padding:1rem .75rem .5rem;flex:1 1;min-height:min(46vh,22rem);border:none;border-radius:0;background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(245,250,247,.98))}.onboarding-panel .form-subsection{background:#fff;border-color:rgba(0,0,0,.08);padding:12px;border-radius:14px}.onboarding-panel .form-subsection-title,.onboarding-panel .muted{color:#6e6e73}.onboarding-panel .onboarding-profile-why{background:#fff;border-color:rgba(0,0,0,.08)}.onboarding-panel .onboarding-profile-why-title{color:#6e6e73}.onboarding-panel .onboarding-profile-why-list{color:#424245}.onboarding-panel .input,.onboarding-panel .select{background:#fff;border-color:rgba(0,0,0,.1);color:#1d1d1f}.onboarding-panel .onboarding-tab:hover:not(.onboarding-tab-active){color:var(--iso-text);background:rgba(58,97,80,.06)}.onboarding-panel .onboarding-tab-active{color:var(--iso-primary);font-weight:600;background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(232,248,238,.88));box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 1px 0 rgba(58,97,80,.06)}.onboarding-panel .onboarding-field-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:1fr}@media (min-width:640px){.onboarding-panel .onboarding-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.onboarding-panel .onboarding-plan-intro{margin-bottom:.75rem;max-width:42rem}.onboarding-panel .onboarding-plan-intro .onboarding-step-lead{margin-bottom:0}.onboarding-panel .onboarding-step-panel{flex:1 1;min-height:0;display:flex;flex-direction:column;gap:0;padding:0}.onboarding-panel .onboarding-step-panel[hidden]{display:none!important}.onboarding-panel .onboarding-step-panel .form-subsection{flex:1 1}.onboarding-panel .onboarding-step-panel--plan .onboarding-pricing-embed{flex:1 1;min-height:0;overflow-x:auto}.onboarding-panel .onboarding-pricing-embed .pricing-apple-tile--featured,.onboarding-panel .onboarding-pricing-embed .pricing-apple-tile--featured-value{transform:none}.onboarding-panel .onboarding-step-actions{margin-top:auto;padding-top:1rem;margin-bottom:0;border-top:1px solid rgba(0,0,0,.06);display:flex;flex-wrap:wrap;gap:10px;align-items:center;width:100%}.onboarding-panel .onboarding-step-actions--end{justify-content:flex-end}.onboarding-panel .onboarding-step-actions--split{justify-content:space-between}.onboarding-panel .onboarding-step-actions--footer{justify-content:space-between;align-items:flex-end}.onboarding-panel .onboarding-step-actions-primary{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}@media (max-width:520px){.onboarding-panel .onboarding-step-actions--footer{flex-direction:column;align-items:stretch}.onboarding-panel .onboarding-step-actions-primary{width:100%;flex-direction:column;align-items:stretch}}.onboarding-step-intro{margin:0 0 1rem;font-size:.95rem;line-height:1.55;color:#6e6e73;max-width:48rem}.onboarding-panel .onboarding-step-intro{color:#6e6e73}.onboarding-step-lead{margin:0 0 1rem;max-width:52rem;color:#6e6e73;font-size:.95rem;line-height:1.5}.onboarding-panel .onboarding-step-lead{color:#6e6e73}.onboarding-profile-why{margin:0 0 1.25rem;padding:.75rem .9rem;border-radius:10px;border:1px solid rgba(32,43,37,.12);background:rgba(255,255,255,.45);font-style:italic}.onboarding-profile-why-title{margin:0 0 .5rem;font-size:.8rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--iso-muted)}.onboarding-profile-why-list{margin:0;padding-left:1.15rem;font-size:.92rem;line-height:1.55;color:var(--iso-text)}.onboarding-profile-why-list li{margin-bottom:.5rem}.onboarding-profile-why-list li:last-child{margin-bottom:0}.onboarding-pricing-embed.pricing-apple{margin:0;padding:10px 8px 14px;border-radius:14px;border:1px solid rgba(0,0,0,.06);background:#fff;overflow:hidden}.onboarding-recaptcha-note{margin:1rem 0 0;font-size:.85rem}.onboarding-form-error{margin-top:1rem;max-width:40rem}.login-signed-in-lead{margin:0 0 1rem;font-size:.92rem;line-height:1.5;color:var(--iso-text)}.login-signed-in-lead strong{color:var(--iso-primary);font-weight:600}.login-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:var(--iso-muted)}.login-cc{display:inline-flex;align-items:center;padding:0 12px;border:1px solid var(--iso-border);border-radius:10px;background:rgba(255,255,255,.35);font-size:.9rem;font-weight:500}.login-hint{margin:0;font-size:.78rem}.login-form-actions{margin-top:.25rem}.verify-otp-article{display:flex;justify-content:center;align-items:flex-start;padding-top:2rem}.verify-otp-form-slot{width:100%;max-width:420px}.contact-article{display:flex;justify-content:center;align-items:flex-start;padding-top:2rem}.contact-form-slot{width:100%;max-width:520px}.contact-form-card{padding:1.5rem 1.5rem 1.75rem}.contact-form-title{margin:0 0 .35rem;font-size:1.2rem;font-weight:600;color:var(--iso-primary)}.contact-form-sub{margin:0 0 1.25rem;font-size:.9rem;line-height:1.45}.contact-form-sub a{color:var(--iso-primary);text-decoration:underline;text-underline-offset:2px}.contact-form-fields{display:grid;grid-gap:12px;gap:12px;margin-bottom:.75rem}.contact-select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;padding-right:2rem;cursor:pointer}.contact-form .login-label{color:var(--iso-primary);font-weight:600;font-size:.88rem}.contact-form .contact-select,.contact-form .input,.contact-form .textarea{border-radius:14px;background:rgba(255,255,255,.92);border:1px solid rgba(58,97,80,.18);color:var(--iso-text);font-size:1rem}.contact-form .contact-select:focus,.contact-form .input:focus,.contact-form .textarea:focus{border-color:rgba(58,97,80,.35);outline:none;box-shadow:0 0 0 2px rgba(58,97,80,.15)}.contact-form-captcha{margin:0 0 .5rem;font-size:.78rem}.contact-form-actions{margin-top:1rem}.contact-form-success{padding:1.5rem;border-radius:16px;border:1px solid rgba(58,97,80,.2);background:linear-gradient(155deg,rgba(255,255,255,.88),rgba(232,248,238,.92))}.contact-form-success-text{margin:0;font-size:1rem;color:var(--iso-text)}.contact-page-notes{margin-top:1.5rem;font-size:.88rem;line-height:1.55;max-width:520px}.contact-page-notes a{color:var(--iso-primary);text-decoration:underline;text-underline-offset:2px}.contact-page-notes a:hover{text-decoration-thickness:2px}.login-section{margin-top:2.75rem;padding-top:2rem;border-top:1px solid rgba(32,43,37,.12)}.login-section-title{margin:0 0 .75rem;font-size:clamp(1.35rem,2.5vw,1.75rem);font-weight:400;letter-spacing:-.02em}.login-section-lead{margin:0 0 1.75rem;max-width:72ch;font-size:1.05rem;line-height:1.65;color:var(--iso-muted)}.login-sources-section .login-section-title{margin-bottom:1rem}.login-sources-body{width:100%;max-width:none;margin:0;padding:1.3rem 1.4rem 1.35rem;border-radius:16px;border:1px solid rgba(32,43,37,.14);border-left:4px solid rgba(58,97,80,.42);background:linear-gradient(165deg,rgba(255,255,255,.72),rgba(240,249,244,.55));box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 6px 24px rgba(25,45,35,.05)}.login-sources-body p{margin:0 0 1rem;font-size:.98rem;line-height:1.62;color:var(--iso-muted)}.login-sources-body p:last-child{margin-bottom:0}.login-sources-body p strong{color:var(--iso-text);font-weight:600}.login-sources-body p.login-sources-disclaimer{margin:0;padding:1rem 1.15rem 1.05rem;border-radius:14px;border:1px solid rgba(200,120,40,.4);background:linear-gradient(180deg,#fff,#fffaf5);box-shadow:0 4px 20px rgba(200,120,40,.12);color:rgba(45,38,32,.92);line-height:1.62}.login-sources-body p+p.login-sources-disclaimer{margin-top:1rem}.login-sources-body .login-founder-quote p{color:var(--iso-text);font-size:1.05rem;line-height:1.7}.login-feature-grid{display:grid;grid-gap:1.25rem;gap:1.25rem}@media (min-width:720px){.login-feature-grid{grid-template-columns:repeat(3,1fr)}.login-feature-grid--4{grid-template-columns:repeat(4,1fr)}}.login-feature-card{border:1px solid rgba(32,43,37,.16);border-radius:16px;padding:1.25rem 1.35rem;background:rgba(255,255,255,.38);transition:transform .22s ease,box-shadow .22s ease}.login-feature-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(25,45,35,.1)}.login-feature-icon,.login-feature-mascot{margin:0 auto;line-height:0;display:flex;align-items:center;justify-content:center}.login-feature-mascot .chat-mascot{flex-shrink:0}.login-feature-title{margin:.75rem 0 .5rem;font-size:1.05rem;font-weight:600}.login-feature-card p{margin:0;font-size:.92rem;line-height:1.55;color:var(--iso-muted)}.login-founder{margin-top:2.5rem}.login-founder-grid{display:grid;grid-gap:1.75rem;gap:1.75rem;align-items:center}@media (min-width:800px){.login-founder-grid{grid-template-columns:220px 1fr}}.login-founder-title{margin:0 0 1rem;font-size:1.35rem;font-weight:400}.login-founder-quote{margin:0;padding:0;border:none;font-size:1.05rem;line-height:1.7;color:var(--iso-text)}.login-founder-quote p{margin:0 0 1rem}.login-founder-attribution{margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(32,43,37,.1);font-size:.95rem;font-style:normal;color:var(--iso-muted)}.login-founder-role{font-weight:600}.login-media-row{padding-bottom:2rem}.login-wide-banner{margin:0;width:100%;max-width:100%;border-radius:16px;overflow:hidden;line-height:0;border:1px solid rgba(32,43,37,.12);box-shadow:0 4px 24px rgba(32,43,37,.08);background:rgba(255,255,255,.35);aspect-ratio:2/1}.login-wide-banner-image{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.login-hero-figure{margin:0;width:100%;max-width:100%;border-radius:16px;overflow:hidden;border:1px solid rgba(32,43,37,.12);box-shadow:0 4px 24px rgba(32,43,37,.08);background:rgba(255,255,255,.35);line-height:0}.school-solutions-hero-figure .login-hero-image{width:100%;height:auto;max-height:min(52vh,520px);object-fit:cover;object-position:center center;border-radius:14px}.login-hero-image{width:100%;height:auto;display:block}.media-placeholder{margin:0;border:2px dashed rgba(32,43,37,.28);border-radius:16px;background:rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden}.media-placeholder--hero{aspect-ratio:16/9;min-height:180px}.media-placeholder--icon{width:56px;height:56px;border-radius:14px;margin:0 auto;font-size:1.5rem;color:rgba(32,43,37,.35)}.media-placeholder-icon{line-height:1}.media-placeholder--portrait{aspect-ratio:3/4;max-width:220px;margin:0 auto}.media-placeholder--wide{width:100%;aspect-ratio:21/5;min-height:120px}.media-placeholder-caption{padding:1rem 1.25rem;font-size:.82rem;line-height:1.45;color:var(--iso-muted);max-width:36ch}.media-placeholder-caption strong{display:block;color:var(--iso-text);margin-bottom:.35rem;font-size:.88rem}.media-placeholder-caption--small{max-width:18ch;font-size:.78rem}.school-solutions-root{margin:-16px;padding:16px;min-height:100%}.school-solutions-root.class-notes-student-page,.school-solutions-root.school-messaging-page{margin:0;width:100%;max-width:none;box-sizing:border-box;padding:12px max(16px,env(safe-area-inset-left,0px)) 20px max(16px,env(safe-area-inset-right,0px))}@media (min-width:961px){.school-solutions-root.class-notes-detail-page{margin:0;width:100%;max-width:none;box-sizing:border-box;padding:12px max(16px,env(safe-area-inset-left,0px)) 20px max(16px,env(safe-area-inset-right,0px))}.school-solutions-root.class-notes-detail-page .chat-page.school-roster-chat .school-reports-stack{max-width:none;width:100%;margin:0;padding-inline:clamp(.35rem,1.5vw,.75rem);padding-bottom:clamp(16px,3vw,36px)}.school-solutions-root.class-notes-detail-page .chat-page.school-roster-chat .school-roster-panel{padding-inline:clamp(.65rem,2.2vw,1.35rem)}.school-solutions-root.school-roster-page{margin:0;width:100%;max-width:none;box-sizing:border-box;padding:12px max(16px,env(safe-area-inset-left,0px)) 20px max(16px,env(safe-area-inset-right,0px))}.school-solutions-root.school-roster-page .chat-page.school-roster-chat .school-roster-stack{max-width:none;width:100%;margin:0;padding-inline:clamp(.35rem,1.5vw,.75rem);padding-bottom:clamp(16px,3vw,36px)}}.school-solutions-root.class-notes-student-page .chat-page.school-roster-chat .school-reports-stack{max-width:none;width:100%;margin:0;padding-inline:clamp(.35rem,1.5vw,.75rem);padding-bottom:clamp(16px,3vw,36px)}.school-solutions-root.class-notes-student-page .chat-page.school-roster-chat .school-roster-panel{padding-inline:clamp(.65rem,2.2vw,1.35rem)}.class-notes-student-toolbar{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:flex-end;margin-bottom:16px}.class-notes-student-toolbar .school-roster-field{margin-bottom:0}.class-notes-student-toolbar__search{flex:1 1 220px;min-width:min(100%,220px)}.class-notes-student-toolbar__actions{flex:0 0 auto;display:flex;align-items:flex-end;padding-bottom:2px}@media (max-width:540px){.school-solutions-root.class-notes-student-page{padding:10px max(10px,env(safe-area-inset-left,0px)) 14px max(10px,env(safe-area-inset-right,0px))}.school-solutions-root.class-notes-student-page .chat-page.school-roster-chat .school-reports-stack{padding-inline:0}}.class-notes-student-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px dashed rgba(58,97,80,.2)}.class-notes-student-pager__meta{margin:0;font-size:.88rem}.class-notes-student-pager__total{font-weight:400}.class-notes-student-pager__nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.class-notes-student-pager__page{font-size:.88rem}.school-solutions-root .chat-page{min-height:calc(100vh - 100px)}.chat-page.school-roster-chat{min-height:min(88vh,920px)}.chat-page.school-roster-chat .school-roster-stack{max-width:900px;margin:0 auto;padding:2px 6px 32px;display:flex;flex-direction:column;gap:14px}.chat-page.school-roster-chat .school-reports-stack{max-width:960px;margin:0 auto;padding:2px 6px 32px;display:flex;flex-direction:column;gap:14px}.school-solutions-root.school-reports-page{margin:0;width:100%;max-width:none;box-sizing:border-box;padding:12px max(16px,env(safe-area-inset-left,0px)) 20px max(16px,env(safe-area-inset-right,0px))}.school-solutions-root.school-reports-page .chat-page.school-roster-chat .school-reports-stack{max-width:none;width:100%;margin:0;padding-inline:clamp(.35rem,1.5vw,.75rem);padding-bottom:clamp(16px,3vw,36px)}.school-solutions-root.school-manage-students-page,.school-solutions-root.school-partner-directory-page,.school-solutions-root.school-partner-enrollment-page{margin:0;width:100%;max-width:none;box-sizing:border-box;padding:12px max(16px,env(safe-area-inset-left,0px)) 20px max(16px,env(safe-area-inset-right,0px))}.school-solutions-root.school-manage-students-page .chat-page.school-roster-chat .school-roster-stack,.school-solutions-root.school-partner-directory-page .chat-page.school-roster-chat .school-roster-stack,.school-solutions-root.school-partner-enrollment-page .chat-page.school-roster-chat .school-roster-stack{max-width:none;width:100%;margin:0;padding-inline:clamp(.35rem,1.5vw,.75rem);padding-bottom:clamp(16px,3vw,36px)}.school-solutions-root.school-partner-directory-page .school-data-table-wrap{width:100%;max-width:none}.school-partner-directory-admin-note{width:100%;max-width:none;box-sizing:border-box;margin:0 0 1.25rem;padding:1rem 1.15rem;border-radius:16px;border:1px solid rgba(58,97,80,.18);background:rgba(255,255,255,.78);box-shadow:0 1px 0 rgba(58,97,80,.06)}.school-partner-directory-admin-note__title{margin:0 0 .45rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.school-partner-directory-admin-note__body{margin:0;max-width:72ch;font-size:.92rem;line-height:1.55}.school-partner-directory-admin-note__emph{color:var(--iso-text);font-weight:650}.school-partner-directory-admin-note__action{margin:.85rem 0 0}.school-partner-directory-admin-note__link{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem;font-weight:650;color:var(--iso-primary);text-decoration:underline;text-underline-offset:2px}.school-partner-directory-admin-note__link:hover{color:var(--iso-text)}.school-partner-directory-admin-note__link:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px;border-radius:4px}.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-reports-stack{max-width:none;width:100%;margin:0;padding-inline:0;padding-bottom:clamp(16px,3vw,36px)}.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-roster-hero{max-width:72ch}.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-roster-panel{padding-inline:clamp(.65rem,2.2vw,1.35rem)}.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-messaging-gmail{min-height:min(72vh,820px)}@media (max-width:960px){.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-messaging-gmail__list-scroll{max-height:min(42vh,340px)}.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-messaging-gmail__conversation{min-height:min(36vh,420px)}}@media (max-width:540px){.school-solutions-root.school-messaging-page{margin:0;padding:10px max(10px,env(safe-area-inset-left,0px)) 14px max(10px,env(safe-area-inset-right,0px))}.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-reports-stack{padding-inline:0;gap:10px}.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-messaging-gmail{border-radius:10px;min-height:auto}.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-messaging-gmail__folders{padding:10px 8px}.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-messaging-gmail__folder-row{min-width:calc(50% - 6px);padding:8px;font-size:.85rem}.school-solutions-root.school-messaging-page .school-messaging-compose-overlay{padding:0;align-items:stretch;justify-content:stretch}.school-solutions-root.school-messaging-page .school-messaging-compose-panel{width:100%;max-width:none;max-height:min(94vh,100dvh);border-radius:16px 16px 0 0;align-self:flex-end;margin-top:auto}.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-messaging-gmail__list-main--compose{flex:1 1 auto;min-height:0;height:min(94vh,100dvh);max-height:min(94vh,100dvh)}.school-solutions-root.school-messaging-page .chat-page.school-roster-chat .school-messaging-compose-full__scrollbox--tall{max-height:min(36vh,18rem)}}body.iso-body:has(.school-partner-challenges-page,.school-teacher-challenges-list-page,.school-teacher-challenges-create-question-page,.school-class-notes-list-page,.school-class-notes-preview-page,.school-class-assessment-list-page)>main.page-wrap.page-wrap--footer{max-width:none;width:100%;padding-top:var(--layout-pad);padding-bottom:var(--layout-pad);padding-left:0;padding-right:0}.school-solutions-root.school-class-assessment-list-page,.school-solutions-root.school-class-notes-list-page,.school-solutions-root.school-class-notes-preview-page,.school-solutions-root.school-partner-challenges-page,.school-solutions-root.school-teacher-challenges-create-question-page,.school-solutions-root.school-teacher-challenges-list-page{margin:0;width:100%;max-width:none;box-sizing:border-box;padding:12px max(16px,env(safe-area-inset-left,0px)) 24px max(16px,env(safe-area-inset-right,0px))}.school-solutions-root.school-class-assessment-list-page .chat-page.school-roster-chat,.school-solutions-root.school-class-notes-list-page .chat-page.school-roster-chat,.school-solutions-root.school-class-notes-preview-page .chat-page.school-roster-chat,.school-solutions-root.school-partner-challenges-page .chat-page.school-roster-chat,.school-solutions-root.school-teacher-challenges-create-question-page .chat-page.school-roster-chat,.school-solutions-root.school-teacher-challenges-list-page .chat-page.school-roster-chat{min-height:min(88vh,960px)}.school-solutions-root.school-class-assessment-list-page .chat-page.school-roster-chat .school-roster-stack,.school-solutions-root.school-class-notes-list-page .chat-page.school-roster-chat .school-reports-stack,.school-solutions-root.school-class-notes-preview-page .chat-page.school-roster-chat .school-reports-stack,.school-solutions-root.school-partner-challenges-page .chat-page.school-roster-chat .school-roster-stack,.school-solutions-root.school-teacher-challenges-create-question-page .chat-page.school-roster-chat .school-roster-stack,.school-solutions-root.school-teacher-challenges-list-page .chat-page.school-roster-chat .school-roster-stack{max-width:none;width:100%;margin:0;padding-inline:0;padding-bottom:clamp(12px,2.5vw,32px);gap:clamp(10px,1.8vw,18px)}.school-class-notes-partner-info{margin-bottom:16px;padding:0;max-width:640px;border:1px solid rgba(58,97,80,.2);border-radius:12px}.school-class-notes-partner-info__summary{padding:14px 16px;cursor:pointer;font-size:1.02rem;font-weight:600;color:var(--iso-text,#16261e);list-style:none;display:flex;align-items:center;gap:8px}.school-class-notes-partner-info__summary::-webkit-details-marker{display:none}.school-class-notes-partner-info__summary:before{content:"▸";display:inline-block;transition:transform .15s ease;font-size:.85em;flex-shrink:0}.school-class-notes-partner-info[open]>.school-class-notes-partner-info__summary:before{transform:rotate(90deg)}.school-class-notes-partner-info__body{padding:0 16px 14px}.school-solutions-root.school-teacher-challenges-list-page .chat-page.school-roster-chat .school-reports-stack{max-width:none;width:100%;margin:0;padding-inline:0;padding-bottom:clamp(12px,2.5vw,32px);gap:clamp(10px,1.8vw,18px)}.school-solutions-root.school-partner-challenges-page .partner-challenges-list-hero .partner-challenges-list-hero__row,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-hero .teacher-challenges-list-hero__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.school-solutions-root.school-teacher-challenges-create-question-page .teacher-challenges-list-hero .teacher-challenges-list-hero__row{align-items:flex-start;row-gap:1rem}.school-solutions-root.school-teacher-challenges-create-question-page .teacher-challenges-list-hero__intro{min-width:0;flex:1 1 min(100%,22rem)}.school-solutions-root.school-partner-challenges-page .partner-challenges-list-hero .school-roster-title,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-hero .school-roster-title{margin:0;min-width:0;flex:1 1 12rem}.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-hero__ctas{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;flex-shrink:0}.school-solutions-root.school-partner-challenges-page .partner-challenges-list-panel,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-panel{max-width:none;padding-inline:clamp(.35rem,1.5vw,1rem)}.school-solutions-root.school-partner-challenges-page .partner-challenges-table-shell,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-table-shell{width:100%;min-width:0;border-radius:14px;border:1px solid rgba(58,97,80,.16);background:rgba(255,255,255,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.65);overflow:hidden}.school-solutions-root.school-partner-challenges-page .partner-challenges-table-shell .school-data-table-wrap,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-table-shell .school-roster-table-wrap{margin:0}.school-solutions-root.school-partner-challenges-page .partner-challenges-pack-table,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-pack-table{min-width:680px;font-family:inherit;font-size:.9rem}.school-solutions-root.school-partner-challenges-page .partner-challenges-pack-table th,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-pack-table th{font-size:.68rem;font-weight:750;letter-spacing:.055em;line-height:1.25;text-transform:uppercase;color:var(--iso-primary);font-family:inherit}.school-solutions-root.school-partner-challenges-page .partner-challenges-pack-table td,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-pack-table td{font-size:.9rem;line-height:1.45;letter-spacing:.012em;font-weight:400;color:rgba(22,38,30,.94);font-family:inherit}.school-solutions-root.school-partner-challenges-page .partner-challenges-pack-table td.muted,.school-solutions-root.school-teacher-challenges-list-page .school-data-table.partner-notes-table td.muted,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-pack-table td.muted{font-size:.9rem;color:var(--iso-muted)}.school-solutions-root.school-partner-challenges-page .partner-challenges-pack-table .partner-challenges-pack-table__slug,.school-solutions-root.school-teacher-challenges-list-page .school-data-table.partner-notes-table .teacher-challenges-list-pack-table__slug,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-pack-table .teacher-challenges-list-pack-table__slug{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.9rem;letter-spacing:0}.school-solutions-root.school-partner-challenges-page .partner-question-bank-table{min-width:900px;table-layout:fixed;width:100%}.school-solutions-root.school-partner-challenges-page .partner-question-bank-table td,.school-solutions-root.school-partner-challenges-page .partner-question-bank-table th{padding:.4rem .5rem;vertical-align:middle}.school-solutions-root.school-partner-challenges-page .partner-question-bank-table td.teacher-challenges-q-cell{vertical-align:top}.school-solutions-root.school-partner-challenges-page .partner-question-bank-table .partner-question-bank-table__action-sep{color:var(--iso-muted);font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chat-page.school-roster-chat .partner-question-bank-table .teacher-challenges-col--type,.school-solutions-root.school-partner-challenges-page .partner-question-bank-table .teacher-challenges-col--type{width:auto;min-width:7.25rem;max-width:none;white-space:normal;text-align:left;word-break:normal;overflow-wrap:anywhere}.chat-page.school-roster-chat .partner-question-bank-table tbody td.teacher-challenges-q-cell,.chat-page.school-roster-chat .partner-question-bank-table thead th:first-child{width:38%}.chat-page.school-roster-chat .partner-question-bank-table tbody td:nth-child(2),.chat-page.school-roster-chat .partner-question-bank-table thead th:nth-child(2){width:10%}.chat-page.school-roster-chat .partner-question-bank-table tbody td:nth-child(3),.chat-page.school-roster-chat .partner-question-bank-table thead th:nth-child(3){width:5%}.chat-page.school-roster-chat .partner-question-bank-table tbody td:nth-child(4),.chat-page.school-roster-chat .partner-question-bank-table thead th:nth-child(4){width:9%}.chat-page.school-roster-chat .partner-question-bank-table tbody td:nth-child(5),.chat-page.school-roster-chat .partner-question-bank-table thead th:nth-child(5){width:12%}.chat-page.school-roster-chat .partner-question-bank-table tbody td:nth-child(6),.chat-page.school-roster-chat .partner-question-bank-table thead th:nth-child(6){width:8%}.chat-page.school-roster-chat .partner-question-bank-table tbody td:nth-child(7),.chat-page.school-roster-chat .partner-question-bank-table thead th:nth-child(7){width:6%}.chat-page.school-roster-chat .partner-question-bank-table tbody td:nth-child(8),.chat-page.school-roster-chat .partner-question-bank-table thead th:nth-child(8){width:12%}.chat-page.school-roster-chat .partner-question-bank-table .teacher-challenges-q-preview{max-width:100%;max-height:2.85rem;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;padding-right:4px}.chat-page.school-roster-chat .partner-question-bank-table .teacher-challenges-q-preview .chat-message-md{font-size:.84rem;line-height:1.32}.chat-page.school-roster-chat .partner-question-bank-table .teacher-challenges-q-slug{margin-top:4px;padding:2px 8px;font-size:.72rem}@media (max-width:540px){.school-solutions-root.school-class-assessment-list-page,.school-solutions-root.school-class-notes-list-page,.school-solutions-root.school-class-notes-preview-page,.school-solutions-root.school-partner-challenges-page,.school-solutions-root.school-teacher-challenges-list-page{padding:10px max(10px,env(safe-area-inset-left,0px)) 16px max(10px,env(safe-area-inset-right,0px))}.school-solutions-root.school-class-assessment-list-page .chat-page.school-roster-chat .school-roster-stack,.school-solutions-root.school-class-notes-list-page .chat-page.school-roster-chat .school-reports-stack,.school-solutions-root.school-class-notes-preview-page .chat-page.school-roster-chat .school-reports-stack,.school-solutions-root.school-partner-challenges-page .chat-page.school-roster-chat .school-roster-stack,.school-solutions-root.school-teacher-challenges-list-page .chat-page.school-roster-chat .school-reports-stack,.school-solutions-root.school-teacher-challenges-list-page .chat-page.school-roster-chat .school-roster-stack{gap:10px}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-hero .class-assessment-list-hero__row,.school-solutions-root.school-class-assessment-page .perf-report-editor .class-assessment-list-hero .class-assessment-list-hero__row,.school-solutions-root.school-partner-challenges-page .partner-challenges-list-hero .partner-challenges-list-hero__row,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-hero .teacher-challenges-list-hero__row{flex-direction:column;align-items:stretch}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-hero__ctas .btn,.school-solutions-root.school-class-assessment-page .perf-report-editor .class-assessment-list-hero__ctas .btn,.school-solutions-root.school-partner-challenges-page .partner-challenges-list-hero .btn,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-hero__ctas .btn{width:100%;justify-content:center;text-align:center}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table-shell,.school-solutions-root.school-partner-challenges-page .partner-challenges-table-shell,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-table-shell{border-radius:12px}}.school-solutions-root.school-partner-challenges-page .partner-challenges-list-hero__cta,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-hero__cta{text-decoration:none;flex-shrink:0}.school-solutions-root.school-partner-challenges-page .partner-challenges-list-loading,.school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-loading{padding:clamp(.75rem,2vw,1.25rem) 0}.school-solutions-root.school-partner-challenges-page .partner-notes-view-toggle{display:inline-flex;border-radius:10px;border:1px solid rgba(58,97,80,.22);overflow:hidden;background:rgba(255,255,255,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.school-solutions-root.school-partner-challenges-page .partner-notes-view-toggle button{margin:0;border:none;background:transparent;padding:.4rem .85rem;font-size:.8rem;font-weight:650;letter-spacing:.02em;cursor:pointer;color:rgba(32,43,37,.72);font-family:inherit;line-height:1.2}.school-solutions-root.school-partner-challenges-page .partner-notes-view-toggle button:hover{color:rgba(22,38,30,.95);background:rgba(58,97,80,.06)}.school-solutions-root.school-partner-challenges-page .partner-notes-view-toggle button[aria-pressed=true]{background:rgba(58,97,80,.14);color:var(--iso-primary,#1a2e25)}.school-solutions-root.school-partner-challenges-page .partner-notes-grid-shell{padding:.85rem .75rem 1rem}.school-solutions-root.school-partner-challenges-page .partner-notes-card-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));grid-gap:.85rem;gap:.85rem}.school-solutions-root.school-partner-challenges-page .partner-notes-card{margin:0;padding:1rem 1.05rem 1.05rem;border-radius:12px;border:1px solid rgba(58,97,80,.14);background:rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.65);min-width:0;display:flex;flex-direction:column;gap:.65rem}.school-solutions-root.school-partner-challenges-page .partner-notes-card__title{margin:0;font-size:1.02rem;font-weight:650;line-height:1.35;color:rgba(22,38,30,.96)}.school-solutions-root.school-partner-challenges-page .partner-notes-card__dl{margin:0;display:grid;grid-template-columns:1fr;grid-gap:.45rem .75rem;gap:.45rem .75rem;font-size:.88rem}.school-solutions-root.school-partner-challenges-page .partner-notes-card__dl dt{margin:0;font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary);opacity:.85}.school-solutions-root.school-partner-challenges-page .partner-notes-card__dl dd{margin:.12rem 0 0}.school-solutions-root.school-partner-challenges-page .partner-notes-card__actions{margin-top:auto;padding-top:.25rem}.school-solutions-root.school-partner-challenges-page .partner-notes-card__actions .teacher-challenges-pack-actions__row--compact{justify-content:flex-start}.school-solutions-root.school-partner-challenges-page a.teacher-challenges-icon-btn{display:inline-flex;text-decoration:none}.chat-page.school-roster-chat .school-reports-toolbar{margin-top:0}.chat-page.school-roster-chat .school-reports-filter-label{display:block;font-size:.85rem}.chat-page.school-roster-chat .school-reports-signed-in{font-size:.85rem;align-self:center;flex:1 1 200px;min-width:0}.chat-page.school-roster-chat .school-reports-page-foot{margin-top:1.5rem;text-align:left;align-self:stretch}.chat-page.school-roster-chat .school-reports-ist-note{font-style:italic;font-size:.88rem;margin:0}.chat-page.school-roster-chat .school-reports-student-challenges-panel{margin-top:1.5rem;padding:1.1rem 1.22rem 1.25rem;border-radius:20px;border:1px solid rgba(58,97,80,.15);background:linear-gradient(155deg,rgba(255,255,255,.92),rgba(232,248,238,.9));box-shadow:0 8px 28px rgba(40,75,58,.07)}.chat-page.school-roster-chat .school-reports-student-challenges-panel__title{margin:0 0 .5rem}.chat-page.school-roster-chat .school-reports-student-challenges-panel__hint{margin:0 0 1rem;font-size:.88rem;line-height:1.52;max-width:44rem}.chat-page.school-roster-chat .school-reports-student-challenges-panel__batches{margin:0 0 .75rem;flex-wrap:wrap}.chat-page.school-roster-chat .school-reports-kpi-row{display:flex;flex-wrap:wrap;gap:12px;margin:.75rem 0 .5rem}.chat-page.school-roster-chat .school-reports-kpi{flex:1 1 160px;min-width:0;padding:12px 14px;border-radius:14px;border:1px solid rgba(58,97,80,.14);background:rgba(255,255,255,.72)}.chat-page.school-roster-chat .school-reports-kpi-label{display:block;font-size:.78rem;font-weight:650;color:var(--iso-muted);letter-spacing:.02em;text-transform:uppercase}.chat-page.school-roster-chat .school-reports-kpi-value{display:block;margin-top:.25rem;font-size:1.35rem;font-weight:800;color:var(--iso-primary);letter-spacing:-.03em}.chat-page.school-roster-chat .school-reports-kpi-sub{font-size:.85rem;font-weight:500;color:var(--iso-muted)}.chat-page.school-roster-chat .school-reports-period{margin:.5rem 0 0;font-size:.9rem;overflow-wrap:anywhere}.chat-page.school-roster-chat .school-reports-subhead{margin:0 0 .5rem;font-size:1.02rem;font-weight:700;color:var(--iso-text)}.chat-page.school-roster-chat .school-reports-chart-wrap{width:100%;min-height:200px}.chat-page.school-roster-chat .school-reports-chart-wrap--tall{min-height:280px;height:300px}.chat-page.school-roster-chat .school-reports-student-trend{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid rgba(58,97,80,.12)}.chat-page.school-roster-chat .school-reports-student-trend-hint{font-size:.88rem;line-height:1.5;margin:.35rem 0 .75rem}.chat-page.school-roster-chat .school-reports-legend-toggles{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;align-items:center;margin-bottom:.65rem}.chat-page.school-roster-chat .school-reports-legend-toggle{display:inline-flex;align-items:center;gap:.4rem;font-size:.88rem;font-weight:600;color:var(--iso-text);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chat-page.school-roster-chat .school-reports-legend-toggle input{width:1rem;height:1rem;accent-color:var(--iso-primary)}.chat-page.school-roster-chat .school-reports-legend-swatch{width:12px;height:12px;border-radius:3px;flex-shrink:0}.chat-page.school-roster-chat .school-reports-drill-card{margin-top:1rem;padding:12px 14px;border-radius:14px;border:1px dashed rgba(58,97,80,.22);background:rgba(236,252,244,.45)}.chat-page.school-roster-chat tr.school-reports-row--selected td{background:rgba(58,97,80,.08)}.chat-page.school-roster-chat .school-reports-attempt-q-md{font-size:.9rem;line-height:1.5;max-width:100%}.chat-page.school-roster-chat .school-reports-attempt-q-md .chat-message-md{max-width:100%}.chat-page.school-roster-chat .school-reports-attempt-q-md .katex-display{margin:.4rem 0;overflow-x:auto}.chat-page.school-roster-chat .school-reports-kibana{--kibana-c1:#00b3a4;--kibana-c2:#e7664c;--kibana-c3:#3185fc;--kibana-c4:#dbbc00;--kibana-c5:#7144e5}.chat-page.school-roster-chat .btn-small{padding:.35rem .75rem;min-height:36px;font-size:.85rem}.chat-page.school-roster-chat .school-roster-hero{padding-top:2px}.chat-page.school-roster-chat .school-roster-title{margin:0 0 .4rem;font-size:clamp(1.42rem,2.6vw,1.85rem);font-weight:800;letter-spacing:-.03em;color:var(--iso-primary);line-height:1.2}.chat-page.school-roster-chat .teacher-challenges-list-hero--stacked{display:flex;flex-direction:column;gap:.55rem;align-items:stretch}.chat-page.school-roster-chat .teacher-challenges-list-hero--stacked .teacher-challenges-list-hero__lead{margin:0;max-width:none;width:100%}.chat-page.school-roster-chat .school-roster-lead{margin:0;font-size:.95rem;line-height:1.58;max-width:46rem}.chat-page.school-roster-chat .teacher-challenges-compose-hero{display:flex;flex-direction:column;gap:.55rem}.chat-page.school-roster-chat .teacher-challenges-compose-hero__top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;width:100%}.chat-page.school-roster-chat .teacher-challenges-compose-hero__lead{margin:0;max-width:none;width:100%}.chat-page.school-roster-chat .school-roster-notice{margin:0;padding:12px 14px;border-radius:16px;border:1px solid rgba(58,97,80,.18);background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(236,252,244,.98));box-shadow:0 4px 18px rgba(40,75,58,.07);font-size:.92rem;line-height:1.55;white-space:pre-wrap;color:var(--iso-text)}.chat-page.school-roster-chat .school-roster-notice.school-roster-notice--no-subscription,.chat-page.school-roster-chat .school-roster-notice.school-roster-notice--seat-limit{border-color:rgba(234,88,12,.42);background:linear-gradient(145deg,rgba(255,251,235,.99),rgba(254,215,170,.72) 42%,rgba(251,146,60,.38));box-shadow:0 4px 22px rgba(234,88,12,.14);color:rgba(67,32,6,.96)}.chat-page.school-roster-chat .school-roster-error,.chat-page.school-roster-chat .school-roster-error-banner{margin:0;padding:11px 13px;border-radius:14px;border:1px solid rgba(180,35,24,.22);background:rgba(254,242,242,.85);color:#8a271c;font-size:.92rem;line-height:1.45}.chat-page.school-roster-chat .school-roster-error-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.chat-page.school-roster-chat .school-roster-error-banner__text{margin:0;flex:1 1;min-width:0}.chat-page.school-roster-chat .school-roster-error-banner__dismiss{flex-shrink:0;padding:6px 12px;font-size:.85rem}.chat-page.school-roster-chat .school-roster-loading{margin:0;font-size:.95rem;color:var(--iso-muted)}.chat-page.school-roster-chat .school-roster-tabbar{display:flex;flex-wrap:wrap;gap:6px;padding:6px;border-radius:999px;background:rgba(255,255,255,.52);border:1px solid rgba(58,97,80,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.78)}.chat-page.school-roster-chat .school-roster-tab{border:none;cursor:pointer;font:inherit;font-weight:650;font-size:.84rem;padding:10px 18px;border-radius:999px;background:transparent;color:var(--iso-muted);transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .18s ease}.chat-page.school-roster-chat .school-roster-tab:hover{background:rgba(255,255,255,.82);color:var(--iso-text)}.chat-page.school-roster-chat .school-roster-tab:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.school-roster-chat .school-roster-tab[aria-selected=true]{background:linear-gradient(135deg,#e4f5ea,#d8f0e3);color:var(--iso-primary);box-shadow:0 3px 12px rgba(58,97,80,.14);transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.chat-page.school-roster-chat .school-roster-tab[aria-selected=true]{transform:none}}.chat-page.school-roster-chat .school-roster-panel{border-radius:20px;border:1px solid rgba(58,97,80,.15);background:linear-gradient(155deg,rgba(255,255,255,.9),rgba(232,248,238,.95));box-shadow:0 8px 32px rgba(40,75,58,.08);padding:1.15rem 1.28rem 1.35rem}.chat-page.school-roster-chat .school-roster-section-head{margin:0 0 .65rem;font-size:.72rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .school-reports-student-challenges-panel>.school-roster-section-head{margin:0 0 .35rem}.chat-page.school-roster-chat .school-roster-panel-title{margin:0 0 .5rem;font-size:1.05rem;font-weight:700;color:var(--iso-text);letter-spacing:-.02em}.chat-page.school-roster-chat .school-roster-panel-hint{margin:0 0 1rem;font-size:.88rem;line-height:1.55}.chat-page.school-roster-chat .school-roster-filters{margin:0 0 1rem;padding:12px 14px;border-radius:16px;border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.55)}.chat-page.school-roster-chat .school-reports-student-challenges-panel .school-roster-filters.school-reports-student-challenges-panel__student-field{margin:0 0 .85rem}.chat-page.school-roster-chat .school-roster-filters-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));align-items:end}.chat-page.school-roster-chat .school-roster-filter-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.chat-page.school-roster-chat .school-roster-filter-label{font-size:.72rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .school-roster-filter-select{width:100%;box-sizing:border-box;min-height:3rem;padding:10px 12px;border:1px solid var(--iso-border);border-radius:8px;font:inherit;font-size:1rem;line-height:1.35;max-width:100%;background-color:rgba(255,255,255,.95);color:var(--iso-text)}.chat-page.school-roster-chat select.school-roster-filter-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%233a6150' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:14px;padding-right:2.35rem}.chat-page.school-roster-chat .school-roster-filter-select:disabled{opacity:.55;cursor:not-allowed}.chat-page.school-roster-chat .school-roster-filter-select:focus{outline:none;border-color:rgba(58,97,80,.45);box-shadow:0 0 0 3px rgba(58,97,80,.12)}.chat-page.school-roster-chat .class-note-challenge-section .class-note-challenge-questions{display:flex;flex-direction:column;gap:1.25rem;margin-top:.25rem}.chat-page.school-roster-chat .class-note-challenge-question__text{margin:0 0 .5rem;font-size:1rem;font-weight:650;line-height:1.45;color:var(--iso-text)}.chat-page.school-roster-chat .class-note-challenge-answer-textarea{resize:vertical;min-height:4.5rem;font-family:inherit;background-image:none;padding-right:12px;cursor:text}.chat-page.school-roster-chat .school-roster-filters-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(58,97,80,.1)}.chat-page.school-roster-chat .school-roster-filters-count{font-size:.85rem;font-weight:600}.chat-page.school-roster-chat .school-roster-filters-clear{font-size:.82rem;padding:7px 14px;border-radius:999px;font-weight:600}.chat-page.school-roster-chat .school-roster-filters-hint{margin:10px 0 0;font-size:.82rem;line-height:1.45}.chat-page.school-roster-chat .school-roster-filters-none{margin:0 0 1rem;font-size:.85rem;line-height:1.5;padding:10px 12px;border-radius:12px;border:1px dashed rgba(58,97,80,.2);background:rgba(255,255,255,.4)}.chat-page.school-roster-chat .school-roster-password-banner{margin:0 0 .65rem;padding:5px 8px 6px;border-radius:12px;border:1px solid rgba(58,97,80,.22);background:linear-gradient(115deg,#fafefc,#f0fdf4 18%,#ecfdf3 40%,#d8f5e6 62%,#c4ebd6);box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 4px 16px rgba(58,97,80,.09);overflow-x:auto;-webkit-overflow-scrolling:touch}.chat-page.school-roster-chat .school-roster-password-line{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:8px;min-height:30px;width:100%}.chat-page.school-roster-chat .school-roster-password-title{flex-shrink:0;font-size:.8rem;font-weight:750;letter-spacing:-.02em;color:var(--iso-primary);white-space:nowrap}.chat-page.school-roster-chat .school-roster-password-dismiss{flex-shrink:0;margin:0 0 0 auto;padding:2px 8px;font:inherit;font-size:.68rem;font-weight:650;border-radius:999px;border:1px solid rgba(58,97,80,.32);background:linear-gradient(180deg,#ffffff,#f0faf4);color:var(--iso-primary);cursor:pointer;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}.chat-page.school-roster-chat .school-roster-password-dismiss:hover{background:#fff;border-color:rgba(58,97,80,.45)}.chat-page.school-roster-chat .school-roster-password-dismiss:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.school-roster-chat .school-roster-password-label{flex-shrink:0;font-size:.6rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase;color:var(--iso-primary);white-space:nowrap;padding-left:4px;border-left:1px solid rgba(58,97,80,.18);margin-left:2px}.chat-page.school-roster-chat .school-roster-password-value{flex:1 1 auto;min-width:5.5rem;margin:0;padding:3px 8px;border-radius:8px;border:1px solid rgba(58,97,80,.2);background:rgba(255,255,255,.92);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.88rem;font-weight:700;letter-spacing:.05em;color:var(--iso-text);line-height:1.25;white-space:nowrap}.chat-page.school-roster-chat .school-roster-password-copy{flex-shrink:0;margin:0;padding:4px 10px;font:inherit;font-size:.72rem;font-weight:700;border-radius:999px;border:1px solid rgba(58,97,80,.45);background:linear-gradient(145deg,#41725e 0,var(--iso-primary) 55%,#335a4a 100%);color:#fff;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.22);white-space:nowrap}.chat-page.school-roster-chat .school-roster-password-copy:hover{filter:brightness(1.06)}.chat-page.school-roster-chat .school-roster-password-copy:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.school-roster-chat .school-roster-callout{margin:0 0 1rem;padding:.85rem 1rem;border-radius:16px;border:1px solid rgba(58,97,80,.14);background:rgba(255,255,255,.72);font-size:.88rem;line-height:1.5}.chat-page.school-roster-chat .school-roster-form-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.chat-page.school-roster-chat .school-roster-class-catalog-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:1.25rem 1.5rem;gap:1.25rem 1.5rem;margin-bottom:1rem;align-items:start}.chat-page.school-roster-chat .school-roster-class-catalog-split__pane{min-width:0;display:flex;flex-direction:column;gap:.55rem;padding-left:1.5rem;border-left:1px solid var(--iso-border)}.chat-page.school-roster-chat .school-roster-class-catalog-split__pane:first-child{padding-left:0;border-left:none}.chat-page.school-roster-chat .school-roster-class-catalog-split__head{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}@media (max-width:720px){.chat-page.school-roster-chat .school-roster-class-catalog-split{grid-template-columns:1fr}.chat-page.school-roster-chat .school-roster-class-catalog-split__pane:not(:first-child){padding-left:0;border-left:none;padding-top:1.25rem;border-top:1px solid var(--iso-border)}}.chat-page.school-roster-chat .school-roster-catalog-empty{margin-top:.35rem;width:100%;max-width:none;box-sizing:border-box}.chat-page.school-roster-chat .school-roster-catalog-empty__title{margin:0 0 .75rem;font-size:.95rem;font-weight:650;line-height:1.45;color:var(--iso-text)}.chat-page.school-roster-chat .school-roster-catalog-empty__guide{margin:0;width:100%;box-sizing:border-box;padding:.9rem 1rem 1rem;border-radius:14px;border:1px solid rgba(58,97,80,.16);background:rgba(255,255,255,.72);box-shadow:0 4px 18px rgba(40,75,58,.06)}.chat-page.school-roster-chat .school-roster-catalog-empty__guide-label{margin:0 0 .55rem;font-size:.72rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .school-roster-catalog-empty__list{margin:0;padding-left:1.15rem;display:flex;flex-direction:column;gap:.85rem;font-size:.88rem;line-height:1.55;color:rgba(30,43,36,.92)}.chat-page.school-roster-chat .school-roster-catalog-empty__item{margin:0}.chat-page.school-roster-chat .school-roster-catalog-empty__summary{margin:0 0 .4rem;font-weight:650;line-height:1.5;color:var(--iso-text)}.chat-page.school-roster-chat .school-roster-catalog-empty__when-kicker{margin:0 0 .2rem;font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .school-roster-catalog-empty__when{margin:0;font-size:.84rem;line-height:1.58;color:rgba(30,43,36,.82)}.school-solutions-root.school-welcome-page-root{margin:0;width:100%;max-width:none;box-sizing:border-box;padding:12px max(16px,env(safe-area-inset-left,0px)) 20px max(16px,env(safe-area-inset-right,0px));overflow-x:clip}.chat-page.school-roster-chat .school-welcome-page__loading{padding:3rem 1.5rem;text-align:center;font-size:.95rem;color:var(--iso-muted)}.chat-page.school-roster-chat .school-welcome-page{position:relative;isolation:isolate;width:100%;max-width:none;min-height:min(100dvh,1080px);padding:clamp(1rem,2.5vw,2rem) 0 3rem;box-sizing:border-box;background:radial-gradient(ellipse 120% 90% at 0 0,rgba(120,185,255,.38),transparent 58%),radial-gradient(ellipse 100% 80% at 100% 10%,rgba(255,188,150,.32),transparent 55%),radial-gradient(ellipse 90% 70% at 50% 110%,rgba(58,97,80,.14),transparent 52%),linear-gradient(175deg,#f5faf7,#fafcf9 42%,#f3f8f5)}.chat-page.school-roster-chat .school-welcome-page__intro{max-width:none;width:100%;margin:0 auto 2rem;text-align:center}.chat-page.school-roster-chat .school-welcome-page__kicker{margin:0 0 .5rem;font-size:.72rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .school-welcome-page__title{margin:0 0 1.25rem;font-size:clamp(1.65rem,4.2vw,2.35rem);font-weight:800;letter-spacing:-.035em;line-height:1.12;color:var(--iso-text)}.chat-page.school-roster-chat .school-welcome-page__split{display:grid;grid-template-columns:minmax(260px,min(380px,32vw)) minmax(0,1fr);grid-gap:clamp(1rem,2.5vw,2rem);gap:clamp(1rem,2.5vw,2rem);align-items:stretch;max-width:none;width:100%;margin:0}@media (max-width:860px){.chat-page.school-roster-chat .school-welcome-page__split{grid-template-columns:1fr}}.chat-page.school-roster-chat .school-welcome-page__nav{padding:1.1rem 1rem 1.2rem;border-radius:20px;border:1px solid rgba(58,97,80,.14);background:rgba(255,255,255,.72);box-shadow:0 12px 40px rgba(40,75,58,.07);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chat-page.school-roster-chat .school-welcome-page__nav-label{margin:0 0 .75rem .35rem;font-size:.68rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .school-welcome-page__nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.chat-page.school-roster-chat .school-welcome-page__task{width:100%;display:flex;align-items:flex-start;gap:.65rem;text-align:left;padding:.75rem .8rem;border-radius:14px;border:1px solid rgba(58,97,80,.1);background:rgba(255,255,255,.55);cursor:pointer;font:inherit;color:var(--iso-text);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}.chat-page.school-roster-chat .school-welcome-page__task:hover{border-color:rgba(58,97,80,.28);background:rgba(255,255,255,.92);box-shadow:0 6px 22px rgba(58,97,80,.1);transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.chat-page.school-roster-chat .school-welcome-page__task:hover{transform:none}}.chat-page.school-roster-chat .school-welcome-page__task--active{border-color:rgba(58,97,80,.42);background:rgba(255,255,255,.98);box-shadow:0 8px 28px rgba(58,97,80,.14)}.chat-page.school-roster-chat .school-welcome-page__task-index{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;border-radius:10px;font-size:.72rem;font-weight:800;letter-spacing:.04em;color:var(--iso-primary);background:rgba(58,97,80,.1)}.chat-page.school-roster-chat .school-welcome-page__task--active .school-welcome-page__task-index{background:var(--iso-primary);color:#fff}.chat-page.school-roster-chat .school-welcome-page__task-body{display:flex;flex-direction:column;gap:.2rem;min-width:0}.chat-page.school-roster-chat .school-welcome-page__task-title{font-size:.95rem;font-weight:700;letter-spacing:-.015em;line-height:1.3}.chat-page.school-roster-chat .school-welcome-page__task-sub{font-size:.78rem;line-height:1.45}.chat-page.school-roster-chat .school-welcome-page__panel{padding:1.25rem 1.35rem 1.4rem;border-radius:22px;border:1px solid rgba(58,97,80,.16);background:linear-gradient(160deg,rgba(255,255,255,.97),rgba(240,250,244,.96));box-shadow:0 16px 48px rgba(40,75,58,.1);display:flex;flex-direction:column;min-height:100%}.chat-page.school-roster-chat .school-welcome-page__panel-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(58,97,80,.1)}.chat-page.school-roster-chat .school-welcome-page__panel-title{margin:0;font-size:clamp(1.1rem,2.4vw,1.35rem);font-weight:800;letter-spacing:-.02em;color:var(--iso-text)}.chat-page.school-roster-chat .school-welcome-page__progress{display:flex;gap:.35rem;list-style:none;margin:0;padding:0;align-items:center}.chat-page.school-roster-chat .school-welcome-page__progress-dot{width:10px;height:10px;border-radius:999px;background:rgba(58,97,80,.12);border:1px solid rgba(58,97,80,.2)}.chat-page.school-roster-chat .school-welcome-page__progress-dot--on{background:rgba(58,97,80,.35);border-color:rgba(58,97,80,.45)}.chat-page.school-roster-chat .school-welcome-page__progress-dot--dim{opacity:.45}.chat-page.school-roster-chat .school-welcome-page__panel-body{flex:1 1;display:grid;grid-gap:1.25rem;gap:1.25rem}@media (min-width:640px){.chat-page.school-roster-chat .school-welcome-page__panel-body{grid-template-columns:minmax(0,3fr) minmax(0,7fr);gap:1.5rem}}.chat-page.school-roster-chat .school-welcome-page__parts-heading,.chat-page.school-roster-chat .school-welcome-page__screen-label{margin:0 0 .45rem;font-size:.68rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .school-welcome-page__screen-text{margin:0;font-size:.9rem;line-height:1.6;color:rgba(30,43,36,.9)}.chat-page.school-roster-chat .school-welcome-page__partner-figure{margin:1rem 0 0;padding:0;border:1px solid rgba(58,97,80,.12);border-radius:10px;background:rgba(255,255,255,.65);overflow:hidden}.chat-page.school-roster-chat .school-welcome-page__partner-figure-img{display:block;width:100%;height:auto;vertical-align:middle}.chat-page.school-roster-chat .school-welcome-page__partner-figure-zoom{display:block;width:100%;margin:0;padding:0;border:0;background:transparent;cursor:zoom-in;text-align:left;font:inherit;color:inherit}.chat-page.school-roster-chat .school-welcome-page__partner-figure-zoom:focus-visible{outline:2px solid var(--iso-primary,#3a6150);outline-offset:2px}.school-welcome-page__diagram-overlay{position:fixed;inset:0;z-index:20000;display:flex;align-items:center;justify-content:center;padding:1rem;box-sizing:border-box;background:rgba(15,22,18,.78);cursor:zoom-out}.school-welcome-page__diagram-overlay-panel{position:relative;max-width:min(96vw,1200px);max-height:92vh;margin:auto;padding:.5rem;border-radius:12px;background:rgba(255,255,255,.98);box-shadow:0 24px 64px rgba(0,0,0,.25),0 8px 24px rgba(0,0,0,.12);cursor:default}.school-welcome-page__diagram-overlay-close{position:absolute;top:.4rem;right:.4rem;z-index:2;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;margin:0;padding:0;border:1px solid rgba(58,97,80,.22);border-radius:8px;background:rgba(30,43,36,.95);color:#f4f7f5;font-size:1.35rem;line-height:1;cursor:pointer}.school-welcome-page__diagram-overlay-scroll{overflow:auto;max-height:min(85vh,calc(100vh - 2rem));-webkit-overflow-scrolling:touch;padding:2.25rem .35rem .35rem}.school-welcome-page__diagram-overlay-img{display:block;width:auto;height:auto;max-width:min(90vw,1150px);margin:0 auto}.chat-page.school-roster-chat .school-welcome-page__parts{margin:0;padding:0 0 0 1.15rem;list-style:disc}.chat-page.school-roster-chat .school-welcome-page__parts li{margin-bottom:.65rem;font-size:.88rem;line-height:1.55;color:rgba(30,43,36,.92);padding-left:.25rem}.chat-page.school-roster-chat .school-welcome-page__parts li:last-child{margin-bottom:0}.chat-page.school-roster-chat .school-welcome-page__parts li.school-welcome-page__parts-item--stacked{margin-bottom:1rem}.chat-page.school-roster-chat .school-welcome-page__parts-lead{margin:0 0 .35rem;font-size:.88rem;font-weight:650;line-height:1.5;color:rgba(30,43,36,.95)}.chat-page.school-roster-chat .school-welcome-page__parts-when-kicker{margin:0 0 .2rem;font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .school-welcome-page__parts-when{margin:0;font-size:.84rem;line-height:1.58}.chat-page.school-roster-chat .school-welcome-page__parts-nested-list{margin:.45rem 0 0;padding:0 0 0 1.1rem;list-style:disc;display:flex;flex-direction:column;gap:.42rem;font-size:.84rem;line-height:1.52;color:rgba(30,43,36,.9)}.chat-page.school-roster-chat .school-welcome-page__parts-nested-list li{margin:0;padding-left:.2rem}.chat-page.school-roster-chat .school-welcome-page__panel-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.35rem;padding-top:1.1rem;border-top:1px solid rgba(58,97,80,.1)}.chat-page.school-roster-chat .school-welcome-page .muted{color:var(--iso-muted)}.chat-page.school-roster-chat .school-roster-field{display:flex;flex-direction:column;gap:.55rem;min-width:0}.chat-page.school-roster-chat .school-roster-field>span{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .partner-login-step-body{min-width:0}.chat-page.school-roster-chat .partner-login-step-body .school-roster-field{gap:.5rem}.chat-page.school-roster-chat .partner-profile-form .school-roster-panel>.school-roster-field:not(:last-child){margin-bottom:1rem}.chat-page.school-roster-chat .partner-dashboard-address-cell{white-space:pre-line;vertical-align:top;max-width:22rem;line-height:1.45}.chat-page.school-roster-chat .partner-dashboard-contact-cell{white-space:pre-line;vertical-align:top;line-height:1.45}.chat-page.school-roster-chat .teacher-challenges-panel.school-roster-panel>.school-roster-field:not(:last-child){margin-bottom:.75rem}.chat-page.school-roster-chat .partner-login-form-actions{margin-top:.25rem;padding-top:1rem}.partner-signup-kind-panel{max-width:560px!important}.partner-signup-kind-cards{display:grid;grid-gap:12px;gap:12px;width:100%}.partner-signup-kind-card{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;width:100%;padding:1rem 1.1rem;border:1px solid rgba(58,97,80,.22);border-radius:14px;background:#fff;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.partner-signup-kind-card:hover{border-color:rgba(58,97,80,.45);box-shadow:0 8px 24px rgba(31,56,45,.08);transform:translateY(-1px)}.partner-signup-kind-card__title{font-size:1.02rem;font-weight:700;color:var(--iso-primary,#1f382d)}.partner-signup-kind-card__summary{font-size:.88rem;line-height:1.45}.chat-page.school-roster-chat .school-roster-field--wide{grid-column:1/-1}.chat-page.school-roster-chat .school-roster-submit{margin-top:.35rem;justify-self:start}.chat-page.school-roster-chat .school-roster-table-wrap{margin-top:.35rem;border-radius:16px;overflow:hidden;border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.55);box-shadow:0 2px 12px rgba(35,65,50,.05)}.chat-page.school-roster-chat .school-roster-table-wrap .school-data-table{font-size:.88rem}.chat-page.school-roster-chat .school-roster-table-wrap .school-data-table th{font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary);background:rgba(58,97,80,.07);border-color:rgba(58,97,80,.1)}.chat-page.school-roster-chat .school-roster-table-wrap .school-data-table td{border-color:rgba(58,97,80,.09);vertical-align:middle}.chat-page.school-roster-chat .school-roster-name{font-weight:650;color:var(--iso-text)}.chat-page.school-roster-chat .school-roster-login-line{font-size:.82rem}.chat-page.school-roster-chat .school-roster-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.chat-page.school-roster-chat .school-roster-badge--ok{background:rgba(58,97,80,.12);color:var(--iso-primary);border:1px solid rgba(58,97,80,.2)}.chat-page.school-roster-chat .school-roster-badge--off{background:rgba(180,35,24,.1);color:#9a3428;border:1px solid rgba(180,35,24,.22)}.chat-page.school-roster-chat .school-roster-badge--enrollment{background:rgba(58,97,80,.08);color:var(--iso-muted);border:1px solid rgba(58,97,80,.14);text-transform:none;font-weight:650;letter-spacing:.02em}.chat-page.school-roster-chat .school-roster-status-stack{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.chat-page.school-roster-chat .school-roster-pill-hint{display:block;margin-top:.25rem;font-size:.72rem;font-weight:600;color:var(--iso-muted);text-transform:none;letter-spacing:0}.chat-page.school-roster-chat .school-roster-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;align-items:center}.chat-page.school-roster-chat .school-roster-actions .btn{font-size:.78rem;padding:7px 12px;border-radius:999px;font-weight:600}.chat-page.school-roster-chat .school-roster-btn--danger{border-color:rgba(180,35,24,.35);color:#9a3428;background:rgba(255,255,255,.75)}.chat-page.school-roster-chat .school-roster-btn--danger:hover{background:rgba(254,242,242,.95);border-color:rgba(180,35,24,.5)}.chat-page.school-roster-chat .school-roster-back{display:inline-flex;align-items:center;gap:.35rem;margin-top:.5rem;font-size:.9rem;font-weight:600;color:var(--iso-primary);text-decoration:none;padding:6px 2px;border-radius:10px}.chat-page.school-roster-chat .school-roster-back:hover{text-decoration:underline}.chat-page.school-roster-chat .teacher-challenges-form{margin-top:.35rem;display:flex;flex-direction:column;gap:.85rem}.chat-page.school-roster-chat .teacher-challenges-code{min-height:8rem;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.85rem;line-height:1.45}.chat-page.school-roster-chat .teacher-challenges-edit-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.chat-page.school-roster-chat .teacher-composer-draft{border:1px solid rgba(32,43,37,.14);border-radius:10px;padding:.85rem 1rem;background:rgba(255,255,255,.55)}.chat-page.school-roster-chat .school-roster-field .composer-insert-tools{margin:0}.chat-page.school-roster-chat .composer-insert-tools__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.chat-page.school-roster-chat .composer-insert-tools--with-leading .composer-insert-tools__top--merged{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;margin-bottom:2px}.chat-page.school-roster-chat .composer-insert-tools--with-leading .composer-insert-tools__leading{flex:1 1 200px;display:flex;align-items:center;min-width:0}.chat-page.school-roster-chat .composer-insert-tools--with-leading .class-note-composer-leading-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%;min-width:0}.chat-page.school-roster-chat .composer-insert-tools--with-leading .class-note-composer-leading-actions .btn-primary{flex:1 1 180px;min-height:42px;justify-content:center}.chat-page.school-roster-chat .composer-insert-tools--with-leading .class-note-composer-leading-actions .btn-ghost{flex:0 0 auto}.chat-page.school-roster-chat .composer-insert-tools--with-leading .class-note-composer-suggest-next-btn{display:inline-flex;align-items:center;gap:6px;min-height:42px;padding-inline:12px}.chat-page.school-roster-chat .composer-insert-tools--with-leading .class-note-composer-suggest-next-btn__icon{flex-shrink:0}.chat-page.school-roster-chat .composer-insert-tools--with-leading .class-note-composer-leading-actions--smart-search .btn-primary{flex:1 1 200px}.chat-page.school-roster-chat .composer-insert-tools--with-leading .composer-insert-tools__bar{flex:0 1 auto;align-self:center;justify-content:flex-end;min-width:min(100%,280px)}.chat-page.school-roster-chat .composer-insert-tools--with-leading .composer-insert-tools__subtabs{flex:0 1 auto}.chat-page.school-roster-chat .composer-insert-tools__subtabs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;flex:1 1;min-width:0}.chat-page.school-roster-chat .composer-insert-tools__subtab{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(58,97,80,.22);border-radius:999px;padding:7px 14px;font-size:.82rem;font-weight:650;letter-spacing:.04em;background:rgba(255,255,255,.75);color:rgba(32,43,37,.88);cursor:pointer;font-family:inherit}.chat-page.school-roster-chat .composer-insert-tools__subtab-inner{display:inline-flex;align-items:center;justify-content:center}.chat-page.school-roster-chat .composer-insert-tools__subtab-icon{flex-shrink:0;width:16px;height:16px}.chat-page.school-roster-chat .composer-insert-tools__subtab-sigma{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:.95rem;font-weight:800;line-height:1;font-family:Times New Roman,Georgia,"Noto Serif",serif}.chat-page.school-roster-chat .composer-insert-tools__subtab:hover:not(.is-active){background:rgba(58,97,80,.08);border-color:rgba(58,97,80,.28)}.chat-page.school-roster-chat .composer-insert-tools__subtab.is-active{background:var(--iso-primary);color:#fff;border-color:var(--iso-primary)}.chat-page.school-roster-chat .composer-insert-tools__close{font-size:.78rem;font-weight:600;padding:6px 12px;border-radius:999px;margin-left:auto}.chat-page.school-roster-chat .teacher-challenges-insert-tools-wrap .composer-insert-tools__bar{padding:.4rem .55rem;margin:.2rem 0 0;background:rgba(58,97,80,.06);border-radius:10px;border:1px solid rgba(58,97,80,.12)}.chat-page.school-roster-chat .teacher-challenges-insert-tools-wrap .composer-insert-tools__subtabs{gap:4px}.chat-page.school-roster-chat .teacher-challenges-insert-tools-wrap .composer-insert-tools__subtab{display:inline-flex;align-items:center;gap:6px;border-radius:6px;padding:6px 11px;font-size:.78rem;font-weight:650;border:1px solid transparent;background:transparent;color:rgba(32,43,37,.62)}.chat-page.school-roster-chat .teacher-challenges-insert-tools-wrap .composer-insert-tools__subtab:hover:not(.is-active){background:rgba(255,255,255,.55);border-color:rgba(58,97,80,.15)}.chat-page.school-roster-chat .teacher-challenges-insert-tools-wrap .composer-insert-tools__subtab.is-active{background:rgba(58,97,80,.14);color:var(--iso-primary);border-color:rgba(58,97,80,.22);box-shadow:none}.chat-page.school-roster-chat .teacher-challenges-insert-tools-wrap .composer-insert-tools__subtab:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.school-roster-chat .teacher-challenges-insert-tools-wrap .composer-insert-tools__close.btn{background:transparent;border:none;border-radius:6px;box-shadow:none;color:rgba(32,43,37,.62);text-decoration:underline;text-underline-offset:3px;font-weight:600}.chat-page.school-roster-chat .teacher-challenges-insert-tools-wrap .composer-insert-tools__close.btn:hover{color:var(--iso-primary);background:rgba(58,97,80,.06)}.chat-page.school-roster-chat .teacher-challenges-insert-tools-wrap .composer-insert-tools__close.btn:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.school-roster-chat .composer-insert-tools__panel{margin-top:.65rem;padding:.75rem .85rem;border-radius:12px;border:1px solid rgba(58,97,80,.18);background:rgba(255,255,255,.65);box-shadow:0 2px 12px rgba(35,65,50,.06)}.chat-page.school-roster-chat .composer-insert-tools__attach-lead,.chat-page.school-roster-chat .composer-symbol-palette__hint{margin:0 0 .65rem;font-size:.82rem;line-height:1.45}.chat-page.school-roster-chat .composer-symbol-palette__hint--below{margin:.65rem 0 0;font-style:italic}.chat-page.school-roster-chat .composer-symbol-palette__tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:.65rem;max-height:8rem;overflow-y:auto;padding-bottom:2px}.chat-page.school-roster-chat .composer-symbol-palette__tab{border:1px solid rgba(58,97,80,.22);border-radius:10px;padding:8px 10px;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary);background:rgba(239,245,241,.75);cursor:pointer;font-family:inherit;line-height:1.35}.chat-page.school-roster-chat .composer-symbol-palette__tab:hover{background:rgba(58,97,80,.1);border-color:rgba(58,97,80,.3)}.chat-page.school-roster-chat .composer-symbol-palette__tab.is-active{background:rgba(58,97,80,.2);border-color:rgba(58,97,80,.38);color:rgba(18,32,26,.96)}.chat-page.school-roster-chat .composer-symbol-palette__grid{display:flex;flex-wrap:wrap;gap:5px;align-items:center;max-height:12rem;overflow-y:auto;padding:2px}.chat-page.school-roster-chat .composer-symbol-palette__sym{min-width:2.35rem;min-height:2.1rem;padding:4px 7px;border-radius:8px;border:1px solid rgba(58,97,80,.16);background:rgba(255,255,255,.9);font-size:1.05rem;line-height:1.2;cursor:pointer;font:inherit;color:rgba(22,38,30,.95)}.chat-page.school-roster-chat .composer-symbol-palette__sym:hover{background:rgba(58,97,80,.12);border-color:rgba(58,97,80,.28)}.chat-page.school-roster-chat .teacher-composer-options{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.75rem}.chat-page.school-roster-chat .teacher-composer-option-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.5rem}.chat-page.school-roster-chat .teacher-composer-option-row .input{flex:1 1;min-width:140px}.chat-page.school-roster-chat .teacher-composer-option-row .teacher-rich-field{flex:1 1;min-width:140px;margin-bottom:0}.chat-page.school-roster-chat .teacher-composer-ma-file-lead{margin:0 0 .35rem}.chat-page.school-roster-chat .teacher-rich-field{display:flex;flex-direction:column;gap:.35rem}.chat-page.school-roster-chat .teacher-rich-field__label-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.chat-page.school-roster-chat .teacher-rich-field__label{font-size:.88rem;font-weight:600;color:rgba(32,43,37,.88)}.chat-page.school-roster-chat .teacher-rich-field__preview-toggle{flex-shrink:0}.chat-page.school-roster-chat .teacher-rich-field__box{position:relative;border:1px solid rgba(32,43,37,.14);border-radius:10px;background:rgba(255,255,255,.72);overflow:hidden}.chat-page.school-roster-chat .teacher-rich-field__textarea-shell{position:relative}.chat-page.school-roster-chat .teacher-rich-field__textarea-inline-actions{position:absolute;right:8px;bottom:8px;z-index:2;display:flex;align-items:center;gap:6px;pointer-events:auto}.chat-page.school-roster-chat .teacher-rich-field__textarea--has-inline-actions:not(.teacher-rich-field__textarea--concealed){padding-right:3.25rem;padding-bottom:2.75rem}.chat-page.school-roster-chat .teacher-rich-field__textarea-inline-actions .btn{font-size:.72rem;padding:.35rem .55rem;line-height:1.2;box-shadow:0 1px 4px rgba(35,65,50,.12)}.chat-page.school-roster-chat .teacher-rich-field__inline-draft-inner{display:inline-block;font-weight:600}.chat-page.school-roster-chat .teacher-rich-field__preview-wrap{position:relative;padding:.65rem 2.35rem .65rem .75rem;min-height:2.5rem}.chat-page.school-roster-chat .teacher-rich-field__preview-md{font-size:.92rem;line-height:1.5;word-break:break-word}.chat-page.school-roster-chat .teacher-rich-field__edit-icon{position:absolute;top:.4rem;right:.4rem;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid rgba(58,97,80,.22);border-radius:8px;background:rgba(255,255,255,.95);color:rgba(32,43,37,.78);cursor:pointer;box-shadow:0 1px 4px rgba(35,65,50,.08)}.chat-page.school-roster-chat .teacher-rich-field__edit-icon:hover{background:rgba(58,97,80,.1);border-color:rgba(58,97,80,.35);color:rgba(22,38,30,.95)}.chat-page.school-roster-chat .teacher-rich-field__textarea{display:block;width:100%;margin:0;border:none!important;border-radius:0!important;box-shadow:none!important;resize:vertical;min-height:2.75rem;font:inherit}.chat-page.school-roster-chat .teacher-rich-field__textarea--concealed{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;border:0!important;opacity:0!important;pointer-events:none}.chat-page.school-roster-chat .teacher-rich-field--compact .teacher-rich-field__preview-wrap{padding-top:.35rem;padding-bottom:.35rem;min-height:1.85rem}.chat-page.school-roster-chat .teacher-rich-field--compact .teacher-rich-field__textarea{min-height:2.25rem;line-height:1.35}.chat-page.school-roster-chat .teacher-challenges-panel>.teacher-challenges-subnav:first-child{margin-top:0}.chat-page.school-roster-chat .teacher-challenges-panel-section-title{margin:0 0 .45rem;font-size:1.02rem;font-weight:650;letter-spacing:-.022em;line-height:1.28;color:rgba(22,38,30,.94)}.chat-page.school-roster-chat .teacher-challenges-panel-lead{margin:0 0 .9rem;font-size:.86rem;line-height:1.5;max-width:42rem}.chat-page.school-roster-chat .teacher-challenges-form .school-roster-field .input:not(select),.chat-page.school-roster-chat .teacher-challenges-panel .school-roster-field .input:not(select),.chat-page.school-roster-chat .teacher-challenges-panel .teacher-challenges-inline .input:not(select),.chat-page.school-roster-chat .teacher-challenges-panel .teacher-stem-chip__link-field .input:not(select){font-family:inherit;font-size:.92rem;line-height:1.45;letter-spacing:.012em;font-weight:400;color:rgba(22,38,30,.96)}.chat-page.school-roster-chat .school-roster-edit-cell select.input,.chat-page.school-roster-chat .school-roster-field>select.input,.chat-page.school-roster-chat .school-roster-inline-field select.input,.chat-page.school-roster-chat .teacher-challenges-form select.input,.chat-page.school-roster-chat .teacher-challenges-panel select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;font-family:inherit;font-size:.92rem;line-height:1.45;letter-spacing:.012em;font-weight:500;cursor:pointer;color:rgba(22,38,30,.96);width:100%;border:1px solid var(--iso-border);border-radius:10px;background-color:#eff5f1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%233a6150' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:14px;padding:10px 2.35rem 10px 12px;min-height:2.875rem}.chat-page.school-roster-chat .school-roster-inline-add-grid .school-roster-inline-field>input.input,.chat-page.school-roster-chat .teacher-challenges-form .school-roster-field input.input:not([type=checkbox]):not([type=radio]):not([type=file]),.chat-page.school-roster-chat .teacher-challenges-panel .school-roster-field input.input:not([type=checkbox]):not([type=radio]):not([type=file]){box-sizing:border-box;min-height:2.875rem}.chat-page.school-roster-chat .school-roster-edit-cell select.input option,.chat-page.school-roster-chat .school-roster-inline-field select.input option,.chat-page.school-roster-chat .teacher-challenges-form select.input option,.chat-page.school-roster-chat .teacher-challenges-panel select.input option{font-family:inherit;font-size:.92rem;font-weight:400}.chat-page.school-roster-chat .teacher-challenges-form input[type=number].input,.chat-page.school-roster-chat .teacher-challenges-panel input[type=number].input{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chat-page.school-roster-chat .teacher-challenges-form .input::placeholder,.chat-page.school-roster-chat .teacher-challenges-panel .input::placeholder{color:rgba(70,84,76,.58);font-size:.86rem;font-weight:400;letter-spacing:.012em}.chat-page.school-roster-chat .teacher-challenges-panel input[type=file].input{font-size:.87rem;line-height:1.4;font-weight:500}.chat-page.school-roster-chat .teacher-challenges-panel .school-roster-table-wrap .school-data-table{font-size:.9rem}.chat-page.school-roster-chat .teacher-challenges-panel .school-roster-table-wrap:not(.teacher-challenges-pick-table-wrap) .school-data-table th{font-size:.68rem;font-weight:750;letter-spacing:.055em;line-height:1.25;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .teacher-challenges-panel .school-roster-table-wrap .school-data-table td{font-size:.9rem;line-height:1.45;letter-spacing:.012em;font-weight:400;color:rgba(22,38,30,.94)}.chat-page.school-roster-chat .teacher-challenges-panel .school-roster-table-wrap .school-data-table td.muted{font-size:.88rem;color:var(--iso-muted)}.chat-page.school-roster-chat .teacher-challenges-panel .school-roster-table-wrap .school-data-table code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85em}.chat-page.school-roster-chat .teacher-challenges-compose-separator{display:block;height:0;margin:1.1rem 0 .95rem;border:none;border-top:1px solid rgba(58,97,80,.16)}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .school-data-table{table-layout:fixed}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .school-data-table th{white-space:nowrap;word-break:normal;overflow-wrap:normal;-webkit-hyphens:manual;hyphens:manual;vertical-align:bottom;padding:.55rem}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .school-data-table thead th{overflow:visible;text-overflow:clip}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .school-data-table td{word-break:normal;overflow-wrap:anywhere}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-td--select,.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-th--select{width:5.5rem;min-width:5.5rem;text-align:center;vertical-align:middle}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-th--class{width:5.25rem;min-width:5rem;max-width:6rem;padding-left:.45rem;padding-right:.45rem;vertical-align:bottom}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-td--class{width:5.25rem;min-width:5rem;max-width:6rem;padding-left:.45rem;padding-right:.45rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-td--question,.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-th--question{min-width:11rem}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-td--marks,.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-th--marks{width:4.5rem;min-width:4.5rem;text-align:center;vertical-align:middle}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-td--thumb,.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-th--thumb{width:7rem;min-width:7rem;text-align:center;vertical-align:middle}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-stem-preview-link{font-size:.88rem}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .school-data-table>tbody>tr>td.teacher-challenges-col--type{vertical-align:middle}.chat-page.school-roster-chat .teacher-challenges-pick-table-wrap .teacher-challenges-col--type{width:4.5rem;min-width:4.25rem;max-width:5rem}.chat-page.school-roster-chat .teacher-challenges-form .teacher-rich-field__label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.school-roster-chat .teacher-challenges-form .teacher-rich-field--compact .teacher-rich-field__label{font-size:.68rem;letter-spacing:.055em}.chat-page.school-roster-chat .teacher-challenges-form .teacher-rich-field__textarea{font-size:.92rem;line-height:1.5;letter-spacing:.012em}.chat-page.school-roster-chat .teacher-challenges-form .teacher-rich-field__textarea::placeholder{color:rgba(70,84,76,.58);font-size:.86rem;font-weight:400;letter-spacing:.012em;line-height:1.45}.chat-page.school-roster-chat .teacher-challenges-form .teacher-rich-field--compact .teacher-rich-field__textarea{font-size:.88rem}.chat-page.school-roster-chat .teacher-challenges-form .teacher-rich-field--compact .teacher-rich-field__textarea::placeholder{font-size:.82rem}.chat-page.school-roster-chat .teacher-composer-radio{display:inline-flex;align-items:center;gap:.25rem;font-size:.88rem;white-space:nowrap}.chat-page.school-roster-chat .teacher-challenges-form .teacher-composer-radio{gap:.4rem;font-size:.78rem;font-weight:600;letter-spacing:.02em;color:rgba(32,43,37,.66)}.chat-page.school-roster-chat .teacher-challenges-form .teacher-composer-radio input{width:1rem;height:1rem;margin:0;accent-color:var(--iso-primary);flex-shrink:0}.chat-page.school-roster-chat .teacher-challenges-actions,.chat-page.school-roster-chat .teacher-composer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:.65rem}.chat-page.school-roster-chat .teacher-composer-stack{margin-top:.75rem}.chat-page.school-roster-chat .teacher-composer-stack-list{margin:0;padding-left:1.25rem}.chat-page.school-roster-chat .teacher-composer-stack-item{margin-bottom:.65rem}.chat-page.school-roster-chat .teacher-composer-stack-head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;justify-content:space-between}.chat-page.school-roster-chat .teacher-composer-stack-move{display:inline-flex;flex-wrap:wrap;gap:.35rem}.chat-page.school-roster-chat .teacher-composer-stack-preview{margin:.25rem 0 0;font-size:.9rem;color:rgba(32,43,37,.78)}.chat-page.school-roster-chat .teacher-challenges-save-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.chat-page.school-roster-chat .teacher-challenges-form .teacher-challenges-suggest-inline-error{margin:.75rem 0 .35rem}.chat-page.school-roster-chat .teacher-challenges-top-nav{margin:.35rem 0 1.15rem}.chat-page.school-roster-chat .teacher-challenges-top-tabbar.school-roster-tabbar{width:100%;max-width:42rem}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .school-roster-tab{display:inline-flex;flex-direction:column;align-items:center;gap:2px;padding:10px 16px;min-width:0;flex:1 1}.chat-page.school-roster-chat .teacher-challenges-top-tab__label{font-weight:700;font-size:.86rem;letter-spacing:.02em}.chat-page.school-roster-chat .teacher-challenges-top-tab__step{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.15rem;padding:0 5px;border-radius:999px;font-size:.65rem;font-weight:800;letter-spacing:.04em;color:rgba(32,43,37,.45);background:rgba(58,97,80,.1)}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .school-roster-tab[aria-selected=true] .teacher-challenges-top-tab__step{color:var(--iso-primary);background:rgba(58,97,80,.18)}@keyframes class-note-subsection-add-tab-glow{0%,to{box-shadow:0 0 0 1px rgba(58,97,80,.22),0 0 10px rgba(58,97,80,.14)}50%{box-shadow:0 0 0 1px rgba(58,97,80,.42),0 0 22px rgba(58,97,80,.26)}}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .school-roster-tab.class-note-subsection-add-tab--emphasis{flex:0 0 auto;max-width:100%;white-space:nowrap;color:var(--iso-primary);background:rgba(58,97,80,.1);animation:class-note-subsection-add-tab-glow 2.4s ease-in-out infinite}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .school-roster-tab.class-note-subsection-add-tab--emphasis:hover{animation:none;background:rgba(255,255,255,.88);box-shadow:0 0 0 2px rgba(58,97,80,.28),0 0 16px rgba(58,97,80,.18)}@media (prefers-reduced-motion:reduce){.chat-page.school-roster-chat .teacher-challenges-top-tabbar .school-roster-tab.class-note-subsection-add-tab--emphasis{animation:none;box-shadow:0 0 0 1px rgba(58,97,80,.32),0 0 14px rgba(58,97,80,.2)}}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-wrap{display:inline-flex;flex-direction:row;align-items:stretch;flex:1 1;min-width:0;position:relative;border-radius:999px;border:none;background:transparent;overflow:visible;transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .18s ease}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-wrap:hover{background:rgba(255,255,255,.82)}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-wrap:has([aria-selected=true]){background:linear-gradient(135deg,#e4f5ea,#d8f0e3);box-shadow:0 3px 12px rgba(58,97,80,.14);transform:translateY(-1px)}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-wrap:has([aria-selected=true]):hover{background:linear-gradient(135deg,#e4f5ea,#d8f0e3)}@media (prefers-reduced-motion:reduce){.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-wrap:has([aria-selected=true]){transform:none}}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-main{flex:1 1 auto;min-width:0;display:inline-flex;align-items:center;justify-content:center;border:none;cursor:pointer;font:inherit;font-weight:700;font-size:.86rem;letter-spacing:.02em;padding:10px 8px 10px 16px;border-radius:999px 0 0 999px;background:transparent;color:var(--iso-muted);transition:color .2s ease,background .2s ease}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-main[aria-selected=true]{color:var(--iso-primary)}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-main:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px;z-index:1}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-trigger{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;margin:0;padding:0 6px;border:none;border-radius:0 999px 999px 0;cursor:pointer;font:inherit;font-size:1rem;font-weight:700;line-height:1;letter-spacing:.06em;color:var(--iso-muted);background:transparent;opacity:.55;transition:opacity .15s ease,color .2s ease,background .2s ease}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-trigger:focus-visible,.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-wrap:hover .class-note-subsection-tab-menu-trigger,.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-wrap[data-open=true] .class-note-subsection-tab-menu-trigger{opacity:1}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-trigger:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px;z-index:1}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu{position:absolute;top:calc(100% + 6px);left:0;right:auto;min-width:11.5rem;margin:0;padding:6px 0;list-style:none;z-index:13000;border-radius:12px;border:1px solid rgba(58,97,80,.18);background:rgba(255,255,255,.98);box-shadow:0 10px 28px rgba(22,38,30,.12),0 2px 8px rgba(22,38,30,.06)}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-item{display:block;width:100%;margin:0;padding:9px 14px;border:none;text-align:left;font:inherit;font-size:.88rem;font-weight:500;letter-spacing:.012em;color:var(--iso-text);background:transparent;cursor:pointer;transition:background .15s ease}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-item:focus-visible:not(:disabled),.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-item:hover:not(:disabled){background:rgba(58,97,80,.08)}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-item:disabled{opacity:.45;cursor:not-allowed}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-item:focus-visible{outline:none}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-item--danger{color:#9f1239}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-item--danger:focus-visible:not(:disabled),.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-item--danger:hover:not(:disabled){background:rgba(159,18,57,.08)}.chat-page.school-roster-chat .teacher-challenges-top-tabbar .class-note-subsection-tab-menu-sep{height:1px;margin:6px 10px;padding:0;list-style:none;background:var(--iso-border,rgba(58,97,80,.2));pointer-events:none}.chat-page.school-roster-chat .teacher-challenges-subnav{display:flex;flex-wrap:wrap;gap:0;margin:.35rem 0 1rem;padding:0;border-bottom:1px solid rgba(58,97,80,.18)}.chat-page.school-roster-chat .teacher-challenges-subnav__tab{position:relative;background:transparent;cursor:pointer;font:inherit;font-weight:650;font-size:.88rem;padding:.55rem 1rem .65rem;margin-bottom:-1px;color:rgba(32,43,37,.55);border:none;border-bottom:2px solid transparent;border-radius:0;transition:color .18s ease,border-color .18s ease}.chat-page.school-roster-chat .teacher-challenges-subnav__tab:hover{color:rgba(32,43,37,.88)}.chat-page.school-roster-chat .teacher-challenges-subnav__tab:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.school-roster-chat .teacher-challenges-subnav__tab.is-active{color:var(--iso-primary);font-weight:750;border-bottom-color:var(--iso-primary)}.chat-page.school-roster-chat .teacher-challenges-btn--primary{box-shadow:0 2px 10px rgba(58,97,80,.2)}.chat-page.school-roster-chat .teacher-challenges-btn--secondary{background:rgba(255,255,255,.92);border:1px solid rgba(58,97,80,.35);color:rgba(22,38,30,.92);font-weight:650}.chat-page.school-roster-chat .teacher-challenges-btn--secondary:hover{background:rgba(58,97,80,.08);border-color:rgba(58,97,80,.45)}.chat-page.school-roster-chat .teacher-challenges-btn--quiet{background:transparent;border:1px solid transparent;color:rgba(32,43,37,.72);font-weight:600;text-decoration:underline;text-underline-offset:3px;box-shadow:none}.chat-page.school-roster-chat .teacher-challenges-btn--quiet:hover{color:var(--iso-primary);background:rgba(58,97,80,.06)}.chat-page.school-roster-chat .teacher-challenges-btn--danger{background:rgba(254,242,242,.95);border:1px solid rgba(180,35,24,.35);color:rgba(120,25,20,.95);font-weight:650}.chat-page.school-roster-chat .teacher-challenges-btn--danger:hover{background:rgba(254,226,226,.98);border-color:rgba(180,35,24,.5)}.chat-page.school-roster-chat a.teacher-challenges-btn--secondary{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:10px;padding:10px 16px;font-size:inherit}.chat-page.school-roster-chat .teacher-challenges-btn--danger:focus-visible,.chat-page.school-roster-chat .teacher-challenges-btn--primary:focus-visible,.chat-page.school-roster-chat .teacher-challenges-btn--quiet:focus-visible,.chat-page.school-roster-chat .teacher-challenges-btn--secondary:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.school-roster-chat .teacher-challenges-inline{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.chat-page.school-roster-chat .teacher-challenges-inline .input{flex:1 1;min-width:160px}.chat-page.school-roster-chat .teacher-challenges-thumb,.chat-page.school-roster-chat .teacher-challenges-thumb-preview img{border-radius:8px;object-fit:cover;border:1px solid rgba(32,43,37,.12)}.chat-page.school-roster-chat .teacher-challenges-pick-list{list-style:none;padding:0;margin:0 0 1rem;max-height:320px;overflow:auto;border:1px solid rgba(32,43,37,.12);border-radius:10px;background:rgba(255,255,255,.45)}.chat-page.school-roster-chat .teacher-challenges-pick-list li{padding:.45rem .65rem;border-bottom:1px solid rgba(32,43,37,.08)}.chat-page.school-roster-chat .teacher-challenges-pick-list li:last-child{border-bottom:none}.chat-page.school-roster-chat .teacher-challenges-preview{margin-top:.75rem;padding:.75rem 1rem;border-radius:10px;border:1px solid rgba(32,43,37,.12);background:rgba(255,255,255,.5)}.chat-page.school-roster-chat .teacher-challenges-preview-pack-meta{margin:.35rem 0 0}.chat-page.school-roster-chat .teacher-challenges-topic-pill{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:650;letter-spacing:.02em;color:rgba(32,43,37,.78);background:rgba(58,97,80,.1);border:1px solid rgba(58,97,80,.18)}.chat-page.school-roster-chat .teacher-challenges-progress{margin:.25rem 0 1.15rem}.chat-page.school-roster-chat .teacher-challenges-progress__list{display:flex;list-style:none;margin:0 0 .5rem;padding:0;gap:.35rem;justify-content:space-between}.chat-page.school-roster-chat .teacher-challenges-progress__step{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:.3rem;text-align:center;min-width:0}.chat-page.school-roster-chat .teacher-challenges-progress__step-num{display:flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:999px;font-size:.8rem;font-weight:800;border:2px solid rgba(58,97,80,.28);background:rgba(255,255,255,.95);color:rgba(32,43,37,.5)}.chat-page.school-roster-chat .teacher-challenges-progress__step--done .teacher-challenges-progress__step-num{background:var(--iso-primary);border-color:var(--iso-primary);color:#fff}.chat-page.school-roster-chat .teacher-challenges-progress__step--current .teacher-challenges-progress__step-num{border-color:var(--iso-primary);background:rgba(58,97,80,.14);color:var(--iso-primary);box-shadow:0 0 0 2px rgba(58,97,80,.12)}.chat-page.school-roster-chat .teacher-challenges-progress__step-label{font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:rgba(32,43,37,.42);line-height:1.2}.chat-page.school-roster-chat .teacher-challenges-progress__step--current .teacher-challenges-progress__step-label{color:var(--iso-primary)}.chat-page.school-roster-chat .teacher-challenges-progress__step--done .teacher-challenges-progress__step-label{color:rgba(32,43,37,.58)}.chat-page.school-roster-chat .teacher-challenges-progress__track{height:7px;border-radius:999px;background:rgba(58,97,80,.14);overflow:hidden}.chat-page.school-roster-chat .teacher-challenges-progress__fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--iso-primary),rgba(58,97,80,.82));transition:width .28s ease}.chat-page.school-roster-chat .teacher-challenges-preview-table-wrap{margin-top:.5rem}.chat-page.school-roster-chat .teacher-challenges-preview-table{table-layout:fixed;width:100%;border-collapse:separate;border-spacing:0}.chat-page.school-roster-chat .teacher-challenges-preview-table td,.chat-page.school-roster-chat .teacher-challenges-preview-table th{border:1px solid rgba(58,97,80,.22);border-left-width:0}.chat-page.school-roster-chat .teacher-challenges-preview-table td:first-child,.chat-page.school-roster-chat .teacher-challenges-preview-table th:first-child{border-left-width:1px}.chat-page.school-roster-chat .teacher-challenges-preview-table thead th{border-bottom-width:2px;border-bottom-color:rgba(58,97,80,.2)}.chat-page.school-roster-chat .teacher-challenges-preview-table tbody tr.teacher-challenges-preview-row td{cursor:-webkit-grab;cursor:grab}.chat-page.school-roster-chat .teacher-challenges-preview-table tbody tr.teacher-challenges-preview-row:nth-child(2n) td{background:rgba(58,97,80,.045)}.chat-page.school-roster-chat .teacher-challenges-preview-table tbody tr.teacher-challenges-preview-row--dragging td{cursor:-webkit-grabbing;cursor:grabbing}.chat-page.school-roster-chat .teacher-challenges-preview-col--q a,.chat-page.school-roster-chat .teacher-challenges-preview-col--q img{-webkit-user-drag:none}.chat-page.school-roster-chat .teacher-challenges-preview-table[aria-busy=true]{pointer-events:none;opacity:.92}.chat-page.school-roster-chat .teacher-challenges-preview-col--drag{width:2.6rem;vertical-align:top;padding-top:.55rem;text-align:center}.chat-page.school-roster-chat .teacher-challenges-preview-col--n{width:2.25rem;vertical-align:top;padding-top:.6rem;text-align:right;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chat-page.school-roster-chat .teacher-challenges-preview-col--q{vertical-align:top;min-width:0;max-width:100%;width:46%}.chat-page.school-roster-chat .teacher-challenges-preview-col--q .chat-message-md{max-height:12rem;overflow:auto;padding-right:2px;font-size:.88rem;line-height:1.45}.chat-page.school-roster-chat .teacher-challenges-preview-col--q .chat-message-md img{max-width:min(100%,7.5rem);max-height:4.5rem;width:auto;height:auto;object-fit:contain;display:block;margin-top:.35rem;border-radius:6px}.chat-page.school-roster-chat .teacher-challenges-preview-row-instruction{margin:.45rem 0 0;font-size:.82rem;line-height:1.4}.chat-page.school-roster-chat .teacher-challenges-preview-col--marks{width:2.75rem;min-width:2.5rem;text-align:center;vertical-align:middle;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;color:rgba(22,38,30,.88)}.chat-page.school-roster-chat .teacher-challenges-preview-col--media{width:5.5rem;min-width:4.75rem;max-width:6rem;text-align:center;vertical-align:middle}.chat-page.school-roster-chat .teacher-challenges-preview-media-cell{display:flex;align-items:center;justify-content:center;min-height:2.75rem}.chat-page.school-roster-chat .teacher-challenges-preview-media-cell .teacher-file-thumb-blob{margin:0 auto}.chat-page.school-roster-chat .teacher-challenges-preview-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;padding:0;border:1px solid rgba(58,97,80,.2);border-radius:8px;background:rgba(255,255,255,.85);color:rgba(32,43,37,.72);cursor:inherit;pointer-events:none;-moz-user-select:none;user-select:none;-webkit-user-select:none}.chat-page.school-roster-chat .teacher-challenges-preview-drag-handle:hover{background:rgba(58,97,80,.12);border-color:rgba(58,97,80,.32);color:rgba(22,38,30,.92)}.chat-page.school-roster-chat .teacher-challenges-preview-drag-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.chat-page.school-roster-chat .teacher-challenges-preview-row--dragging{opacity:.5}.chat-page.school-roster-chat .teacher-challenges-preview-saving{margin:.25rem 0 0;font-size:.85rem}.chat-page.school-roster-chat .teacher-challenges-preview-footer{display:flex;flex-direction:column;align-items:stretch;margin-top:1rem}.chat-page.school-roster-chat .teacher-challenges-preview-footer .teacher-challenges-save-row--preview-footer{margin-top:0;padding-top:0;gap:.75rem;align-items:stretch}.chat-page.school-roster-chat .teacher-challenges-save-row--preview-footer .btn{padding:.65rem 1.35rem;min-height:2.75rem;display:inline-flex;align-items:center;justify-content:center}.chat-page.school-roster-chat .teacher-challenges-preview-drag-hint-below{margin:.7rem 0 0;align-self:flex-start;text-align:left;max-width:34rem;font-size:.86rem;line-height:1.45;font-style:italic;color:rgba(32,43,37,.62)}.chat-page.school-roster-chat .teacher-challenges-modal-backdrop{position:fixed;inset:0;z-index:10040;background:rgba(15,22,18,.45);display:flex;align-items:flex-start;justify-content:center;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:max(.75rem,env(safe-area-inset-top,0px)) 1rem max(1rem,env(safe-area-inset-bottom,0px))}.chat-page.school-roster-chat .teacher-challenges-modal{max-width:520px;width:100%;max-height:80vh;overflow:auto;background:var(--iso-panel);border-radius:12px;padding:1.25rem;border:1px solid rgba(32,43,37,.14);box-shadow:0 12px 40px rgba(0,0,0,.18)}.chat-page.school-roster-chat .question-paper-bank-notes-backdrop.teacher-challenges-modal-backdrop{z-index:10042}.chat-page.school-roster-chat .question-paper-bank-notes-dialog.teacher-challenges-modal{max-width:28rem}.chat-page.school-roster-chat .teacher-challenges-modal--pack-preview{max-width:min(56rem,calc(100vw - 2rem));max-height:min(92vh,calc(100dvh - 2rem));overflow:hidden;display:flex;flex-direction:column;min-height:0}.class-note-prepare-modal-backdrop{position:fixed;inset:0;z-index:320;background:rgba(15,22,18,.58);display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) 1rem 1rem;isolation:isolate}.class-note-prepare-modal{max-width:min(45rem,calc(100vw - 2rem));width:100%;max-height:min(90vh,900px);overflow:auto;background:var(--iso-panel);border-radius:14px;padding:1.25rem 1.35rem 1.4rem;border:1px solid rgba(32,43,37,.16);box-shadow:0 16px 48px rgba(0,0,0,.28)}.class-note-prepare-modal__title{margin:0 0 .4rem;font-size:1.08rem;font-weight:800;letter-spacing:-.02em;color:var(--iso-primary);line-height:1.25}.class-note-prepare-modal .teacher-composer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:.65rem}.class-note-prepare-modal-preview{border:1px solid rgba(32,43,37,.12);border-radius:10px;padding:.85rem 1rem;margin-bottom:1rem;background:#fff}.class-note-llm-wait-overlay-backdrop{position:fixed;inset:0;z-index:340;background:rgba(15,22,18,.55);display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) 1rem 1rem;isolation:isolate}.class-note-llm-wait-overlay{width:min(26rem,calc(100vw - 2rem));background:var(--iso-panel,#f8faf8);border-radius:12px;padding:1rem 1.15rem 1.1rem;border:1px solid rgba(32,43,37,.14);box-shadow:0 14px 40px rgba(0,0,0,.22)}.class-note-llm-wait-overlay__caption{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-muted,#5c6b62);margin-bottom:.35rem}.class-note-llm-wait-overlay__title{margin:0;font-size:1.05rem;font-weight:800;letter-spacing:-.02em;color:var(--iso-primary,#1a2e24);line-height:1.25}.class-note-llm-wait-overlay__subtitle{margin:.45rem 0 0;font-size:.86rem;color:var(--iso-muted,#5c6b62);line-height:1.45}.class-note-llm-wait-overlay__bar{margin-top:.85rem;height:7px;border-radius:6px;background:rgba(32,43,37,.1);overflow:hidden}.class-note-llm-wait-overlay__bar-fill{height:100%;width:42%;border-radius:6px;background:linear-gradient(90deg,rgba(46,125,50,.35),rgba(46,125,50,.85),rgba(46,125,50,.35));animation:class-note-llm-wait-marquee 1.15s ease-in-out infinite alternate}@keyframes class-note-llm-wait-marquee{0%{transform:translateX(-35%)}to{transform:translateX(195%)}}.subject-teacher-followups--class-note-inline{max-width:100%}.subject-teacher-followups--class-note-inline .subject-teacher-followups-head{margin-bottom:.35rem}.class-note-body-rich{min-width:0;max-width:100%}.class-note-body-rich .class-note-block--image{margin:.65rem 0;max-width:100%}.class-note-body-rich .class-note-block--image img{display:block;max-width:100%;width:auto;height:auto;object-fit:contain;border-radius:8px;border:1px solid var(--iso-border,rgba(32,43,37,.12))}.class-note-image-grid{display:grid;grid-gap:.5rem;gap:.5rem;margin:.65rem 0;width:100%;max-width:100%;min-width:0;align-items:start}.class-note-image-grid__cell{margin:0;min-width:0;display:flex;flex-direction:column;gap:.35rem}.class-note-image-grid__cell .class-note-zoomable-hit,.class-note-image-grid__cell img{display:block;max-width:100%;width:auto;height:auto;max-height:min(48vh,280px);object-fit:contain;border-radius:8px;border:1px solid var(--iso-border,rgba(32,43,37,.12))}.class-note-image-grid--1x1{grid-template-columns:minmax(0,1fr)}.class-note-image-grid--1x2{grid-template-columns:repeat(2,minmax(0,1fr))}.class-note-image-grid--2x1{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,auto)}.class-note-image-grid--1x3{grid-template-columns:repeat(3,minmax(0,1fr))}.class-note-image-grid--3x1{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(3,auto)}.class-note-image-grid--2x2{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,auto)}.class-note-image-grid--1x4{grid-template-columns:repeat(4,minmax(0,1fr))}.class-note-image-grid--4x1{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(4,auto)}.class-note-image-grid--2x3{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,auto)}.class-note-image-grid--3x2{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,auto)}.class-note-image-grid--1x5{grid-template-columns:repeat(5,minmax(0,1fr))}.class-note-image-grid--1x6{grid-template-columns:repeat(6,minmax(0,1fr))}.class-note-image-grid--3x3{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,auto)}.class-note-image-grid--1x9{grid-template-columns:repeat(9,minmax(0,1fr))}.class-note-image-grid--4x3{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(4,auto)}.class-note-image-grid--3x4{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(3,auto)}.class-note-image-grid--2x5{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,auto)}.class-note-zoomable-hit{display:block;padding:0;margin:0;width:100%;max-width:100%;border:none;background:transparent;cursor:zoom-in;text-align:left;font:inherit;color:inherit}.class-note-zoomable-hit:focus-visible{outline:2px solid var(--iso-primary,#3a6150);outline-offset:2px;border-radius:8px}.class-note-image-lightbox-backdrop{inset:0;z-index:10050;padding:2.5rem 1rem 1rem;background:rgba(15,22,18,.82);cursor:zoom-out}.class-note-image-lightbox-backdrop,.class-note-image-lightbox-close{position:fixed;display:flex;align-items:center;justify-content:center}.class-note-image-lightbox-close{top:1rem;right:1rem;z-index:10051;width:2.75rem;height:2.75rem;margin:0;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:8px;background:rgba(30,43,36,.95);color:#f4f7f5;font-size:1.75rem;line-height:1;cursor:pointer;font-weight:300}.class-note-image-lightbox-close:hover{background:rgba(45,62,52,.98)}.class-note-image-lightbox-close:focus-visible{outline:2px solid var(--iso-primary,#3a6150);outline-offset:2px}.class-note-image-lightbox-frame{max-width:min(96vw,1200px);max-height:90vh;cursor:default}.class-note-image-lightbox-img{display:block;max-width:100%;max-height:90vh;width:auto;height:auto;object-fit:contain;margin:0 auto;border-radius:8px;box-shadow:0 8px 40px rgba(0,0,0,.45)}.chat-page.school-roster-chat .teacher-challenges-pack-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;padding-bottom:.85rem;border-bottom:1px solid rgba(58,97,80,.14)}.chat-page.school-roster-chat .teacher-challenges-pack-preview-title{margin:0;font-size:1.15rem;font-weight:700;color:var(--iso-text);line-height:1.3;flex:1 1 12rem;min-width:0}.chat-page.school-roster-chat .teacher-challenges-pack-preview-grid{display:grid;grid-template-columns:1fr;grid-gap:1.25rem;gap:1.25rem;align-items:start}@media (min-width:720px){.chat-page.school-roster-chat .teacher-challenges-pack-preview-grid{grid-template-columns:minmax(14rem,1fr) minmax(0,2fr)}}.chat-page.school-roster-chat .teacher-challenges-pack-preview-meta{min-width:0}.chat-page.school-roster-chat .teacher-challenges-import-preview-meta--in-modal{margin:0}.chat-page.school-roster-chat .teacher-challenges-pack-preview-cards{display:flex;flex-wrap:wrap;gap:.75rem;align-content:flex-start;margin:0;padding:0;list-style:none}.chat-page.school-roster-chat .teacher-challenges-pack-preview-card{flex:0 1 10.75rem;min-width:9rem;max-width:14rem}.chat-page.school-roster-chat .teacher-challenges-pack-preview-card__hit{display:block;width:100%;margin:0;padding:0;border:none;background:transparent;cursor:pointer;border-radius:8px;text-align:left}.chat-page.school-roster-chat .teacher-challenges-pack-preview-card__hit:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.school-roster-chat .teacher-challenges-pack-preview-card__viz{min-height:7.5rem;display:flex;align-items:center;justify-content:center}.chat-page.school-roster-chat .teacher-challenges-pack-preview-card__img{width:100%;max-height:140px;object-fit:contain}.chat-page.school-roster-chat .teacher-challenges-pack-preview-card__caption{font-size:.78rem;line-height:1.35;display:block}.chat-page.school-roster-chat .teacher-challenges-q-preview{max-width:min(42rem,56vw);max-height:16rem;overflow-x:auto;overflow-y:auto;padding-right:2px;word-break:break-word;color:rgba(32,43,37,.92)}.chat-page.school-roster-chat .teacher-challenges-q-preview .chat-message-md{font-size:.88rem;line-height:1.45}.chat-page.school-roster-chat .teacher-challenges-pack-q-list{margin:.75rem 0 0;padding-left:0;list-style:none}.chat-page.school-roster-chat .teacher-challenges-pack-q-list>li{margin-bottom:1rem}.chat-page.school-roster-chat .teacher-challenges-pack-q-list>li:last-child{margin-bottom:0}.chat-page.school-roster-chat .teacher-challenges-pack-q-type{display:flex;align-items:center;margin-bottom:.35rem}.chat-page.school-roster-chat .teacher-challenges-pack-q-stem-visual{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;min-width:0}.chat-page.school-roster-chat .teacher-challenges-pack-q-caption{font-size:.86rem;line-height:1.45}.chat-page.school-roster-chat .teacher-challenges-import-asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:.75rem;gap:.75rem;margin:.65rem 0 0;padding:0;list-style:none}.chat-page.school-roster-chat .teacher-challenges-import-asset-grid--preview{margin-top:.5rem}.chat-page.school-roster-chat .teacher-challenges-import-asset-tile{display:flex;flex-direction:column;gap:.35rem;padding:.5rem;border-radius:12px;border:1px solid rgba(58,97,80,.14);background:rgba(255,255,255,.65);min-width:0}.chat-page.school-roster-chat .teacher-challenges-import-asset-img{display:block;width:100%;max-height:140px;object-fit:contain;border-radius:8px;background:rgba(58,97,80,.04)}.chat-page.school-roster-chat .teacher-challenges-import-asset-pdf{display:flex;align-items:center;justify-content:center;min-height:100px;border-radius:8px;background:rgba(254,242,242,.5)}.chat-page.school-roster-chat .teacher-challenges-import-asset-name{font-size:.78rem;line-height:1.35;word-break:break-word}.chat-page.school-roster-chat .teacher-challenges-import-asset-remove{align-self:flex-start;padding-left:0;padding-right:0}.chat-page.school-roster-chat .teacher-challenges-import-upload-block{margin-top:.85rem}.chat-page.school-roster-chat .teacher-challenges-import-preview-block{margin-top:.75rem}.chat-page.school-roster-chat .teacher-challenges-import-preview-meta{display:grid;grid-template-columns:auto minmax(0,1fr);grid-column-gap:1rem;column-gap:1rem;grid-row-gap:.45rem;row-gap:.45rem;margin:0 0 .85rem;padding:0}.chat-page.school-roster-chat .teacher-challenges-import-preview-meta dt{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary);align-self:baseline}.chat-page.school-roster-chat .teacher-challenges-import-preview-meta dd{margin:0;font-size:.9rem;line-height:1.45;letter-spacing:.012em;color:rgba(22,38,30,.96);min-width:0}.chat-page.school-roster-chat .teacher-challenges-import-preview-meta-dd--mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.88rem;word-break:break-word}@media (max-width:520px){.chat-page.school-roster-chat .teacher-challenges-import-preview-meta{grid-template-columns:1fr;row-gap:.2rem}.chat-page.school-roster-chat .teacher-challenges-import-preview-meta dt+dd{margin-bottom:.35rem}}.chat-page.school-roster-chat .teacher-challenges-col--type{width:3.25rem;min-width:3.25rem;max-width:4rem;text-align:center;vertical-align:middle;white-space:nowrap}.chat-page.school-roster-chat .teacher-q-type-badge{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;margin:0 auto;border-radius:9px;border:1px solid rgba(58,97,80,.22);background:rgba(255,255,255,.92);color:var(--iso-primary);box-shadow:0 1px 3px rgba(35,65,50,.07)}.chat-page.school-roster-chat .teacher-q-type-badge--compact{width:2rem;height:2rem;border-radius:8px}.chat-page.school-roster-chat .teacher-q-type-badge--compact svg{transform:scale(.92);transform-origin:center}.chat-page.school-roster-chat .teacher-challenges-q-cell{vertical-align:top}.chat-page.school-roster-chat .school-data-table.partner-notes-table>tbody>tr>td:not(.teacher-challenges-q-cell),.chat-page.school-roster-chat .teacher-challenges-panel .school-roster-table-wrap:not(.teacher-challenges-pick-table-wrap):not(.teacher-challenges-preview-table-wrap) .school-data-table>tbody>tr>td:not(.teacher-challenges-q-cell){vertical-align:middle}.chat-page.school-roster-chat .teacher-challenges-q-slug{display:inline-block;margin-top:6px;padding:4px 11px;border-radius:999px;font-size:.78rem;font-weight:650;letter-spacing:.01em;color:rgba(32,43,37,.78);background:rgba(58,97,80,.1);border:1px solid rgba(58,97,80,.22)}.chat-page.school-roster-chat .teacher-challenges-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;padding:0;border-radius:10px;border:1px solid rgba(58,97,80,.28);background:rgba(255,255,255,.75);color:rgba(32,43,37,.88);cursor:pointer;line-height:1}.chat-page.school-roster-chat .teacher-challenges-icon-btn:hover{background:rgba(58,97,80,.14);border-color:rgba(58,97,80,.38);color:rgba(22,38,30,.95)}.chat-page.school-roster-chat .teacher-challenges-icon-btn:focus-visible{outline:2px solid rgba(58,97,80,.45);outline-offset:2px}.chat-page.school-roster-chat .subscriber-catalog-action-cell{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem}.chat-page.school-roster-chat .subscriber-catalog-publish-btn{min-height:2.35rem;padding:.32rem .7rem;font-size:.78rem;font-weight:650;line-height:1.2;border-radius:10px}.chat-page.school-roster-chat .teacher-challenges-icon-btn.teacher-challenges-icon-btn--vote{width:auto;min-width:2.35rem;padding:0 .42rem;gap:.22rem}.chat-page.school-roster-chat .teacher-challenges-icon-btn--vote .teacher-challenges-icon-btn__emoji{font-size:.95rem;line-height:1}.chat-page.school-roster-chat .teacher-challenges-icon-btn--vote .teacher-challenges-icon-btn__num{font-size:.78rem;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:rgba(22,38,30,.88)}.chat-page.school-roster-chat .teacher-challenges-pack-actions__row{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.3rem}.chat-page.school-roster-chat .teacher-challenges-icon-btn svg{display:block;flex-shrink:0}.chat-page.school-roster-chat .teacher-file-thumb-blob{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:0;margin:0;border:1px solid rgba(58,97,80,.22);border-radius:10px;background:rgba(255,255,255,.65);cursor:pointer;font:inherit;font-size:.72rem;font-weight:750;letter-spacing:.04em;color:rgba(120,35,28,.95);vertical-align:middle}.chat-page.school-roster-chat .teacher-file-thumb-blob:hover{background:rgba(58,97,80,.1)}.chat-page.school-roster-chat .teacher-file-thumb-blob--img{padding:2px;overflow:hidden}.chat-page.school-roster-chat .teacher-file-thumb-blob--img img{display:block;width:48px;height:48px;object-fit:cover;border-radius:8px}.chat-page.school-roster-chat .teacher-challenges-stem-preview{margin-top:.5rem}.chat-page.school-roster-chat .teacher-stem-preview-hit{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px;padding:0;margin:0;border:none;background:transparent;cursor:pointer;text-align:left;font:inherit;max-width:100%}.chat-page.school-roster-chat .teacher-stem-preview-hit--img img{display:block;max-width:min(100%,320px);height:auto;max-height:200px;object-fit:contain;border-radius:10px;border:1px solid rgba(58,97,80,.18)}.chat-page.school-roster-chat .teacher-stem-files__lead{margin-bottom:.55rem}.chat-page.school-roster-chat .teacher-stem-dropzone-panel{position:relative;border-radius:12px;border:2px dashed rgba(58,97,80,.34);background:rgba(255,255,255,.92);min-height:152px;display:flex;align-items:center;justify-content:center;padding:1.15rem 1rem;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.chat-page.school-roster-chat .teacher-stem-dropzone-panel:hover:not(.teacher-stem-dropzone-panel--disabled){border-color:rgba(58,97,80,.52);background:rgba(58,97,80,.04);box-shadow:inset 0 0 0 1px rgba(58,97,80,.06)}.chat-page.school-roster-chat .teacher-stem-dropzone-panel--active{border-color:rgba(58,97,80,.72);background:rgba(58,97,80,.09);box-shadow:inset 0 0 0 1px rgba(58,97,80,.1)}.chat-page.school-roster-chat .teacher-stem-dropzone-panel--disabled{cursor:not-allowed;opacity:.78}.chat-page.school-roster-chat .teacher-stem-dropzone-panel__inner{text-align:center;max-width:24rem;pointer-events:auto}.chat-page.school-roster-chat .teacher-stem-dropzone-panel__icon{display:flex;justify-content:center;margin-bottom:.45rem;color:rgba(58,97,80,.88)}.chat-page.school-roster-chat .teacher-stem-dropzone-panel__title{margin:0 0 .35rem;font-size:1.02rem;font-weight:650;color:rgba(22,38,30,.94);letter-spacing:-.01em}.chat-page.school-roster-chat .teacher-stem-dropzone-panel__hint--actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.15rem .35rem}.chat-page.school-roster-chat .teacher-stem-dropzone-panel__hint-sep{-webkit-user-select:none;-moz-user-select:none;user-select:none}.chat-page.school-roster-chat .teacher-stem-dropzone-panel__browse{margin:0;padding:0;border:none;background:none;font:inherit;font-size:inherit;font-weight:700;color:var(--iso-primary,#2d5a45);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.chat-page.school-roster-chat .teacher-stem-dropzone-panel__browse:hover{color:rgba(22,38,30,.96)}.chat-page.school-roster-chat .teacher-stem-dropzone-panel__browse:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px;border-radius:4px}.chat-page.school-roster-chat .teacher-stem-dropzone-panel__overlay{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;pointer-events:none;border-radius:10px;background:rgba(255,255,255,.78);color:rgba(22,38,30,.94);font-size:.95rem;font-weight:700}.chat-page.school-roster-chat .teacher-stem-files__toolbar{margin-top:.65rem;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.chat-page.school-roster-chat .teacher-stem-chip__viz{display:flex;align-items:center;justify-content:center;width:100%}.chat-page.school-roster-chat .teacher-stem-chip__viz--img img{display:block;width:84px;height:84px;object-fit:cover;border-radius:8px;border:1px solid rgba(58,97,80,.15)}.chat-page.school-roster-chat .teacher-stem-chip__viz--inline img{width:56px;height:56px}.chat-page.school-roster-chat .teacher-stem-chip-row{display:flex;flex-wrap:wrap;gap:.65rem;align-items:flex-start;margin-top:.75rem}.chat-page.school-roster-chat .teacher-stem-chip-wrap{display:inline-flex;flex-direction:row;align-items:flex-start;gap:.25rem}.chat-page.school-roster-chat .teacher-stem-chip-wrap--dragging{opacity:.65}.chat-page.school-roster-chat .teacher-stem-chip-drag{flex-shrink:0;width:26px;min-height:44px;margin-top:4px;display:flex;align-items:center;justify-content:center;cursor:-webkit-grab;cursor:grab;border-radius:8px;color:rgba(58,97,80,.52);-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.chat-page.school-roster-chat .teacher-stem-chip-drag:hover{color:rgba(58,97,80,.78);background:rgba(58,97,80,.06)}.chat-page.school-roster-chat .teacher-stem-chip-drag:active{cursor:-webkit-grabbing;cursor:grabbing}.chat-page.school-roster-chat .teacher-stem-chip-row-hint{font-size:.8rem;margin-top:.35rem}.chat-page.school-roster-chat .teacher-stem-chip{display:inline-flex;flex-direction:column;align-items:center;gap:.3rem;width:96px;position:relative;padding:6px 6px 4px;border-radius:10px;border:1px solid rgba(58,97,80,.16);background:rgba(255,255,255,.72);box-sizing:border-box}.chat-page.school-roster-chat .teacher-stem-chip--link{flex-direction:row;flex-wrap:wrap;align-items:flex-start;width:auto;min-width:min(100%,300px);max-width:100%;flex:1 1 280px}.chat-page.school-roster-chat .teacher-stem-chip__link-field{flex:1 1;min-width:160px}.chat-page.school-roster-chat .teacher-stem-chip__link-field .input{width:100%}.chat-page.school-roster-chat .teacher-stem-chip__preview--inline{flex-shrink:0}.chat-page.school-roster-chat .teacher-stem-chip__preview{width:100%;display:flex;justify-content:center}.chat-page.school-roster-chat .teacher-stem-chip__hit{display:flex;align-items:center;justify-content:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;border-radius:8px;max-width:100%}.chat-page.school-roster-chat .teacher-stem-chip__hit--img img{display:block;width:84px;height:84px;object-fit:cover;border-radius:8px;border:1px solid rgba(58,97,80,.15)}.chat-page.school-roster-chat .teacher-stem-chip__hit--pdf{min-height:84px}.chat-page.school-roster-chat .teacher-stem-pdf-doc-tile{display:flex;flex-direction:column;align-items:center;gap:2px}.chat-page.school-roster-chat .teacher-stem-pdf-doc-label{font-size:.65rem;font-weight:750;letter-spacing:.06em;color:rgba(120,35,28,.92)}.chat-page.school-roster-chat .teacher-stem-chip__name{font-size:.68rem;line-height:1.25;color:rgba(32,43,37,.72);text-align:center;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-page.school-roster-chat .teacher-stem-chip__missing{font-size:.72rem;padding:.5rem .25rem;text-align:center}.chat-page.school-roster-chat .teacher-stem-chip__remove{position:absolute;top:2px;right:2px;width:22px;height:22px;padding:0;line-height:1;border:none;border-radius:999px;background:rgba(32,43,37,.08);color:rgba(32,43,37,.75);font-size:1rem;cursor:pointer}.chat-page.school-roster-chat .teacher-stem-chip--link .teacher-stem-chip__remove{position:static;align-self:flex-start;margin-top:2px}.chat-page.school-roster-chat .teacher-composer-answer-after-stem{margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid rgba(58,97,80,.2)}.chat-page.school-roster-chat .teacher-composer-delete-btn{border-color:rgba(180,35,24,.42);color:rgba(120,35,28,.96)}.chat-page.school-roster-chat .teacher-composer-delete-btn:hover:not(:disabled){background:rgba(254,242,242,.65);border-color:rgba(180,35,24,.55)}.chat-page.school-roster-chat .teacher-file-pdf-badge{display:inline-block;padding:6px 12px;border-radius:8px;font-size:.78rem;font-weight:750;letter-spacing:.06em;color:rgba(120,35,28,.95);background:rgba(254,242,242,.9);border:1px solid rgba(180,35,24,.2)}.chat-page.school-roster-chat .teacher-challenges-modal-backdrop--file-preview,.teacher-challenges-modal-backdrop.teacher-challenges-modal-backdrop--file-preview{position:fixed;inset:0;z-index:10045;background:rgba(15,22,18,.45);display:flex;align-items:flex-start;justify-content:center;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:max(.75rem,env(safe-area-inset-top,0px)) 1rem max(1rem,env(safe-area-inset-bottom,0px))}.chat-page.school-roster-chat .teacher-challenges-stem-preview-link{display:inline-block;padding:0;margin:0;border:none;background:none;box-shadow:none;font:inherit;font-size:.88rem;font-weight:600;color:rgba(32,86,118,.96);text-decoration:underline;text-underline-offset:2px;cursor:pointer;line-height:1.35;white-space:nowrap;text-align:inherit}.chat-page.school-roster-chat .teacher-challenges-stem-preview-link:hover:not(:disabled){color:rgba(18,68,105,1)}.chat-page.school-roster-chat .teacher-challenges-stem-preview-link:focus-visible{outline:2px solid rgba(58,97,80,.45);outline-offset:2px;border-radius:2px}.chat-page.school-roster-chat .teacher-challenges-stem-preview-link:disabled{opacity:.45;cursor:not-allowed;text-decoration:none}.chat-page.school-roster-chat .teacher-stem-chip__preview-link{font-size:.72rem;margin-top:.1rem;align-self:center}.chat-page.school-roster-chat .teacher-stem-chip__preview-link--row{flex:0 0 100%;margin-top:.35rem;text-align:left}.chat-page.school-roster-chat .teacher-challenges-file-preview-modal,.teacher-challenges-modal-backdrop.teacher-challenges-modal-backdrop--file-preview .teacher-challenges-file-preview-modal{width:min(96vw,900px);max-height:min(92vh,calc(100dvh - 2.5rem));min-height:0;display:flex;flex-direction:column;overflow:hidden;gap:0;background:var(--iso-panel);border-radius:12px;padding:0;border:1px solid rgba(32,43,37,.14);box-shadow:0 12px 40px rgba(0,0,0,.22);margin:.5rem auto}.chat-page.school-roster-chat .teacher-challenges-file-preview-scroll,.teacher-challenges-file-preview-scroll{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;display:flex;flex-direction:column;align-items:center;width:100%;padding:.75rem 1rem .5rem;box-sizing:border-box}.chat-page.school-roster-chat .teacher-challenges-file-preview-bottom,.teacher-challenges-file-preview-bottom{flex-shrink:0;width:100%;box-sizing:border-box;padding:.65rem 1rem max(.85rem,env(safe-area-inset-bottom,0px));border-top:1px solid rgba(32,43,37,.12);background:var(--iso-panel);box-shadow:0 -6px 18px rgba(0,0,0,.06);border-radius:0 0 11px 11px}.chat-page.school-roster-chat .teacher-challenges-file-preview-bottom-multi,.teacher-challenges-file-preview-bottom-multi{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem}.chat-page.school-roster-chat .teacher-challenges-file-preview-bottom-single,.teacher-challenges-file-preview-bottom-single{display:flex;justify-content:center}.chat-page.school-roster-chat .teacher-challenges-file-preview-close-btn,.teacher-challenges-file-preview-close-btn{flex-shrink:0}.chat-page.school-roster-chat .teacher-challenges-file-preview-nav.teacher-challenges-file-preview-nav--inline,.teacher-challenges-file-preview-nav.teacher-challenges-file-preview-nav--inline,.teacher-challenges-modal-backdrop.teacher-challenges-modal-backdrop--file-preview .teacher-challenges-file-preview-nav.teacher-challenges-file-preview-nav--inline{width:auto;max-width:100%}.chat-page.school-roster-chat .teacher-challenges-file-preview-nav,.teacher-challenges-modal-backdrop.teacher-challenges-modal-backdrop--file-preview .teacher-challenges-file-preview-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem;width:100%;box-sizing:border-box}.chat-page.school-roster-chat .teacher-challenges-file-preview-nav-btn,.teacher-challenges-modal-backdrop.teacher-challenges-modal-backdrop--file-preview .teacher-challenges-file-preview-nav-btn{flex-shrink:0}.chat-page.school-roster-chat .teacher-challenges-file-preview-page,.teacher-challenges-modal-backdrop.teacher-challenges-modal-backdrop--file-preview .teacher-challenges-file-preview-page{font-size:.85rem;min-width:4.5rem;text-align:center;flex-shrink:0}.teacher-challenges-modal-backdrop.teacher-challenges-modal-backdrop--file-preview .teacher-challenges-btn--secondary{background:rgba(255,255,255,.92);border:1px solid rgba(58,97,80,.35);color:rgba(22,38,30,.92);font-weight:650}.teacher-challenges-modal-backdrop.teacher-challenges-modal-backdrop--file-preview .teacher-challenges-btn--secondary:hover{background:rgba(58,97,80,.08);border-color:rgba(58,97,80,.45)}.teacher-challenges-modal-backdrop.teacher-challenges-modal-backdrop--file-preview .teacher-challenges-btn--secondary:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.school-roster-chat .teacher-challenges-file-preview-strip,.teacher-challenges-file-preview-strip{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center;align-items:center;padding:.55rem 0 .25rem;width:100%;box-sizing:border-box;flex-shrink:0;border-top:1px solid rgba(58,97,80,.12);margin-top:.5rem}.chat-page.school-roster-chat .teacher-challenges-file-preview-strip-item,.teacher-challenges-file-preview-strip-item{width:52px;height:52px;padding:0;margin:0;border-radius:8px;overflow:hidden;border:2px solid rgba(58,97,80,.2);background:rgba(255,255,255,.92);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .12s ease,box-shadow .12s ease}.chat-page.school-roster-chat .teacher-challenges-file-preview-strip-item:hover,.teacher-challenges-file-preview-strip-item:hover{border-color:rgba(32,86,118,.45)}.chat-page.school-roster-chat .teacher-challenges-file-preview-strip-item--selected,.teacher-challenges-file-preview-strip-item--selected{border-color:rgba(32,86,118,.95);box-shadow:0 0 0 1px rgba(32,86,118,.25)}.chat-page.school-roster-chat .teacher-challenges-file-preview-strip-thumb,.teacher-challenges-file-preview-strip-thumb{width:100%;height:100%;object-fit:cover;display:block}.chat-page.school-roster-chat .teacher-challenges-file-preview-strip-pdf,.teacher-challenges-file-preview-strip-pdf{font-size:.65rem;font-weight:750;letter-spacing:.04em;color:rgba(120,35,28,.95)}.chat-page.school-roster-chat .teacher-challenges-file-preview-iframe,.teacher-challenges-file-preview-iframe{width:100%;min-height:min(58vh,520px);border:1px solid rgba(58,97,80,.15);border-radius:8px;background:rgba(255,255,255,.6)}.chat-page.school-roster-chat .teacher-challenges-file-preview-img,.teacher-challenges-file-preview-img{max-width:100%;max-height:min(70vh,680px);object-fit:contain;border-radius:8px}.chat-page.school-roster-chat .school-data-table.partner-notes-table .teacher-challenges-col--actions,.chat-page.school-roster-chat .school-roster-table-wrap .school-data-table .teacher-challenges-col--actions{width:3.25rem;min-width:3.25rem;text-align:center;vertical-align:middle}.chat-page.school-roster-chat .school-roster-table-wrap .school-data-table .school-class-notes-table-actions-col{width:auto;min-width:6.5rem;text-align:right;vertical-align:middle}.chat-page.school-roster-chat .school-class-notes-table-actions{display:inline-flex;flex-wrap:wrap;gap:2px;align-items:center;justify-content:flex-end}.chat-page.school-roster-chat .school-data-table.partner-notes-table .teacher-challenges-col--pack-actions,.chat-page.school-roster-chat .school-roster-table-wrap .school-data-table .teacher-challenges-col--pack-actions{width:auto;min-width:5.75rem;max-width:none;text-align:center;vertical-align:middle;white-space:nowrap}.chat-page.school-roster-chat .school-data-table.partner-notes-table td.teacher-challenges-col--pack-actions.partner-notes-table__actions{width:auto;min-width:5.75rem;max-width:none}.chat-page.school-roster-chat .school-data-table.partner-notes-table td.teacher-challenges-col--pack-actions.partner-notes-table__actions .teacher-challenges-pack-actions__row{flex-wrap:nowrap}.chat-page.school-roster-chat .teacher-challenges-pack-actions__row--centered{justify-content:center;align-items:center}.chat-page.school-roster-chat .teacher-challenges-pack-actions__row--compact{gap:.45rem;align-items:baseline;line-height:1.15}.chat-page.school-roster-chat a.teacher-challenges-pack-text-link,.school-solutions-root.school-partner-challenges-page a.teacher-challenges-pack-text-link{display:inline;font-size:.8rem;font-weight:600;line-height:1.15;padding:0;text-decoration:underline;text-underline-offset:2px;color:rgba(32,43,37,.9);white-space:nowrap}.chat-page.school-roster-chat a.teacher-challenges-pack-text-link:hover,.school-solutions-root.school-partner-challenges-page a.teacher-challenges-pack-text-link:hover{color:rgba(22,38,30,.96)}.chat-page.school-roster-chat button.teacher-challenges-pack-text-link,.school-solutions-root.school-partner-challenges-page button.teacher-challenges-pack-text-link{display:inline;font-size:.8rem;font-weight:600;line-height:1.15;padding:0;text-decoration:underline;text-underline-offset:2px;color:rgba(32,43,37,.9);white-space:nowrap;background:none;border:none;cursor:pointer;font-family:inherit}.chat-page.school-roster-chat button.teacher-challenges-pack-text-link:hover,.school-solutions-root.school-partner-challenges-page button.teacher-challenges-pack-text-link:hover{color:rgba(22,38,30,.96)}.chat-page.school-roster-chat .school-data-table.partner-notes-table td.teacher-challenges-col--pack-actions.partner-notes-table__actions:has(.teacher-challenges-pack-actions__row--compact){min-width:4rem}.chat-page.school-roster-chat .school-roster-empty{padding:1.25rem 1rem;text-align:center;font-size:.9rem}.chat-page.school-roster-chat .school-roster-panel--student-tools{margin-bottom:.35rem}.chat-page.school-roster-chat .school-roster-subtabbar{display:flex;flex-wrap:wrap;gap:6px;padding:6px;margin:12px 0 14px;border-radius:999px;background:rgba(255,255,255,.52);border:1px solid rgba(58,97,80,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.78)}.chat-page.school-roster-chat .school-roster-subtab{border:none;cursor:pointer;font:inherit;font-weight:650;font-size:.84rem;padding:10px 16px;border-radius:999px;background:transparent;color:var(--iso-muted);transition:background .2s ease,color .2s ease,box-shadow .2s ease}.chat-page.school-roster-chat .school-roster-subtab:hover{background:rgba(255,255,255,.82);color:var(--iso-text)}.chat-page.school-roster-chat .school-roster-subtab:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.school-roster-chat .school-roster-subtab[aria-selected=true]{background:linear-gradient(135deg,#e4f5ea,#d8f0e3);color:var(--iso-primary);box-shadow:0 3px 12px rgba(58,97,80,.14)}.chat-page.school-roster-chat .school-roster-subtab--long{font-size:.76rem;line-height:1.35;padding:9px 12px;max-width:min(100%,20rem);text-align:center}.chat-page.school-roster-chat .school-roster-subtabbar--nested{margin:0 0 12px;padding:5px;align-self:flex-start;max-width:100%}.chat-page.school-roster-chat .school-roster-directory-subtabbar{margin:10px 0 14px}.chat-page.school-roster-chat .school-roster-toolbar-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.chat-page.school-roster-chat .school-roster-toolbar-hint{flex:1 1 12rem;margin:0;font-size:.88rem}.chat-page.school-roster-chat .school-roster-template-btn{flex-shrink:0}.chat-page.school-roster-chat .school-roster-import-block{display:flex;flex-direction:column;gap:10px}.chat-page.school-roster-chat .school-roster-import-instructions-wrap{display:flex;flex-direction:column;gap:6px}.chat-page.school-roster-chat .school-roster-import-instructions-title{margin:0;font-size:.9rem;font-weight:650;color:var(--iso-text)}.chat-page.school-roster-chat .school-roster-import-instructions{margin:0;padding-left:1.2rem;font-size:.88rem;line-height:1.45;font-style:italic;list-style-type:disc}.chat-page.school-roster-chat .school-roster-import-instructions li{margin-bottom:.35rem}.chat-page.school-roster-chat .school-roster-import-instructions li:last-child{margin-bottom:0}.chat-page.school-roster-chat .school-roster-import-post-form-rule{border:none;border-top:1px solid rgba(58,97,80,.18);margin:1rem 0 .35rem;width:100%}.chat-page.school-roster-chat .school-roster-reference-block{display:flex;flex-direction:column;gap:6px}.chat-page.school-roster-chat .school-roster-reference-title{margin:0;font-size:.9rem;font-weight:650;color:var(--iso-text)}.chat-page.school-roster-chat .school-roster-sample-csv{margin:0;padding:10px 12px;font-size:.82rem;line-height:1.45;border-radius:10px;background:rgba(255,255,255,.65);border:1px solid rgba(58,97,80,.14);overflow-x:auto}.chat-page.school-roster-chat .school-roster-import-primary-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.chat-page.school-roster-chat .school-roster-file-label{position:relative;display:inline-flex;align-items:center}.chat-page.school-roster-chat .school-roster-file-input{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1}.chat-page.school-roster-chat .school-roster-import-form{margin:0}.chat-page.school-roster-chat .school-roster-import-form .school-roster-submit{margin-top:0}.chat-page.school-roster-chat .school-roster-import-primary-row .school-roster-import-choose-btn,.chat-page.school-roster-chat .school-roster-import-primary-row .school-roster-submit,.chat-page.school-roster-chat .school-roster-inline-actions .btn.btn-primary{flex-shrink:0;margin-top:0;font-family:inherit;font-size:.88rem;font-weight:600;line-height:1.2;padding:8px 12px;border-radius:10px}.chat-page.school-roster-chat .school-roster-password-line--bulk{flex-wrap:wrap;gap:10px}.chat-page.school-roster-chat .school-roster-credentials-dl{margin-left:auto}.chat-page.school-roster-chat .school-roster-inline-add td{vertical-align:top;padding-top:14px;border-top:1px dashed rgba(0,0,0,.12);background:rgba(0,0,0,.02)}.chat-page.school-roster-chat .school-roster-inline-add-form{width:100%}.chat-page.school-roster-chat .school-roster-inline-add-grid{display:grid;grid-template-columns:minmax(8rem,1.2fr) minmax(6rem,.85fr) minmax(5rem,.65fr) auto;grid-gap:10px 12px;gap:10px 12px;align-items:end}@media (max-width:720px){.chat-page.school-roster-chat .school-roster-inline-add-grid{grid-template-columns:1fr 1fr}.chat-page.school-roster-chat .school-roster-inline-actions{grid-column:1/-1}}.chat-page.school-roster-chat .school-roster-inline-field{display:flex;flex-direction:column;gap:4px;min-width:0}.chat-page.school-roster-chat .school-roster-inline-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:rgba(0,0,0,.45)}.chat-page.school-roster-chat .school-roster-inline-hint{margin:10px 0 0;font-size:.82rem}.chat-page.school-roster-chat .school-roster-import-scope{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;margin:8px 0 4px}.chat-page.school-roster-chat .school-roster-check{display:flex;align-items:flex-start;gap:10px;font-size:.88rem;margin:8px 0;max-width:44rem}.chat-page.school-roster-chat .school-roster-check input{margin-top:3px}.chat-page.school-roster-chat .school-roster-bulk-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;margin-bottom:10px;border-radius:10px;background:rgba(220,38,38,.08);border:1px solid rgba(220,38,38,.2)}.chat-page.school-roster-chat .school-roster-td-check,.chat-page.school-roster-chat .school-roster-th-check{width:2.25rem;text-align:center;vertical-align:middle}.chat-page.school-roster-chat .school-roster-edit-cell{display:flex;flex-direction:column;gap:8px;min-width:0}.chat-page.school-roster-chat .school-roster-edit-field{display:flex;flex-direction:column;gap:4px;font-size:.78rem}.chat-page.school-roster-chat .school-roster-edit-field .input{font-size:.9rem}.chat-page.platform-console-chat{min-height:min(88vh,960px)}.school-solutions-root .chat-page.platform-console-chat{min-height:calc(100vh - 100px)}.school-solutions-root.platform-console-page{margin:0;width:100%;max-width:none;box-sizing:border-box;padding:12px max(16px,env(safe-area-inset-left,0px)) 20px max(16px,env(safe-area-inset-right,0px))}.school-solutions-root.platform-console-page .chat-page.platform-console-chat .sb-platform-console-stack{max-width:none;width:100%;margin:0;padding:4px clamp(.35rem,1.5vw,.75rem) clamp(28px,4vw,40px);display:flex;flex-direction:column;gap:18px;min-width:0;box-sizing:border-box}.chat-page.platform-console-chat .sb-platform-console-stack{max-width:1320px;margin:0 auto;padding:4px 8px 40px;display:flex;flex-direction:column;gap:18px;min-width:0;width:100%;box-sizing:border-box}.chat-page.platform-console-chat .sb-platform-console-hero{padding-top:4px}.chat-page.platform-console-chat .sb-platform-console-hero-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px 20px}.chat-page.platform-console-chat .sb-platform-console-title{margin:0;font-size:clamp(1.42rem,2.4vw,1.85rem);font-weight:800;letter-spacing:-.03em;color:var(--iso-primary);line-height:1.2}.chat-page.platform-console-chat .sb-platform-console-lead{margin:.65rem 0 0;font-size:.95rem;line-height:1.58;max-width:52rem}.chat-page.platform-console-chat .sb-platform-console-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.chat-page.platform-console-chat .sb-platform-console-link-muted{font-size:.92rem;color:var(--iso-muted);text-decoration:none;font-weight:600}.chat-page.platform-console-chat .sb-platform-console-link-muted:hover{color:var(--iso-primary);text-decoration:underline}.chat-page.platform-console-chat .sb-platform-console-header-btn{font-size:.88rem;padding:8px 14px;border-radius:999px;font-weight:650}.chat-page.platform-console-chat .sb-platform-console-panel{border-radius:20px;border:1px solid rgba(58,97,80,.15);background:linear-gradient(155deg,rgba(255,255,255,.92),rgba(232,248,238,.96));box-shadow:0 8px 32px rgba(40,75,58,.08);padding:1.2rem 1.35rem 1.4rem;min-width:0;max-width:100%;box-sizing:border-box}.chat-page.platform-console-chat .sb-partner-registration-kv-wrap,.chat-page.school-roster-chat .sb-partner-registration-kv-wrap{margin-top:.75rem;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;border-radius:14px;border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.45)}.chat-page.platform-console-chat .school-data-table.sb-partner-registration-kv-table,.chat-page.school-roster-chat .school-data-table.sb-partner-registration-kv-table{width:100%;max-width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;font-size:.88rem}.chat-page.platform-console-chat .school-data-table.sb-partner-registration-kv-table td,.chat-page.platform-console-chat .school-data-table.sb-partner-registration-kv-table th,.chat-page.school-roster-chat .school-data-table.sb-partner-registration-kv-table td,.chat-page.school-roster-chat .school-data-table.sb-partner-registration-kv-table th{min-width:0;vertical-align:top;overflow-wrap:anywhere;word-break:break-word;padding:.5rem .65rem}.chat-page.platform-console-chat .school-data-table.sb-partner-registration-kv-table th,.chat-page.school-roster-chat .school-data-table.sb-partner-registration-kv-table th{width:34%;max-width:42%;font-weight:600;font-size:.72rem;letter-spacing:.04em;text-transform:none;color:var(--iso-primary);background:rgba(32,43,37,.05)}.chat-page.platform-console-chat .school-data-table.sb-partner-registration-kv-table td,.chat-page.school-roster-chat .school-data-table.sb-partner-registration-kv-table td{white-space:pre-wrap;line-height:1.45}.chat-page.platform-console-chat .sb-platform-console-panel--table{padding-bottom:1.15rem}.chat-page.platform-console-chat .sb-platform-console-section-title{margin:0 0 .85rem;font-size:1.08rem;font-weight:750;letter-spacing:-.02em;color:var(--iso-text)}.chat-page.platform-console-chat .school-roster-tabbar{display:flex;flex-wrap:wrap;gap:6px;padding:6px;margin:0 0 1rem;border-radius:999px;background:rgba(255,255,255,.52);border:1px solid rgba(58,97,80,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.78)}.chat-page.platform-console-chat .school-roster-tab{border:none;cursor:pointer;font:inherit;font-weight:650;font-size:.84rem;padding:10px 18px;border-radius:999px;background:transparent;color:var(--iso-muted);transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .18s ease}.chat-page.platform-console-chat .school-roster-tab:hover{background:rgba(255,255,255,.82);color:var(--iso-text)}.chat-page.platform-console-chat .school-roster-tab:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.platform-console-chat .school-roster-tab[aria-selected=true]{background:linear-gradient(135deg,#e4f5ea,#d8f0e3);color:var(--iso-primary);box-shadow:0 3px 12px rgba(58,97,80,.14);transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.chat-page.platform-console-chat .school-roster-tab[aria-selected=true]{transform:none}}.chat-page.platform-console-chat .sb-platform-console-table--compact{min-width:1080px}.chat-page.platform-console-chat .sb-platform-console-table--compact td{padding:.5rem .55rem;vertical-align:middle}.chat-page.platform-console-chat .sb-platform-console-table--compact tbody tr{height:auto}.chat-page.platform-console-chat .sb-platform-school-cell{display:flex;align-items:center;gap:.5rem;min-width:0}.chat-page.platform-console-chat .sb-platform-school-avatar{flex:0 0 auto;width:1.85rem;height:1.85rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:800;letter-spacing:.02em;color:var(--iso-primary);background:linear-gradient(145deg,#e8f5ee,#d4ecdf);border:1px solid rgba(58,97,80,.2)}.chat-page.platform-console-chat .sb-platform-school-meta{min-width:0;flex:1 1 auto;display:flex;flex-direction:row;align-items:center}.chat-page.platform-console-chat .sb-platform-school-meta .sb-platform-school-name--ellipsis{flex:1 1 auto;min-width:0;margin-top:0;font-size:.88rem;font-weight:650;line-height:1.25;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--iso-text)}.chat-page.platform-console-chat .sb-platform-status-reason-compact{font-size:.75rem;margin-top:0;line-height:1.3;max-width:11rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-page.platform-console-chat .sb-platform-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;min-width:2.1rem;min-height:2.1rem;padding:0;border-radius:10px;border:1px solid rgba(58,97,80,.18);background:rgba(255,255,255,.75);color:var(--iso-primary);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.chat-page.platform-console-chat .sb-platform-icon-btn:hover{background:rgba(255,255,255,.95);border-color:rgba(58,97,80,.32)}.chat-page.platform-console-chat .sb-platform-icon-btn:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.platform-console-chat .sb-platform-icon-btn--danger{color:#9f2d4a;border-color:rgba(180,60,90,.22);background:rgba(255,250,251,.9)}.chat-page.platform-console-chat .sb-platform-icon-btn--success{color:var(--iso-primary);border-color:rgba(58,97,80,.25);background:rgba(236,252,244,.9)}.chat-page.platform-console-chat .sb-platform-icon-btn--link{text-decoration:none;color:var(--iso-primary)}.chat-page.platform-console-chat .sb-platform-icon-btn-dots{font-size:.85rem;font-weight:700;line-height:1}.chat-page.platform-console-chat .sb-platform-icon-row{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.35rem}.chat-page.platform-console-chat .sb-platform-admins-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.chat-page.platform-console-chat .sb-platform-console-cell-invoices{text-align:center;vertical-align:middle}.chat-page.platform-console-chat .sb-platform-invoices-cell{display:flex;justify-content:center;align-items:center}.chat-page.platform-console-chat .sb-platform-compact-billing{min-width:0}.chat-page.platform-console-chat .sb-platform-compact-billing-summary{font-size:.8rem;line-height:1.35;color:var(--iso-text);min-width:0}.chat-page.platform-console-chat .sb-platform-compact-billing-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:18rem}.chat-page.platform-console-chat .sb-platform-saas-inline-row{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.35rem;min-width:0}.chat-page.platform-console-chat .sb-platform-seat-count-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;border-radius:999px;border:1px solid rgba(58,97,80,.18);background:rgba(255,255,255,.78);font-size:.84rem;font-weight:750;color:var(--iso-primary);flex-shrink:0}.chat-page.platform-console-chat a.sb-platform-seat-count-badge--link{text-decoration:none;color:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.chat-page.platform-console-chat a.sb-platform-seat-count-badge--link:hover{background:rgba(255,255,255,.98);border-color:rgba(58,97,80,.32);box-shadow:0 1px 0 rgba(58,97,80,.08)}.chat-page.platform-console-chat a.sb-platform-seat-count-badge--link:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.platform-console-chat .sb-platform-sub-manage-blurb{font-size:.88rem;line-height:1.45;margin:0 0 .65rem}.chat-page.platform-console-chat .sb-platform-sub-manage-plans-title{margin-top:1.75rem}.chat-page.platform-console-chat .sb-platform-sub-manage-seats.sb-login-label{gap:.65rem}.chat-page.platform-console-chat .sb-platform-sub-manage-plan-scroll{margin-top:.65rem}.chat-page.platform-console-chat .sb-platform-sub-manage-plan-table{min-width:720px}.chat-page.platform-console-chat .sb-platform-sub-manage-table{min-width:980px}.chat-page.platform-console-chat .sb-platform-sub-manage-pay-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.88rem;font-weight:650;color:var(--iso-primary);text-decoration:none;word-break:break-word}.chat-page.platform-console-chat .sb-platform-sub-manage-pay-link:hover{text-decoration:underline}.chat-page.platform-console-chat .sb-platform-sub-plan-row--selected td{background:rgba(15,118,110,.07)}.chat-page.platform-console-chat .sb-platform-sub-cancel-btn{font-size:.82rem;padding:.35rem .65rem;min-height:auto}.chat-page.platform-console-chat .sb-platform-sub-manage-plan-pagination{margin-top:.65rem}.chat-page.platform-console-chat .sb-platform-sub-manage-result{margin-top:1.35rem;padding:1.2rem 1.15rem 1.35rem;border-radius:14px;border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.58);display:flex;flex-direction:column;gap:1.15rem}.chat-page.platform-console-chat .sb-platform-sub-manage-result__link-row{margin:0;line-height:1.45}.chat-page.platform-console-chat .sb-platform-sub-manage-result__key{display:inline-block;margin-left:.5rem;font-size:.82rem;vertical-align:baseline}.chat-page.platform-console-chat .sb-platform-sub-manage-qr{display:flex;justify-content:flex-start;align-items:center;padding:.35rem 0 .65rem;margin:.15rem 0}.chat-page.platform-console-chat .sb-platform-sub-manage-qr__img{display:block;width:200px;max-width:min(220px,100%);height:auto;border-radius:12px;box-shadow:0 4px 18px rgba(40,75,58,.1)}.chat-page.platform-console-chat .sb-platform-sub-manage-result__email{margin:0;font-size:.88rem;line-height:1.45;padding-top:.15rem}.chat-page.platform-console-chat .sb-platform-sub-history-page-scroll{max-width:100%;overflow-x:auto}.chat-page.platform-console-chat .sb-platform-sub-history-table{min-width:960px}.chat-page.platform-console-chat .sb-platform-sub-history-mono{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.78rem;word-break:break-all}.chat-page.platform-console-chat .sb-platform-sub-history-plan{font-size:.78rem;word-break:break-all}.chat-page.platform-console-chat .sb-platform-sub-history-dt{font-size:.82rem;white-space:nowrap}.chat-page.platform-console-chat .sb-platform-sub-history-blurb{font-size:.88rem;line-height:1.45;margin:0 0 .35rem}.chat-page.platform-console-chat .sb-platform-sub-history-section2{margin-top:1.75rem}.chat-page.platform-console-chat .sb-platform-admin-count-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;border-radius:999px;border:1px solid rgba(58,97,80,.18);background:rgba(255,255,255,.78);font-size:.84rem;font-weight:750;color:var(--iso-primary);cursor:pointer;transition:background .15s ease,border-color .15s ease}.chat-page.platform-console-chat .sb-platform-admin-count-btn:hover{background:rgba(255,255,255,.98);border-color:rgba(58,97,80,.28)}.chat-page.platform-console-chat .sb-platform-admin-count-btn:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px}.chat-page.platform-console-chat .sb-platform-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem;margin-top:.75rem;padding:.65rem .85rem;border-radius:14px;border:1px solid rgba(58,97,80,.1);background:rgba(255,255,255,.45)}.chat-page.platform-console-chat .sb-platform-pagination-nav{font-size:.84rem;padding:.4rem .85rem;min-height:40px}.chat-page.platform-console-chat .sb-platform-pagination-stats{font-size:.86rem;text-align:center;flex:1 1 auto}.chat-page.platform-console-chat .sb-platform-modal-school-line{font-size:.88rem;margin-bottom:.85rem;line-height:1.45}.chat-page.platform-console-chat .sb-platform-modal-school-code{font-weight:750}.chat-page.platform-console-chat .sb-platform-modal-dot{margin:0 .35rem;opacity:.55}.chat-page.platform-console-chat .sb-platform-admin-dialog-table-wrap{margin:0 0 1rem;overflow:auto;max-height:min(50vh,360px);border-radius:12px;border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.45)}.chat-page.platform-console-chat .sb-platform-admin-dialog-table{margin:0;width:100%;min-width:420px;font-size:.88rem;border-collapse:separate;border-spacing:0}.chat-page.platform-console-chat .sb-platform-admin-dialog-table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:1;font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary);background:linear-gradient(180deg,rgba(236,252,244,.98),rgba(228,248,238,.96));padding:.5rem .65rem;border-bottom:1px solid rgba(58,97,80,.12)}.chat-page.platform-console-chat .sb-platform-admin-dialog-table tbody td{padding:.45rem .65rem;vertical-align:middle;border-bottom:1px solid rgba(58,97,80,.08);line-height:1.35}.chat-page.platform-console-chat .sb-platform-admin-dialog-table tbody tr:last-child td{border-bottom:none}.chat-page.platform-console-chat .sb-platform-admin-dialog-th-actions{width:4.5rem;text-align:right}.chat-page.platform-console-chat .sb-platform-admin-dialog-td-email{word-break:break-word}.chat-page.platform-console-chat .sb-platform-admin-dialog-email{font-weight:650}.chat-page.platform-console-chat .sb-platform-admin-dialog-td-name{color:var(--iso-text)}.chat-page.platform-console-chat .sb-platform-admin-dialog-td-actions{text-align:right;white-space:nowrap}.chat-page.platform-console-chat .sb-platform-admin-dialog-td-actions .sb-platform-icon-btn{vertical-align:middle}.chat-page.platform-console-chat .sb-platform-admin-badge--inline{margin-left:.35rem}.chat-page.platform-console-chat .sb-platform-add-admin-form--dialog{margin-top:.5rem;padding-top:.85rem;border-top:1px solid rgba(58,97,80,.12)}.chat-page.platform-console-chat .sb-platform-console-filters{margin:0 0 1rem;padding:14px 16px;border-radius:16px;border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}.chat-page.platform-console-chat .sb-platform-console-filters-grid{display:grid;grid-gap:14px 16px;gap:14px 16px;grid-template-columns:minmax(220px,1.4fr) minmax(160px,.85fr) minmax(160px,.85fr) auto;align-items:end}.chat-page.platform-console-chat .sb-platform-console-filter-field{display:flex;flex-direction:column;gap:.4rem;min-width:0}.chat-page.platform-console-chat .sb-platform-console-filter-label{font-size:.72rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.chat-page.platform-console-chat .sb-platform-console-filter-input{min-height:44px;font-size:.95rem}.chat-page.platform-console-chat .sb-platform-console-filter-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;justify-content:flex-end;padding-bottom:2px}.chat-page.platform-console-chat .sb-platform-console-clear-filters{font-size:.84rem;padding:8px 14px;border-radius:999px;font-weight:650}.chat-page.platform-console-chat .sb-platform-console-count{font-size:.9rem;white-space:nowrap}.chat-page.platform-console-chat .sb-platform-console-count strong{font-weight:750;color:var(--iso-text)}.chat-page.platform-console-chat .sb-platform-console-empty-hint{margin:.5rem 0 0;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.45);border:1px dashed rgba(58,97,80,.2)}.chat-page.platform-console-chat .sb-platform-partners-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}.chat-page.platform-console-chat a.sb-platform-partners-action-link,.chat-page.platform-console-chat button.sb-platform-partners-action-link{display:inline;background:none;border:none;padding:0;margin:0;font:inherit;font-size:.88rem;font-weight:600;color:var(--iso-primary);text-decoration:underline;text-underline-offset:2px;cursor:pointer;text-align:left}.chat-page.platform-console-chat a.sb-platform-partners-action-link:hover,.chat-page.platform-console-chat button.sb-platform-partners-action-link:hover:not(:disabled){color:var(--iso-text)}.chat-page.platform-console-chat button.sb-platform-partners-action-link:disabled{opacity:.5;cursor:not-allowed}.chat-page.platform-console-chat .sb-platform-partners-action-link:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px;border-radius:2px}.chat-page.platform-console-chat .sb-platform-partner-schools-blurb{font-size:.88rem;line-height:1.45;margin:0 0 .65rem;max-width:62rem}.chat-page.platform-console-chat .sb-platform-partner-schools-table{min-width:1080px}.chat-page.platform-console-chat .sb-platform-partner-assets-table{min-width:1040px}.chat-page.platform-console-chat .sb-platform-partner-asset-title-link{color:var(--iso-primary);font-weight:750;text-decoration:underline;text-underline-offset:2px}.chat-page.platform-console-chat .sb-platform-partner-asset-title-link:hover{opacity:.88}.chat-page.platform-console-chat .sb-platform-partner-asset-title-link:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px;border-radius:2px}.chat-page.platform-console-chat .sb-platform-console-table-scroll{margin-top:.15rem;border-radius:16px;overflow:auto;max-height:min(72vh,820px);border:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.55);box-shadow:0 2px 14px rgba(35,65,50,.06);-webkit-overflow-scrolling:touch}.chat-page.platform-console-chat .sb-platform-console-table{width:100%;min-width:1180px;table-layout:fixed;font-size:.92rem;border-collapse:separate;border-spacing:0}.chat-page.platform-console-chat .sb-platform-console-table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:2;font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary);background:linear-gradient(180deg,rgba(236,252,244,.98),rgba(220,243,232,.96));border-color:rgba(58,97,80,.12);padding:.65rem .85rem;box-shadow:0 1px 0 rgba(58,97,80,.1)}.chat-page.platform-console-chat .sb-platform-console-table td{border-color:rgba(58,97,80,.09);padding:.85rem .9rem;vertical-align:top;line-height:1.45}.chat-page.platform-console-chat .sb-platform-console-table tbody tr:nth-child(2n) td{background:rgba(255,255,255,.38)}.chat-page.platform-console-chat .sb-platform-console-col-school{width:19%}.chat-page.platform-console-chat .sb-platform-console-col-status{width:9%}.chat-page.platform-console-chat .sb-platform-console-col-access{width:5.5%}.chat-page.platform-console-chat .sb-platform-console-col-saas{width:20%}.chat-page.platform-console-chat .sb-platform-console-col-admins{width:16%}.chat-page.platform-console-chat .sb-platform-console-col-invoices{width:9%}.chat-page.platform-console-chat .sb-platform-console-cell-access{text-align:center;vertical-align:middle}.chat-page.platform-console-chat .sb-platform-access-cell{display:flex;justify-content:center;align-items:center}.chat-page.platform-console-chat .sb-platform-status-stack-compact{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;min-width:0}.chat-page.platform-console-chat .sb-platform-school-name{margin-top:.4rem;font-size:1.02rem;font-weight:650;letter-spacing:-.02em;line-height:1.35;color:var(--iso-text)}.chat-page.platform-console-chat .sb-platform-status-stack{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}.chat-page.platform-console-chat .sb-platform-status-pill{display:inline-flex;align-items:center;padding:4px 11px;border-radius:999px;font-size:.72rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.chat-page.platform-console-chat .sb-platform-status-pill--active{background:rgba(58,97,80,.12);color:var(--iso-primary);border:1px solid rgba(58,97,80,.22)}.chat-page.platform-console-chat .sb-platform-status-pill--inactive{background:rgba(180,35,24,.1);color:#9a3428;border:1px solid rgba(180,35,24,.22)}.chat-page.platform-console-chat .sb-platform-status-reason{font-size:.84rem;line-height:1.45;max-width:28ch}.chat-page.platform-console-chat .sb-platform-status-actions{margin-top:.1rem;padding-top:.5rem;border-top:1px solid rgba(58,97,80,.12);width:100%;max-width:15rem}.chat-page.platform-console-chat .sb-platform-status-action{display:inline;background:none;border:none;margin:0;padding:0;font:inherit;font-size:.8125rem;font-weight:600;line-height:1.45;cursor:pointer;text-align:left;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;transition:color .15s ease}.chat-page.platform-console-chat .sb-platform-status-action--danger{color:#9a3428}.chat-page.platform-console-chat .sb-platform-status-action--danger:hover{color:#7f1d1d}.chat-page.platform-console-chat .sb-platform-status-action--reactivate{color:var(--iso-primary)}.chat-page.platform-console-chat .sb-platform-status-action--reactivate:hover{color:#2d4a3c}.chat-page.platform-console-chat .sb-platform-status-action:focus-visible{outline:2px solid var(--iso-primary);outline-offset:3px;border-radius:4px}.chat-page.platform-console-chat .sb-platform-status-action--danger:focus-visible{outline-color:#c2410c}.chat-page.platform-console-chat .sb-platform-billing-lines{font-size:.9rem;line-height:1.5}.chat-page.platform-console-chat .sb-platform-billing-strong{font-weight:650;color:var(--iso-text)}.chat-page.platform-console-chat .sb-platform-billing-loc{margin-top:.15rem}.chat-page.platform-console-chat .sb-platform-billing-gstin{margin-top:.25rem;font-size:.82rem}.chat-page.platform-console-chat .sb-platform-billing-empty{font-size:.9rem}.chat-page.platform-console-chat .sb-platform-billing-actions{margin-top:.55rem;display:flex;flex-wrap:wrap;gap:6px}.chat-page.platform-console-chat .sb-platform-row-btn{font-size:.8rem;padding:7px 12px;border-radius:999px;font-weight:650}.chat-page.platform-console-chat .sb-platform-row-btn--danger-ghost{border-color:rgba(180,35,24,.35);color:#9a3428;background:rgba(255,255,255,.75)}.chat-page.platform-console-chat .sb-platform-row-btn--danger-ghost:hover{background:rgba(254,242,242,.95);border-color:rgba(180,35,24,.5)}.chat-page.platform-console-chat .sb-platform-admin-list{margin:0;padding:0;list-style:none}.chat-page.platform-console-chat .sb-platform-admin-item{padding:.5rem 0;border-bottom:1px solid rgba(58,97,80,.08)}.chat-page.platform-console-chat .sb-platform-admin-item:last-of-type{border-bottom:none}.chat-page.platform-console-chat .sb-platform-admin-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem}.chat-page.platform-console-chat .sb-platform-admin-email{font-weight:600;overflow-wrap:anywhere}.chat-page.platform-console-chat .sb-platform-admin-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.65rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase;background:rgba(30,58,95,.1);color:#1e3a5f;border:1px solid rgba(30,58,95,.2)}.chat-page.platform-console-chat .sb-platform-admin-actions{margin-top:.35rem;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.chat-page.platform-console-chat .sb-platform-admin-hint{font-size:.78rem;line-height:1.35;max-width:36ch}.chat-page.platform-console-chat .sb-platform-console-cell-admins form{margin-top:.65rem;padding-top:.65rem}.chat-page.platform-console-chat .sb-platform-console-cell-saas{vertical-align:middle}.chat-page.platform-console-chat .sb-platform-saas-stack{display:flex;flex-direction:column;gap:.35rem;font-size:.88rem;min-width:0;padding:.45rem .55rem;margin:-.15rem -.35rem 0;border-radius:12px;border:1px solid transparent;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.chat-page.platform-console-chat .sb-platform-saas-line{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.chat-page.platform-console-chat .sb-platform-saas-credits{font-weight:650}.chat-page.platform-console-chat .sb-platform-saas-link{font-size:.82rem;font-weight:650;color:#0f766e;text-decoration:none}.chat-page.platform-console-chat .sb-platform-saas-link:hover{text-decoration:underline}.chat-page.platform-console-chat .sb-platform-saas-subid{font-size:.72rem;font-family:ui-monospace,Menlo,Consolas,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:28ch}.chat-page.platform-console-chat .sb-platform-saas-stack--action-urgent{border-color:rgba(194,65,12,.45);background:linear-gradient(135deg,rgba(255,247,237,.95),rgba(254,243,199,.55));box-shadow:0 0 0 1px rgba(194,65,12,.12)}.chat-page.platform-console-chat .sb-platform-saas-stack--action-setup{border-color:rgba(180,83,9,.4);background:linear-gradient(135deg,rgba(255,251,235,.98),rgba(254,249,195,.45))}.chat-page.platform-console-chat .sb-platform-saas-stack--in-progress{border-color:rgba(14,116,144,.38);background:linear-gradient(135deg,rgba(236,254,255,.9),rgba(224,242,254,.65))}.chat-page.platform-console-chat .sb-platform-saas-stack--healthy{border-color:rgba(58,97,80,.22);background:rgba(255,255,255,.35)}.chat-page.platform-console-chat .sb-platform-saas-stack--inactive{border-color:rgba(100,116,108,.2);background:rgba(248,250,249,.65)}.chat-page.platform-console-chat .sb-platform-saas-hint{margin:.15rem 0 0;font-size:.72rem;line-height:1.45;color:rgba(45,55,50,.88)}.sb-platform-rz-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.68rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase;border:1px solid transparent}.sb-platform-rz-pill--action-urgent{background:rgba(194,65,12,.14);color:#9a3412;border-color:rgba(194,65,12,.35)}.sb-platform-rz-pill--action-setup{background:rgba(180,83,9,.12);color:#92400e;border-color:rgba(180,83,9,.32)}.sb-platform-rz-pill--in-progress{background:rgba(14,116,144,.12);color:#0e7490;border-color:rgba(14,116,144,.28)}.sb-platform-rz-pill--healthy{background:rgba(58,97,80,.12);color:var(--iso-primary);border-color:rgba(58,97,80,.28)}.sb-platform-rz-pill--inactive{background:rgba(100,116,108,.1);color:#5c6b66;border-color:rgba(100,116,108,.22)}.sb-platform-rz-summary{border:1px solid transparent}.sb-platform-rz-summary--action-urgent{border-color:rgba(194,65,12,.4);background:linear-gradient(180deg,rgba(255,247,237,.98),rgba(255,251,235,.85))}.sb-platform-rz-summary--action-setup{border-color:rgba(180,83,9,.38);background:linear-gradient(180deg,rgba(255,251,235,.98),rgba(254,252,232,.88))}.sb-platform-rz-summary--in-progress{border-color:rgba(14,116,144,.35);background:linear-gradient(180deg,rgba(236,254,255,.95),rgba(224,242,254,.75))}.sb-platform-rz-summary--healthy{border-color:rgba(58,97,80,.22);background:rgba(30,58,95,.06)}.sb-platform-rz-summary--inactive{border-color:rgba(100,116,108,.18);background:rgba(248,250,249,.9)}.sb-platform-rz-hint{color:rgba(45,55,50,.9)}.policy-page-wrap{margin:0 -16px;padding:24px 16px 48px;min-height:100%;overflow-x:clip}.policy-article{max-width:800px;margin:0 auto;min-width:0}.school-data-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;max-width:100%}.school-data-table{width:100%;border-collapse:collapse;font-size:.9rem}.school-data-table td,.school-data-table th{border:1px solid var(--iso-border,rgba(32,43,37,.12));padding:.5rem .65rem;text-align:left;vertical-align:top;overflow-wrap:anywhere;word-break:break-word}.school-data-table th{font-weight:600;background:rgba(32,43,37,.04)}.school-data-table--wide{min-width:520px}.partner-notes-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.partner-notes-table{min-width:52rem;table-layout:auto;font-family:inherit;font-size:.9rem;font-weight:400}.school-data-table.partner-notes-table>tbody>tr>td,.school-data-table.partner-notes-table>thead>tr>th{font-family:inherit;font-size:.9rem;font-weight:400;letter-spacing:0;line-height:1.45}.school-data-table.partner-notes-table>thead>tr>th{font-weight:600;line-height:1.35;text-transform:none}.school-data-table.partner-notes-table>tbody>tr>td.partner-notes-table__divisions,.school-data-table.partner-notes-table>tbody>tr>td.partner-notes-table__mode,.school-data-table.partner-notes-table>tbody>tr>td.partner-notes-table__updated{font-size:.85rem}.partner-notes-table td,.partner-notes-table th{overflow-wrap:normal;word-break:normal}.partner-notes-table__title{min-width:10rem}.partner-challenges-partner-list-table .partner-notes-table__title{min-width:18rem}.partner-challenges-partner-list-table .partner-notes-table__actions{width:auto;min-width:12rem;max-width:22rem;white-space:normal;vertical-align:middle}.partner-notes-table__class,.partner-notes-table__status,.partner-notes-table__topic{white-space:nowrap}.partner-notes-table__school{min-width:12rem}.partner-notes-table__mode{min-width:11rem;max-width:16rem;line-height:1.35}.partner-notes-table__updated{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.partner-notes-table__actions{width:1%;white-space:nowrap;vertical-align:middle}.partner-notes-table__actions .btn{white-space:nowrap}.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .school-data-table.partner-notes-table.partner-challenges-partner-list-table{font-family:inherit;font-size:.9rem;font-weight:400}.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .school-data-table.partner-notes-table.partner-challenges-partner-list-table>thead>tr>th{font-family:inherit!important;font-size:.9rem!important;font-weight:600!important;letter-spacing:0!important;line-height:1.35!important;text-transform:none!important;color:rgba(22,38,30,.94)!important}.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .school-data-table.partner-notes-table.partner-challenges-partner-list-table>tbody>tr>td:not(.teacher-challenges-list-pack-table__slug){font-family:inherit!important;font-size:.9rem!important;font-weight:400!important;letter-spacing:0!important;line-height:1.45!important;color:rgba(22,38,30,.94)!important}.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .school-data-table.partner-notes-table.partner-challenges-partner-list-table td.partner-notes-table__divisions,.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .school-data-table.partner-notes-table.partner-challenges-partner-list-table td.partner-notes-table__mode,.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .school-data-table.partner-notes-table.partner-challenges-partner-list-table td.partner-notes-table__updated{font-size:.85rem!important}.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .school-data-table.partner-notes-table.partner-challenges-partner-list-table td.partner-notes-table__updated{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .school-data-table.partner-notes-table.partner-challenges-partner-list-table tbody td.teacher-challenges-list-pack-table__slug{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace!important;font-size:.9rem!important;letter-spacing:0!important}.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .school-data-table.partner-notes-table.partner-challenges-partner-list-table tbody td.muted.teacher-challenges-list-pack-table__slug,.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .school-data-table.partner-notes-table.partner-challenges-partner-list-table tbody td.muted:not(.teacher-challenges-list-pack-table__slug){color:var(--iso-muted)!important}.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .school-data-table.partner-notes-table.partner-challenges-partner-list-table .teacher-challenges-icon-btn{font-family:inherit!important}.chat-page.school-roster-chat .school-solutions-root.school-teacher-challenges-list-page .teacher-challenges-list-datatable .teacher-challenges-toggle{font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;letter-spacing:inherit!important;color:inherit!important}@media (max-width:719px){.class-notes-student-list{overflow-x:visible}.class-notes-student-table,.class-notes-student-table tbody,.class-notes-student-table td,.class-notes-student-table tr{display:block;width:100%;box-sizing:border-box}.class-notes-student-table thead{display:none}.class-notes-student-table tbody tr{margin-bottom:.45rem;border:1px solid var(--iso-border,rgba(32,43,37,.14));border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(22,38,30,.04);overflow:hidden}.class-notes-student-table tbody tr:last-child{margin-bottom:0}.class-notes-student-table tbody td{border:none;padding:.35rem .65rem;min-width:0}.class-notes-student-table tbody td:first-child{padding-top:.5rem}.class-notes-student-table tbody td:last-child{padding-bottom:.5rem}.class-notes-student-table tbody td[data-label]:not([data-label=""]):before{content:attr(data-label);display:block;font-size:.65rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:var(--iso-primary);margin-bottom:.15rem}.class-notes-student-table tbody tr.class-notes-student-table__status td{text-align:center;padding:.65rem .75rem}.class-notes-student-table tbody tr.class-notes-student-table__status td:before{display:none}}@media (min-width:720px){.class-notes-student-table td.class-notes-student-table__preview{max-width:320px}}.class-notes-student-table__preview-text{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}@media (min-width:720px){.class-notes-student-table__preview-text{-webkit-line-clamp:2}}@media (max-width:719px){.class-notes-student-table__preview-text{-webkit-line-clamp:3;font-size:.88rem;line-height:1.35}}.public-partner-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:14px;gap:14px}.public-partner-tile-btn{display:flex;flex-direction:column;align-items:stretch;text-align:left;min-height:148px;padding:16px 16px 14px;border-radius:14px;border:1px solid rgba(58,97,80,.2);background:rgba(255,255,255,.97);box-shadow:0 2px 12px rgba(30,43,36,.05);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.public-partner-tile-btn:hover{border-color:rgba(58,97,80,.42);box-shadow:0 6px 22px rgba(58,97,80,.12);transform:translateY(-1px)}.public-partner-tile-btn__title{font-size:1.05rem;margin:0;line-height:1.3}.public-partner-tile-btn__org{font-size:.84rem;margin-top:6px;line-height:1.35}.public-partner-tile-btn__stats{margin-top:auto;padding-top:12px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;font-size:.88rem}.public-partner-tile-btn__stat strong{font-weight:750;color:var(--iso-text)}.public-partner-tile-btn__stat--on strong{color:var(--iso-primary)}.public-partner-tile-btn__sep{color:var(--iso-muted);opacity:.65}.public-partner-tile-btn__cta{margin-top:10px;font-size:.76rem;letter-spacing:.04em;text-transform:uppercase;font-weight:650}.public-partner-tiles-lead{font-size:.92rem;line-height:1.55;margin:0 0 14px;max-width:52rem}.public-partner-tile-btn__count-line{font-size:.82rem;margin:8px 0 6px;line-height:1.35}.public-partner-catalog-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-bottom:.85rem;font-size:.88rem}.public-partner-catalog-breadcrumb__link{padding:0;border:0;background:none;font:inherit;color:var(--iso-primary);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.public-partner-catalog-breadcrumb__link:hover{color:var(--iso-text)}.public-partner-catalog-breadcrumb__sep{color:var(--iso-muted)}.public-partner-catalog-breadcrumb__current{color:var(--iso-text);font-weight:650}.subscriber-challenges-catalog-lead{font-size:.92rem;line-height:1.55;margin:0 0 12px;max-width:52rem}.subscriber-challenges-catalog-filters{margin-bottom:.85rem}.subscriber-challenges-catalog-search{margin-bottom:.75rem!important}.subscriber-feed-status-pill{display:inline-block;max-width:18rem;padding:.2rem .55rem;border-radius:999px;font-size:.82rem;line-height:1.35;font-weight:600}.subscriber-feed-status-pill--on{color:var(--iso-primary);background:rgba(58,97,80,.1)}.subscriber-feed-status-pill--off{color:var(--iso-muted);background:rgba(70,84,76,.08)}.subscriber-challenges-catalog-table__title{font-weight:600;color:var(--iso-text)}.subscriber-challenges-catalog-table__topic{font-size:.88rem}.subscriber-challenges-catalog-table__preview{white-space:nowrap}.public-partner-class-step-wrap{display:flex;justify-content:center;align-items:flex-start;width:100%;min-height:min(72vh,640px);padding:28px 16px 48px;box-sizing:border-box}.public-partner-class-step-card.school-roster-panel{width:100%;max-width:min(560px,100%);min-height:min(380px,72vh);margin:0 auto;padding:32px 36px 28px;border-radius:18px;box-sizing:border-box;box-shadow:0 8px 36px rgba(30,43,36,.1);border:1px solid rgba(58,97,80,.14);background:rgba(255,255,255,.98)}.public-partner-class-step-title{margin-top:0;margin-bottom:12px;font-size:1.35rem}.public-partner-class-step-lead{font-size:.94rem;line-height:1.55;margin:0 0 24px}.public-partner-class-step-field{margin-bottom:8px}.public-partner-class-step-label{display:block;margin-bottom:8px;font-size:.82rem}.public-partner-class-step-select{width:100%;max-width:100%;min-height:3rem;font-size:1rem}.public-partner-class-step-actions{margin-top:28px;gap:12px}@media (max-width:560px){.public-partner-class-step-card.school-roster-panel{padding:22px 18px 20px;min-height:auto}}@media (max-width:960px){.class-note-detail-mobile-split{display:flex;flex-direction:column;gap:12px;min-width:0}.class-note-mobile-read-trigger.btn{width:100%;justify-content:center;min-height:48px;border-radius:12px;font-weight:600;border:1px solid rgba(58,97,80,.28);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(244,252,247,.96));color:var(--iso-primary)}.class-note-read-drawer-root{z-index:225}.class-note-read-drawer{max-height:min(88dvh,640px)}}.class-note-ask-log-wrap{max-height:360px}@media (max-width:960px){.class-note-detail-mobile-split .class-note-ask-log-wrap{max-height:min(50vh,480px)}}.class-note-read-drawer-body-inner{min-width:0}.class-note-read-drawer-body-inner .school-roster-panel{margin:0}.class-note-ask-textarea-wrap{flex:1 1 auto;min-width:0}.class-note-ask-textarea{width:100%;resize:vertical;min-height:unset}.class-note-assistant-tts-actions{display:flex;flex-direction:row;align-items:center;gap:10px;margin-top:8px}.class-note-assistant-tts-actions__speaker{display:inline-flex;color:var(--iso-muted,#46544c);flex-shrink:0}.class-note-assistant-tts-actions .notes-speech-tts-btn{flex-shrink:0}.school-report-filters{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin-top:1rem}.school-report-filters label{display:flex;flex-direction:column;gap:.35rem;flex:1 1 160px;min-width:0}.school-report-filters input[type=date]{padding:.35rem .5rem}.school-report-filters input[type=date],.school-report-filters select{min-height:44px;border:1px solid var(--iso-border);border-radius:8px;font:inherit;font-size:1rem;width:100%;max-width:100%;box-sizing:border-box}.school-report-filters select{padding:.35rem .6rem;background:rgba(255,255,255,.95);color:var(--iso-text);cursor:pointer}.school-report-filters select:focus{outline:none;border-color:rgba(58,97,80,.45);box-shadow:0 0 0 3px rgba(58,97,80,.12)}.school-report-filters .btn{min-height:44px;padding-left:1.25rem;padding-right:1.25rem;touch-action:manipulation}@media (max-width:520px){.school-report-filters{flex-direction:column;align-items:stretch}.school-report-filters label{flex:none;width:100%}}.school-gaps-list{margin:.5rem 0 0;padding-left:1.25rem;line-height:1.55;overflow-wrap:anywhere}.school-console-back-link{display:inline-block;margin-top:2rem;padding:.65rem 0;min-height:44px;box-sizing:border-box}.school-billing-student{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:min(48vh,380px);padding-top:.5rem;padding-bottom:1rem}.school-billing-student-message{margin:0;max-width:36ch;font-size:1.05rem;line-height:1.55;color:var(--iso-text)}.school-billing-signout-wrap{display:flex;justify-content:center;width:100%;margin-top:1.75rem}.school-billing-signout-wrap--footer{margin-top:2.5rem}.school-billing-signout-btn{min-width:168px;min-height:48px;font-weight:600;letter-spacing:.06em}.school-billing-admin-subnav{display:flex;flex-wrap:wrap;gap:.35rem .5rem;margin-top:.5rem}.school-billing-admin-subnav-link{display:inline-flex;align-items:center;padding:.45rem .85rem;border-radius:999px;font-size:.88rem;font-weight:600;text-decoration:none;color:var(--iso-muted,#5c6d62);border:1px solid rgba(58,97,80,.2);background:rgba(255,255,255,.65);transition:background .12s ease,color .12s ease,border-color .12s ease}.school-billing-admin-subnav-link:hover{color:var(--iso-text,#16261e);border-color:rgba(58,97,80,.35);background:rgba(58,97,80,.06)}.school-billing-admin-subnav-link--active{color:var(--iso-primary,#3a6150);border-color:rgba(58,97,80,.45);background:rgba(58,97,80,.12)}.chat-page.platform-console-chat .school-billing-subscription-page{width:100%;max-width:min(72rem,100%);margin-inline:auto}.chat-page.platform-console-chat .school-billing-subscription-panel.sb-platform-console-panel{padding:clamp(1rem,2.5vw,1.35rem)}.chat-page.platform-console-chat .school-billing-subscription-alert{margin:0 0 1rem}.chat-page.platform-console-chat .school-billing-subscription-grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:1fr}@media (min-width:880px){.chat-page.platform-console-chat .school-billing-subscription-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-page.platform-console-chat .school-billing-subscription-card--wide{grid-column:1/-1}}.chat-page.platform-console-chat .school-billing-subscription-card{border:1px solid rgba(32,43,37,.12);border-radius:12px;background:rgba(255,255,255,.72);padding:1rem 1.1rem 1.1rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}.chat-page.platform-console-chat .school-billing-subscription-card--trial{border-color:rgba(58,97,80,.28);background:linear-gradient(165deg,rgba(232,248,238,.95),rgba(255,255,255,.88) 52%)}.chat-page.platform-console-chat .school-billing-subscription-card-title{margin:0 0 .35rem;font-size:1.02rem;font-weight:650;letter-spacing:-.02em;color:var(--iso-text)}.chat-page.platform-console-chat .school-billing-subscription-card-sub{margin:0 0 .85rem;font-size:.86rem;line-height:1.45}.chat-page.platform-console-chat .school-billing-subscription-card-head{display:flex;flex-direction:column;gap:.65rem;align-items:flex-start}.chat-page.platform-console-chat .school-billing-subscription-lead{margin:0;font-size:.9rem;line-height:1.5;color:var(--iso-text);max-width:52ch}.chat-page.platform-console-chat .school-billing-subscription-badge{display:inline-flex;align-items:center;padding:.28rem .65rem;border-radius:999px;font-size:.78rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.chat-page.platform-console-chat .school-billing-subscription-badge--paid{color:rgba(22,60,38,.95);background:rgba(58,97,80,.16);border:1px solid rgba(58,97,80,.28)}.chat-page.platform-console-chat .school-billing-subscription-badge--trial{color:rgba(18,68,105,.96);background:rgba(186,230,253,.55);border:1px solid rgba(32,86,118,.22)}.chat-page.platform-console-chat .school-billing-subscription-badge--none{color:rgba(120,53,15,.95);background:rgba(254,243,199,.75);border:1px solid rgba(217,119,6,.28)}.chat-page.platform-console-chat .school-billing-subscription-dl{margin:0;display:grid;grid-template-columns:minmax(7.5rem,auto) minmax(0,1fr);grid-gap:.45rem 1rem;gap:.45rem 1rem;font-size:.9rem;align-items:baseline}.chat-page.platform-console-chat .school-billing-subscription-dl dt{margin:0;color:var(--iso-muted);font-weight:600;font-size:.82rem}.chat-page.platform-console-chat .school-billing-subscription-dl dd{margin:0;min-width:0}.chat-page.platform-console-chat .school-billing-subscription-mono{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.84rem;word-break:break-word}.chat-page.platform-console-chat .school-billing-subscription-status{font-weight:650;font-size:.9rem}.chat-page.platform-console-chat .school-billing-subscription-status--ok{color:rgba(22,101,52,.95)}.chat-page.platform-console-chat .school-billing-subscription-status--warn{color:rgba(154,52,18,.95)}.chat-page.platform-console-chat .school-billing-subscription-status--muted{color:var(--iso-muted)}.chat-page.platform-console-chat .school-billing-subscription-footnote{margin:.85rem 0 0;font-size:.82rem;line-height:1.45;max-width:56ch}.chat-page.platform-console-chat .school-billing-subscription-stats{display:flex;flex-wrap:wrap;gap:.75rem 1rem}.chat-page.platform-console-chat .school-billing-subscription-stat{flex:1 1 8.5rem;min-width:min(100%,8.5rem);padding:.65rem .75rem;border-radius:10px;border:1px solid rgba(32,43,37,.1);background:rgba(255,255,255,.55)}.chat-page.platform-console-chat .school-billing-subscription-stat--wide{flex:1 1 100%}.chat-page.platform-console-chat .school-billing-subscription-stat-value{display:block;font-size:1.35rem;font-weight:750;letter-spacing:-.02em;color:var(--iso-text);line-height:1.2}.chat-page.platform-console-chat .school-billing-subscription-stat-value--sm{font-size:.95rem;font-weight:650}.chat-page.platform-console-chat .school-billing-subscription-stat-label{display:block;margin-top:.2rem;font-size:.78rem;font-weight:600;color:var(--iso-muted);line-height:1.35}.chat-page.platform-console-chat .school-billing-subscription-empty{margin:0}.chat-page.platform-console-chat .school-billing-subscription-table-wrap{margin-top:.5rem}.chat-page.platform-console-chat .school-billing-subscription-history{margin-top:1.75rem;display:flex;flex-direction:column;gap:1.75rem}.chat-page.platform-console-chat .school-billing-subscription-history-block{padding-top:1.25rem;border-top:1px solid rgba(32,43,37,.1)}.chat-page.platform-console-chat .school-billing-subscription-section-heading{margin:0 0 .5rem;font-size:.98rem;font-weight:650;color:var(--iso-text)}.school-invoice-pdf-link{display:inline-block;padding:.4rem .2rem;min-height:44px;line-height:1.35;touch-action:manipulation}.policy-header{margin-bottom:2.5rem}.policy-title{margin:0 0 .5rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:600;letter-spacing:-.03em;color:var(--iso-text)}.policy-meta{margin:0;font-size:.95rem}.policy-section{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid rgba(32,43,37,.12)}.policy-section:first-of-type{margin-top:0;padding-top:0;border-top:none}.policy-section h2{margin:0 0 1rem;font-size:1.35rem;font-weight:600;color:var(--iso-text)}.policy-section h3{margin:1.5rem 0 .75rem;font-size:1.1rem;font-weight:600;color:var(--iso-text)}.policy-section p{font-size:1rem}.policy-section p,.policy-section ul{margin:0 0 1rem;line-height:1.7;color:var(--iso-muted)}.policy-section ul{padding-left:1.5rem}.policy-section li{margin-bottom:.5rem}.policy-section li:last-child{margin-bottom:0}.policy-section a{color:var(--iso-primary);text-decoration:underline;text-underline-offset:2px}.policy-section a:hover{text-decoration-thickness:2px}.school-page-wrap{--school-text:#3d3540;--school-muted:#7d7285;margin:0 -16px;padding:24px 16px 48px;min-height:100%}.school-landing{padding:28px 22px 48px;border-radius:22px;background:rgba(255,255,255,.95);border:1px solid rgba(248,242,246,.5);box-shadow:inset 0 1px 0 rgba(255,255,255,.99)}.school-article{max-width:900px;margin:0 auto}.school-hero{margin-bottom:3rem}.school-hero-title{margin:0 0 1.25rem;font-size:clamp(2rem,5vw,3.25rem);font-weight:300;letter-spacing:-.035em;line-height:1.1;color:var(--school-text,#3d3540)}.school-hero-lead{margin:0 0 1rem;font-size:clamp(1.05rem,1.9vw,1.2rem);line-height:1.65;color:var(--school-muted,#7d7285);max-width:65ch}.school-section{margin-top:3.5rem;padding-top:2.5rem;border-top:1px solid rgba(248,242,246,.6)}.school-section-title{margin:0 0 1.25rem;font-size:clamp(1.4rem,2.8vw,1.9rem);font-weight:400;letter-spacing:-.02em;color:var(--school-text,#3d3540)}.school-section-lead{margin:0 0 2rem;font-size:1.05rem;line-height:1.7;color:var(--school-muted,#7d7285);max-width:72ch}.school-stakeholder{margin-bottom:2.5rem}.school-stakeholder:last-child{margin-bottom:0}.school-stakeholder-label{margin:0 0 .5rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--school-muted,#7d7285);font-weight:600}.school-stakeholder-title{margin:0 0 1rem;font-size:1.25rem;font-weight:500;letter-spacing:-.01em;color:var(--school-text,#3d3540)}.school-stakeholder-body{margin:0;font-size:1rem;line-height:1.7;color:var(--school-muted,#7d7285);max-width:70ch}.school-stakeholder-body p{margin:0 0 1rem}.school-stakeholder-body p:last-child{margin-bottom:0}.school-stakeholder-body strong{color:var(--school-text,#3d3540);font-weight:600}.school-principles{display:grid;grid-gap:2rem 2.5rem;gap:2rem 2.5rem;margin-top:2rem}@media (min-width:640px){.school-principles{grid-template-columns:repeat(2,1fr)}}@media (min-width:900px){.school-principles{grid-template-columns:repeat(4,1fr)}}.school-principle{padding:0}.school-principle-title{margin:0 0 .6rem;font-size:1.05rem;font-weight:600;color:var(--school-text,#3d3540)}.school-principle-body{margin:0;font-size:.95rem;line-height:1.6;color:var(--school-muted,#7d7285)}.school-cta{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(248,242,246,.6)}.school-hero-figure{margin-top:2rem;border-radius:16px;overflow:hidden}.school-section-figure{margin-top:2rem}.school-stakeholder-figure{margin-top:1.5rem}.school-page-wrap .media-placeholder{border-color:rgba(248,242,246,.6);background:rgba(255,254,255,.8)}.school-page-wrap .media-placeholder-caption{color:var(--school-muted,#7d7285)}.school-page-wrap .media-placeholder-caption strong{color:var(--school-text,#3d3540)}.school-interest-form{margin-top:1.5rem;padding:1.5rem;border-radius:16px;border:1px solid rgba(248,242,246,.8);background:rgba(255,255,255,.98)}.chat-page .school-interest-form{border-radius:20px;border-color:rgba(58,97,80,.2);background:linear-gradient(155deg,rgba(255,255,255,.88),rgba(232,248,238,.92));box-shadow:0 10px 40px rgba(35,65,50,.1)}.chat-page .school-interest-form .login-label{color:var(--iso-primary);font-weight:600;font-size:.95rem;letter-spacing:.01em}.chat-page .school-interest-form .input,.chat-page .school-interest-form .textarea{border-radius:18px;background:rgba(255,255,255,.92);border-color:rgba(58,97,80,.18);color:var(--iso-text);font-size:1.02rem;line-height:1.5}.chat-page .school-interest-form .input::placeholder,.chat-page .school-interest-form .textarea::placeholder{color:rgba(58,97,80,.45)}.chat-page .school-interest-form .input:focus,.chat-page .school-interest-form .textarea:focus{border-color:rgba(58,97,80,.35);outline:none;box-shadow:0 0 0 2px rgba(58,97,80,.15)}.chat-page .school-interest-form .btn-primary{background:var(--iso-primary);border-color:var(--iso-primary);color:#fff}.chat-page .school-interest-form .btn-primary:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 4px 16px rgba(58,97,80,.35)}.school-form-title{margin:0 0 1.25rem;font-size:1.2rem;font-weight:600;color:#3d3540}.chat-page .school-form-title{color:var(--iso-primary)}.school-form-fields{display:grid;grid-gap:12px;gap:12px}.school-form-actions{margin-top:1.25rem}.school-form-success{margin-top:1.5rem;padding:1.5rem;border-radius:16px;border:1px solid rgba(248,242,246,.8);background:rgba(255,255,255,.99)}.chat-page .school-form-success,.chat-page .school-form-success.panel{border-radius:20px;border-color:rgba(58,97,80,.2);background:linear-gradient(155deg,rgba(255,255,255,.88),rgba(232,248,238,.92));box-shadow:0 10px 40px rgba(35,65,50,.1)}.school-form-success-text{margin:0;font-size:1rem;color:#3d3540}.chat-page .school-form-success-text{color:var(--iso-text)}@media (max-width:960px){.site-footer{display:block!important;flex-shrink:0}body.iso-body:has(.chat-app)>main.page-wrap--footer{padding-bottom:0}body.iso-body:has(.chat-app) .site-footer{display:none!important}body.iso-body:has(.notes-app)>main.page-wrap--footer{padding-bottom:0}body.iso-body:has(.notes-app) .site-footer{display:none!important}}@media (min-width:961px){.site-footer{display:block!important}}.site-footer{width:100%;box-sizing:border-box;margin-top:auto;border-top:1px solid rgba(30,41,59,.1);background:linear-gradient(168deg,#f1f5f9,#eef2f7 50%,#e2e8f0);box-shadow:inset 0 1px 0 rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.site-footer-inner{max-width:1220px;margin:0 auto;padding:2.25rem 16px 1.5rem;display:grid;grid-gap:2rem;gap:2rem}@media (min-width:900px){.site-footer-inner{grid-template-columns:1.2fr 2fr 1fr;align-items:start}}.site-footer-logo{display:inline-block;font-weight:700;letter-spacing:.04em;font-size:1.05rem;color:var(--iso-primary)}.site-footer-tagline{margin:.6rem 0 0;font-size:.88rem;line-height:1.55;color:var(--iso-muted);max-width:32ch}.site-footer-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:1.5rem;gap:1.5rem}.site-footer-heading{margin:0 0 .65rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--iso-primary);font-weight:600}.site-footer-links{margin:0;padding:0;list-style:none}.site-footer-links li{margin-bottom:.45rem}.site-footer-link{color:var(--iso-text);text-decoration:none;font-size:.88rem;transition:color .15s ease}.site-footer-link:hover{color:var(--iso-primary);text-decoration:underline}.site-footer-contact-placeholder{margin:0;font-size:.88rem}.site-footer-mono{font-family:ui-monospace,monospace;font-size:.85rem}.site-footer-note{margin:.5rem 0 0;font-size:.75rem;line-height:1.45}.site-footer-bottom{border-top:1px solid rgba(30,41,59,.1);padding:1rem var(--layout-pad);text-align:center}.site-footer-copy{margin:0;font-size:.78rem;color:var(--iso-muted)}.pricing-apple--embedded-login{border-radius:16px;overflow:hidden;border:1px solid rgba(0,0,0,.08);box-shadow:0 4px 24px rgba(32,43,37,.08)}.pricing-apple--embedded-login .pricing-apple-hero{padding-top:2rem}@media (min-width:734px){.pricing-apple--embedded-login .pricing-apple-hero{padding-top:2.5rem}}.pricing-apple{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#f5f5f7;color:#1d1d1f;min-height:100%;padding-bottom:3rem}.pricing-apple-hero{max-width:980px;margin:0 auto;padding:3rem 1.25rem 2.5rem;text-align:center}@media (min-width:734px){.pricing-apple-hero{padding-top:4rem;padding-bottom:3rem}}.pricing-apple-eyebrow{margin:0 0 .35rem;font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#6e6e73}.pricing-apple-headline{margin:0 0 .65rem;font-size:clamp(2.25rem,5.5vw,3.5rem);font-weight:600;letter-spacing:-.03em;line-height:1.05;color:#1d1d1f}.pricing-apple-subhead{margin:0 auto;max-width:42rem;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.5;font-weight:400;color:#6e6e73}.pricing-apple-subhead strong{color:#424245;font-weight:600}.pricing-apple-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pricing-apple-plans{max-width:1068px;margin:0 auto;padding:0 1rem 2rem}.pricing-apple-grid{display:grid;grid-gap:1rem;gap:1rem;align-items:stretch}@media (min-width:734px){.pricing-apple-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}}.pricing-apple-grid--four{grid-template-columns:1fr}@media (min-width:600px){.pricing-apple-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.pricing-apple-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}}.pricing-apple-grid--three{grid-template-columns:1fr}@media (min-width:600px){.pricing-apple-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.pricing-apple-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}}.pricing-apple-plans--embedded,.pricing-apple-plans--onboarding{max-width:none;margin:0;padding:0}.pricing-apple-choose-hint{margin-top:auto;padding-top:.65rem;font-size:.82rem;font-weight:600;color:var(--iso-primary)}.pricing-apple--embedded{padding:1rem 0 0;background:transparent}.pricing-apple-tile--interactive{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pricing-apple-tile--interactive:focus-visible{outline:2px solid var(--iso-primary);outline-offset:3px}.pricing-apple-tile--selected{border-color:rgba(58,97,80,.55);box-shadow:0 0 0 2px rgba(58,97,80,.25),0 8px 24px rgba(0,0,0,.08)}.pricing-apple-grid--four .pricing-apple-tile--featured,.pricing-apple-grid--four .pricing-apple-tile--featured-value,.pricing-apple-grid--three .pricing-apple-tile--featured,.pricing-apple-grid--three .pricing-apple-tile--featured-value{transform:none}@media (min-width:734px){.pricing-apple-grid--four .pricing-apple-tile--featured,.pricing-apple-grid--four .pricing-apple-tile--featured-value,.pricing-apple-grid--three .pricing-apple-tile--featured,.pricing-apple-grid--three .pricing-apple-tile--featured-value{transform:none}}.pricing-apple-tile{position:relative;display:flex;flex-direction:column;padding:1.75rem 1.25rem 1.5rem;background:#fff;border-radius:18px;border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px rgba(0,0,0,.04);transition:box-shadow .2s ease,transform .2s ease}@media (hover:hover){.pricing-apple-tile:hover{box-shadow:0 8px 24px rgba(0,0,0,.08)}}.pricing-apple-tile--featured{border-color:rgba(58,97,80,.35);box-shadow:0 8px 32px rgba(58,97,80,.12);background:linear-gradient(180deg,#fff,#f5faf7)}@media (min-width:734px){.pricing-apple-tile--featured,.pricing-apple-tile--featured-value{transform:scale(1.02);z-index:1}}.pricing-apple-tile--featured-value{border-color:rgba(200,120,40,.4);box-shadow:0 8px 32px rgba(200,120,40,.14);background:linear-gradient(180deg,#fff,#fffaf5)}.pricing-apple-badge{position:absolute;top:.85rem;right:.85rem;padding:.2rem .55rem;font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--iso-primary);border-radius:999px}.pricing-apple-badge--value{text-transform:none;letter-spacing:.02em;font-size:.6rem;font-weight:700;color:#3a2510;background:linear-gradient(135deg,#ffd27a,#f5a032 45%,#e8892a);box-shadow:0 1px 2px rgba(180,90,0,.2)}.pricing-apple-tile-name{margin:0 0 .2rem;font-size:1.5rem;font-weight:600;letter-spacing:-.02em;color:#1d1d1f}.pricing-apple-tile-from{margin:0 0 1rem;font-size:.88rem;color:#6e6e73}.pricing-apple-tile-price{margin:0 0 .35rem;line-height:1}.pricing-apple-amount{font-size:clamp(2rem,4vw,2.75rem);font-weight:600;letter-spacing:-.03em;color:#1d1d1f}.pricing-apple-period{margin-left:.15rem;font-size:1.1rem;font-weight:500;color:#6e6e73}.pricing-apple-tile-note{margin:0 0 1rem;font-size:.88rem;line-height:1.45;color:#424245}.pricing-apple-tile-list{margin:0 0 1.25rem;padding-left:1.1rem;font-size:.82rem;line-height:1.55;color:#6e6e73;flex:1 1}.pricing-apple-tile-list li{margin-bottom:.4rem}.pricing-apple-cta{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;padding:.65rem 1.35rem;font-size:1rem;font-weight:500;color:#fff;background:var(--iso-primary);border-radius:999px;text-decoration:none;transition:filter .15s ease,transform .15s ease}.pricing-apple-cta:hover{filter:brightness(1.06)}.pricing-apple-cta--secondary{color:var(--iso-primary);background:transparent;border:2px solid var(--iso-primary)}.pricing-apple-cta--secondary:hover{background:rgba(58,97,80,.08);filter:none}.pricing-apple-cta:disabled{opacity:.55;cursor:not-allowed;filter:none}.pricing-apple-error{color:#c0392b;font-size:.82rem;margin:6px 0 0}.pricing-apple-info{color:var(--iso-primary);font-size:.82rem;margin:6px 0 0;font-weight:500}.pricing-apple-gateway-note{color:rgba(35,58,48,.55);font-size:.78rem;margin:4px 0 0}.pricing-apple-current-badge{display:inline-block;padding:6px 16px;border-radius:10px;background:rgba(59,125,94,.12);color:var(--iso-primary);font-weight:600;font-size:.88rem;margin-top:6px}.billing-status-summary{margin-bottom:1.2rem;padding:14px 18px;background:#f8fbf9;border-radius:12px;border:1px solid rgba(59,125,94,.12)}.billing-status-summary p{margin:0;font-size:.92rem;line-height:1.6}.billing-plan-card{background:#fff;border:1px solid rgba(59,125,94,.14);border-radius:14px;padding:22px 24px;margin-bottom:1.5rem;box-shadow:0 2px 10px rgba(20,35,29,.06)}.billing-plan-card-title{margin:0 0 16px;font-size:1.1rem;font-weight:700;color:#1d1d1f;letter-spacing:-.01em}.billing-plan-card-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px 24px;gap:12px 24px}.billing-plan-detail{display:flex;flex-direction:column;gap:2px}.billing-plan-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:rgba(35,58,48,.5);font-weight:600}.billing-plan-value{font-size:.92rem;color:#1d1d1f}.billing-plan-status{color:var(--iso-primary);font-weight:600}.billing-usage-bar-wrap{grid-column:1/-1;margin-top:4px}.billing-usage-bar{height:8px;background:rgba(59,125,94,.1);border-radius:8px;overflow:hidden}.billing-usage-bar-fill{height:100%;background:var(--iso-primary);border-radius:8px;transition:width .4s ease}.billing-history-section{margin-bottom:1.5rem}.billing-history-title,.billing-plans-title{margin:0 0 10px;font-size:1.05rem;font-weight:700;color:#1d1d1f}.billing-history-table-wrap{overflow-x:auto;border-radius:10px;border:1px solid rgba(0,0,0,.08)}.billing-history-table{width:100%;border-collapse:collapse;font-size:.88rem}.billing-history-table th{text-align:left;padding:10px 14px;background:#f5f7f6;font-weight:600;color:rgba(35,58,48,.7);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid rgba(0,0,0,.06)}.billing-history-table td{padding:10px 14px;border-bottom:1px solid rgba(0,0,0,.04);color:#333}.billing-history-table tbody tr:last-child td{border-bottom:0}.billing-history-type{display:inline-block;padding:2px 8px;border-radius:6px;font-size:.78rem;font-weight:600}.billing-history-type--subscription{background:rgba(59,125,94,.1);color:var(--iso-primary)}.billing-history-type--topup{background:rgba(96,146,192,.12);color:#4a7fb5}.billing-plans-section .muted{margin:0 0 12px;font-size:.9rem}@media (max-width:600px){.billing-plan-card-grid{grid-template-columns:1fr}}.pricing-apple-accessory{margin-top:1.5rem;padding:1.5rem 1.25rem;background:#fff;border-radius:18px;border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px rgba(0,0,0,.04)}.pricing-apple-accessory-inner{max-width:720px;margin:0 auto}.pricing-apple-accessory-title{margin:0 0 .35rem;font-size:1.15rem;font-weight:600;letter-spacing:-.02em;color:#1d1d1f}.pricing-apple-accessory-desc{margin:0;font-size:.95rem;line-height:1.5;color:#6e6e73}.pricing-apple-included{margin-top:.5rem;padding:3rem 1.25rem;background:#fff;border-top:1px solid rgba(0,0,0,.06)}.pricing-apple-included-inner{max-width:980px;margin:0 auto}.pricing-apple-section-title{margin:0 0 1.75rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:600;letter-spacing:-.02em;text-align:center;color:#1d1d1f}.pricing-apple-feature-grid{display:grid;grid-gap:1rem 2rem;gap:1rem 2rem;margin:0;padding:0;list-style:none}@media (min-width:734px){.pricing-apple-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.pricing-apple-feature-item{display:flex;gap:.75rem;align-items:flex-start;font-size:1rem;line-height:1.5;color:#424245}.pricing-apple-check{flex-shrink:0;width:1.35rem;height:1.35rem;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#fff;background:var(--iso-primary);border-radius:50%}.pricing-apple-footnotes{padding:2.5rem 1.25rem 0;background:#f5f5f7}.pricing-apple-footnotes-inner{max-width:820px;margin:0 auto}.pricing-apple-footnote{margin:0 0 .85rem;font-size:.72rem;line-height:1.55;color:#86868b}.pricing-apple-footnote sup{margin-right:.15rem;font-size:.65rem}.pricing-apple-footnote a{color:#424245;text-decoration:underline;text-underline-offset:2px}.pricing-apple-footnote a:hover{color:var(--iso-primary)}.pricing-apple-nav{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(0,0,0,.08);font-size:.8rem;text-align:center}.pricing-apple-nav a{color:#424245;text-decoration:none}.pricing-apple-nav a:hover{text-decoration:underline;color:var(--iso-primary)}.pricing-apple-nav-sep{margin:0 .5rem;color:#d2d2d7}.settings-page{padding:var(--layout-pad);max-width:1100px;margin:0 auto}.settings-panel{border:1px solid var(--iso-border);border-radius:14px;background:#fff;overflow:hidden}.settings-header{padding:20px 24px;border-bottom:1px solid rgba(32,43,37,.18);display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-title{margin:0;font-size:1.5rem;font-weight:500;color:var(--iso-text)}.settings-billing-notice{display:flex;align-items:flex-start;gap:16px;padding:18px 22px;border-bottom:1px solid rgba(32,43,37,.1);background:linear-gradient(135deg,#f4fbf7,#fff8ec)}.settings-billing-notice-mascot{flex-shrink:0;margin-top:2px}.settings-billing-notice-body{flex:1 1;min-width:0}.settings-billing-notice-lead{margin:0;font-size:1.05rem;line-height:1.5;color:var(--iso-text)}.settings-billing-notice-for-grownups{margin:12px 0 0;font-size:.9rem;line-height:1.45;color:var(--iso-muted)}.settings-tabs{display:inline-flex;gap:0;margin:0 16px 16px;border:1px solid rgba(58,97,80,.22);border-radius:10px;overflow:hidden;background:#f3f8f5}.settings-tab{padding:10px 20px;font-size:.92rem;font-weight:600;background:transparent;border:none;cursor:pointer;color:rgba(35,58,48,.7);font-family:inherit;transition:background .15s,color .15s}.settings-tab:not(:last-child){border-right:1px solid rgba(58,97,80,.18)}.settings-tab:hover{background:#e4f0ea;color:var(--iso-text)}.settings-tab-active,.settings-tab-active:hover{background:var(--iso-primary,#3a6150);color:#fff}.settings-tab:focus-visible{outline:2px solid var(--iso-primary);outline-offset:-2px}.settings-body{padding:24px;min-height:320px}.settings-tab-content{max-width:700px}.settings-billing{max-width:none}.settings-billing-intro{max-width:52rem;margin-bottom:1rem}.settings-billing-intro p{margin:0 0 .75rem}.settings-billing-intro a{color:var(--iso-primary);text-decoration:none;font-weight:500}.settings-billing-intro a:visited{color:var(--iso-primary)}.settings-billing-intro a:hover{color:var(--iso-text);text-decoration:none}.settings-billing-intro a:focus-visible{outline:2px solid var(--iso-primary);outline-offset:2px;border-radius:2px}.settings-billing-plans{margin-top:.5rem}.settings-billing-tax-note{margin:1.25rem 0 0;text-align:right;font-style:italic;font-size:.85rem;color:var(--iso-muted)}.billing-plans-lead{margin:0 0 12px}.billing-plans-help-inline a{color:var(--iso-primary);font-weight:500;text-decoration:none}.billing-plans-help-inline a:hover{text-decoration:underline}.billing-plans-support-footer{display:none;margin:1.25rem 0 0;padding-top:1rem;border-top:1px solid rgba(32,43,37,.1);font-size:.9rem;line-height:1.45;text-align:left}.billing-plans-support-footer a{color:var(--iso-primary);font-weight:600;text-decoration:none}.billing-plans-support-footer a:hover{text-decoration:underline}.settings-tab-text-short{display:none}.settings-inline-link{color:var(--iso-primary);font-weight:600;text-decoration:none}.settings-inline-link:hover{text-decoration:underline}.settings-archived-heading{margin:0 0 6px;font-weight:600;color:var(--iso-text)}.settings-archived-hint{margin:0 0 12px;font-size:.86rem;line-height:1.45}.settings-usage-controls{display:flex;align-items:center;gap:10px;margin-bottom:20px}.settings-chart-wrap{width:100%;min-height:280px;margin-bottom:16px}.settings-usage-invocation-breakdown{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.settings-usage-breakdown-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid rgba(58,97,80,.25);background:rgba(233,245,239,.65);color:var(--iso-primary);font-size:.84rem;font-weight:600}.settings-archived-layout{display:grid;grid-template-columns:280px minmax(0,1fr);grid-gap:16px;gap:16px;min-height:400px}@media (max-width:700px){.settings-archived-layout{grid-template-columns:1fr}}.settings-archived-sidebar{overflow:hidden;display:grid;grid-template-rows:auto 1fr}.settings-archived-detail,.settings-archived-sidebar .session-list{overflow-y:auto}.settings-archived-header{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(32,43,37,.12)}.settings-archived-header h3{margin:0;font-size:1.15rem}.settings-archived-messages{min-height:200px}@media (max-width:960px){body.iso-body:has(.settings-mirror-chat) .top-nav{position:absolute;left:0;right:0;top:0;width:100%;height:0;min-height:0;padding:0;margin:0;border:none;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;overflow:visible;pointer-events:none;z-index:0}body.iso-body:has(.settings-mirror-chat) .top-nav .nav-inner{display:none!important}body.iso-body:has(.settings-mirror-chat)>main.page-wrap--footer{padding:0}body.iso-body:has(.settings-mirror-chat) .site-footer{display:none!important}body.iso-body:has(.settings-mirror-chat) .login-root{margin:0;padding:6px 8px max(10px,env(safe-area-inset-bottom,0px));min-height:min(100%,100dvh)}body.iso-body:has(.settings-mirror-chat) .login-root .chat-page{margin:2px -2px 0;padding:0;border-radius:20px;min-height:0}.settings-page{padding:0;max-width:none}.settings-mobile-toolbar{margin-bottom:8px}.settings-mobile-back{flex-shrink:0;display:inline-flex;align-items:center;gap:4px;min-height:40px;padding:0 10px;font-weight:600;font-size:.88rem;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.settings-mobile-title{flex:1 1 auto;min-width:0;text-align:center;font-weight:700;font-size:.95rem;letter-spacing:-.02em;color:var(--iso-text)}.settings-header--desktop{display:none!important}.settings-panel{border-radius:18px;border-color:rgba(58,97,80,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 8px 28px rgba(35,65,50,.07)}.settings-billing-notice{flex-direction:column;align-items:center;text-align:center;padding:14px 16px;gap:12px}.settings-billing-notice-mascot{margin-top:0}.settings-billing-notice-for-grownups{text-align:left}body.iso-body:has(.settings-mirror-chat) .settings-panel{overflow:visible}.settings-tabs{position:-webkit-sticky;position:sticky;top:0;z-index:6;display:flex;flex-wrap:nowrap;width:100%;max-width:100%;margin:0 0 12px;padding:6px 4px 8px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;border-radius:10px;scroll-snap-type:x proximity;background:linear-gradient(180deg,#f6faf7,#f0f7f2);box-shadow:0 1px 0 rgba(58,97,80,.08);border:1px solid rgba(58,97,80,.14)}.settings-tab-text-full{display:none}.settings-tab-text-short{display:inline}.settings-tab{flex:0 0 auto;scroll-snap-align:start;padding:10px 14px;font-size:.85rem;white-space:nowrap}.billing-plans-help-inline{display:none}.billing-plans-support-footer{display:block}.settings-body{padding:16px 14px max(20px,env(safe-area-inset-bottom,0px));min-height:0}.settings-billing-plans.pricing-apple{margin-left:-4px;margin-right:-4px}.billing-plan-card{padding:18px 16px}.billing-history-table{min-width:520px}.billing-history-table-wrap{-webkit-overflow-scrolling:touch}.settings-billing-tax-note{text-align:left}}@media (prefers-reduced-motion:reduce){.login-feature-card{transition:none}.login-feature-card:hover{transform:none}}.notes-inner{max-width:900px}.notes-app .chat-sidebar{display:flex;flex-direction:column;min-height:78vh;max-height:min(90vh,920px);overflow:hidden}.notes-session-list-wrap{flex:1 1;min-height:0;display:flex;flex-direction:column;overflow:hidden;margin-top:4px}.notes-app .notes-session-list{flex:1 1;min-height:0;overflow-y:auto;margin-top:8px}.notes-sidebar-profile{flex-shrink:0;padding:12px 12px 8px;display:flex;flex-direction:column;gap:6px;border-top:1px solid rgba(32,43,37,.1)}.notes-sidebar-hint{padding:8px 4px 12px;font-size:.9rem;flex-shrink:0}.notes-page-head{margin:0 0 .85rem;padding:0 2px}.notes-page-title{margin:0 0 .25rem;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;color:var(--iso-text)}.notes-page-tagline{margin:0;font-size:.92rem;line-height:1.45;max-width:36rem}.notes-chat-header{justify-content:space-between}.notes-chat-header,.notes-chat-header-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.notes-chat-header-actions{justify-content:flex-end;min-width:0}.notes-school-student-name{font-size:.95rem;max-width:min(14rem,40vw)}.notes-mobile-toolbar-student-name,.notes-school-student-name{font-weight:600;color:var(--iso-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notes-mobile-toolbar-student-name{flex:1 1 auto;min-width:0;font-size:.8125rem;padding:0 4px}@media (min-width:961px){.chat-sidebar-profile-mobile,.notes-sidebar-profile-switcher-mobile{display:none}}.notes-messages{min-height:200px;max-height:min(55vh,520px);overflow-y:auto}.notes-assistant-message-cluster{display:flex;flex-direction:column;align-items:stretch;min-width:0;max-width:100%;gap:0}.notes-class-note-refs{margin-top:10px;max-width:100%}.notes-class-note-refs-caption{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary);margin-bottom:8px}.notes-class-note-refs .school-data-table th{font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary)}.notes-class-note-refs .school-data-table td{font-size:.9rem;letter-spacing:.012em;color:var(--iso-text)}.notes-class-note-refs .school-data-table td.muted{color:var(--iso-muted)}.notes-class-note-refs-slug{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;white-space:nowrap;max-width:min(14rem,28vw);overflow:hidden;text-overflow:ellipsis;display:inline-block;vertical-align:top}.notes-class-note-refs-col--action{white-space:nowrap;width:1%}.notes-class-note-refs-read{font-size:.82rem;padding:4px 10px;font-weight:600}.notes-class-note-refs-md{min-width:0;max-width:min(42rem,88vw)}.notes-class-note-refs-md .chat-message-md{font-size:.88rem;line-height:1.45;color:var(--iso-text)}.notes-class-note-refs-md--muted .chat-message-md{color:var(--iso-muted)}.notes-class-note-refs-md--muted .chat-message-md strong{color:var(--iso-text)}.notes-class-note-refs-md .chat-message-md p{margin:.35em 0}.notes-class-note-refs-md .chat-message-md p:first-child{margin-top:0}.notes-class-note-refs-md .chat-message-md p:last-child{margin-bottom:0}.notes-class-note-refs-md .chat-message-md h1,.notes-class-note-refs-md .chat-message-md h2,.notes-class-note-refs-md .chat-message-md h3,.notes-class-note-refs-md .chat-message-md h4{margin:.35em 0 .2em;font-weight:700;line-height:1.35;color:var(--iso-text)}.notes-class-note-refs-md .chat-message-md h1{font-size:.98rem}.notes-class-note-refs-md .chat-message-md h2{font-size:.95rem}.notes-class-note-refs-md .chat-message-md h3,.notes-class-note-refs-md .chat-message-md h4{font-size:.9rem}.notes-class-note-refs-md .chat-message-md .katex{font-size:.92em}.notes-class-note-refs-md .chat-message-md ol,.notes-class-note-refs-md .chat-message-md ul{margin:.35em 0;padding-left:1.2em}.notes-assistant-export-wrap{position:relative;max-width:100%;align-self:flex-start}.notes-assistant-export-capture{min-width:0}.notes-assistant-export-toolbar{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;opacity:0;max-height:0;overflow:hidden;pointer-events:none;transition:opacity .18s ease,max-height .2s ease}.notes-assistant-export-wrap:focus-within .notes-assistant-export-toolbar,.notes-assistant-export-wrap:hover .notes-assistant-export-toolbar{opacity:1;max-height:80px;pointer-events:auto}.notes-assistant-export-btn{font-size:.75rem;padding:5px 10px;font-weight:600;border-radius:8px;background:var(--iso-panel,#fff);border:1px solid var(--iso-border,rgba(32,43,37,.18));color:var(--iso-text,#203b25)}.notes-assistant-export-btn:hover:not(:disabled){background:rgba(32,43,37,.06)}.notes-assistant-export-btn:disabled{opacity:.65}@media (hover:none),(pointer:coarse){.notes-assistant-export-toolbar{opacity:1;max-height:none;overflow:visible;pointer-events:auto}}.learning-diagram{margin-top:.75rem;padding:.5rem .35rem .25rem;border-radius:10px;border:1px solid var(--iso-border,#ddd);background:var(--iso-panel,#fafafa);max-width:100%;container-type:inline-size}.learning-diagram-title{margin:0 0 .35rem .15rem;font-size:.875rem;font-weight:600;color:var(--iso-muted,#555)}.learning-diagram-svg{display:block;width:100%;max-width:min(100%,520px);height:auto;max-height:55vh;margin:0 auto}.learning-diagram--compact-frame .learning-diagram-svg{max-width:min(100%,600px)}@media (max-width:420px){.learning-diagram{padding:.3rem .2rem .2rem;border-radius:8px}.learning-diagram-svg{max-width:100%;max-height:45vh}.learning-diagram--compact-frame .learning-diagram-svg{max-width:100%}}@media (min-width:421px) and (max-width:720px){.learning-diagram-svg{max-width:min(100%,400px);max-height:50vh}.learning-diagram--compact-frame .learning-diagram-svg{max-width:min(100%,460px)}}@media (min-width:961px){.learning-diagram-svg{max-width:min(100%,560px);max-height:60vh}.learning-diagram--compact-frame .learning-diagram-svg{max-width:min(100%,640px)}}.notes-sources--after-messages{margin-top:.5rem;margin-bottom:.35rem;padding:.65rem .75rem;border-radius:10px}.notes-library,.notes-sources--after-messages{border:1px solid var(--iso-border);background:var(--iso-panel)}.notes-library{margin-top:1.25rem;border-radius:12px}.notes-library-summary{cursor:pointer;font-weight:600;padding:.85rem 1rem;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:.75rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.notes-library-summary::-webkit-details-marker{display:none}.notes-library-summary:after{content:"";flex-shrink:0;width:.45rem;height:.45rem;margin-top:-.15rem;border-right:2px solid var(--iso-primary,#3a6150);border-bottom:2px solid var(--iso-primary,#3a6150);transform:rotate(45deg);opacity:.85;transition:transform .18s ease,margin .18s ease}.notes-library[open]>.notes-library-summary:after{margin-top:.2rem;transform:rotate(-135deg)}.notes-library-body{padding:0 1rem 1.25rem;border-top:1px solid rgba(32,43,37,.08)}@media (max-width:960px){.notes-app .notes-library--desktop-only{display:none!important}.notes-mobile-toolbar-library{flex-shrink:0;padding:6px 10px;font-size:.8rem;font-weight:600}.notes-library-body--drawer{border-top:none;padding:0 4px 8px}.assist-style-drawer.notes-library-drawer{max-height:min(88dvh,720px)}.notes-library-drawer-body{padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}}.notes-library-in-progress{display:flex;flex-direction:column;gap:.45rem;margin-bottom:.5rem}.notes-library-in-progress-label{font-size:.9rem;color:var(--iso-muted)}.notes-empty-session{padding:2.5rem 1rem;text-align:center;max-width:420px;margin:0 auto}.notes-empty-session-title{margin:0 0 .5rem;font-size:1.25rem}.notes-page--empty .notes-empty-profile{max-width:480px;margin:3rem auto;padding:2rem;text-align:center}.notes-assist-bar{margin-bottom:.35rem}.notes-chat-shell .notes-section:first-of-type{border-top:none;margin-top:0;padding-top:0}.notes-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(32,43,37,.12)}.notes-h2{margin:0 0 1rem;font-size:1.2rem;font-weight:600;color:var(--iso-text)}.notes-muted{color:var(--iso-muted);font-size:.95rem}.notes-fineprint{margin-top:.5rem}.notes-label{display:block;margin-bottom:.35rem;font-size:.9rem;color:var(--iso-muted)}.notes-input,.notes-select,.notes-textarea{width:100%;max-width:480px;padding:.5rem .75rem;border:1px solid var(--iso-border);border-radius:8px;background:var(--iso-panel);color:var(--iso-text);font:inherit}.notes-textarea{max-width:none;resize:vertical}.notes-file-input{display:none}.notes-upload-actions{display:flex;align-items:center;gap:12px;margin-top:.75rem}.notes-banner,.notes-profile-row{margin-top:1rem}.notes-banner{padding:.75rem 1rem;border-radius:8px;font-size:.95rem}.notes-banner--error{background:rgba(180,40,40,.08);color:#8b1c1c;border:1px solid rgba(180,40,40,.2)}.notes-banner--success{background:rgba(58,97,80,.1);color:var(--iso-text);border:1px solid rgba(58,97,80,.28);margin-top:.75rem}.notes-upload-filename-list{margin:.5rem 0 0;padding-left:1.2rem;font-size:.88rem;color:var(--iso-muted);max-height:8rem;overflow-y:auto}.notes-upload-feedback-dismiss{margin-top:.65rem}.notes-composer-uploads-notice{margin:0 0 .65rem;padding:.85rem 1rem;font-size:.92rem;line-height:1.55;font-weight:500;color:#4a3d1a;background:linear-gradient(145deg,#ffffff,#fff9e6 42%,#ffefd0);border:1px solid rgba(200,150,60,.5);border-radius:10px;box-shadow:0 2px 12px rgba(160,100,30,.12)}.notes-composer-uploads-notice strong{color:#352a10;font-weight:650}.notes-composer-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:.35rem}.notes-composer-label-row .chat-composer-label{margin-bottom:0}.notes-composer-minmax-btn{flex-shrink:0;padding:6px;min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid var(--iso-border,rgba(32,43,37,.18));background:var(--iso-panel,#fff);color:var(--iso-text,#203b25)}.notes-composer-minmax-btn:hover{background:rgba(32,43,37,.06)}.notes-composer-minmax-btn--desktop{min-width:36px;min-height:36px;padding:4px}.notes-composer-body--minimized{display:none!important}.notes-composer-textarea-row{display:flex;flex-direction:row;align-items:flex-start;gap:10px}.notes-composer-textarea-wrap{flex:1 1 auto;min-width:0}.notes-app .notes-composer-body .notes-composer-textarea-wrap .textarea{padding-right:12px;padding-bottom:12px}.notes-app .notes-composer-body .notes-composer-textarea-wrap.composer-textarea-wrap--enter-toggle .textarea.composer-textarea--enter-toggle{padding-right:56px;padding-bottom:52px}.notes-voice-column{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:2px;max-width:5.5rem}.notes-voice-column--stt-unsupported{max-width:min(11.5rem,38vw);align-items:stretch}.notes-voice-column-actions{display:flex;flex-direction:column;align-items:center;gap:8px}.notes-speech-mic-btn--unsupported{opacity:.45;cursor:not-allowed;align-self:center;filter:grayscale(.35)}.notes-speech-status--unsupported{max-width:none;font-size:.65rem;line-height:1.35;text-align:left;font-weight:500}.notes-speech-status--unsupported strong{font-weight:650;color:var(--iso-text,#1e2b24)}.notes-speech-mic-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:50%;border:1px solid var(--iso-border,rgba(32,43,37,.22));background:linear-gradient(168deg,#ffffff 0,var(--iso-panel,#eef4f0) 100%);color:var(--iso-primary,#3a6150);cursor:pointer;box-shadow:0 1px 3px rgba(25,45,35,.08);transition:background .15s ease,border-color .15s ease,transform .12s ease}.notes-speech-mic-btn:hover:not(:disabled){background:linear-gradient(168deg,#fafdfb,#e4efe8);border-color:rgba(58,97,80,.35)}.notes-speech-mic-btn:focus-visible{outline:2px solid var(--iso-primary,#3a6150);outline-offset:2px}.notes-speech-mic-btn:disabled{opacity:.45;cursor:not-allowed}.notes-speech-mic-btn--active{background:linear-gradient(168deg,#e8f5e9,#c8e6c9);border-color:rgba(67,160,71,.55);color:#2e7d32}@media (prefers-reduced-motion:no-preference){.notes-speech-mic-btn--active{animation:notes-speech-mic-pulse 1.25s ease-in-out infinite}}@keyframes notes-speech-mic-pulse{0%,to{box-shadow:0 0 0 0 rgba(67,160,71,.35)}50%{box-shadow:0 0 0 8px rgba(67,160,71,0)}}.notes-speech-status{font-size:.68rem;line-height:1.3;text-align:center;margin:0;max-width:5.25rem;word-break:break-word;color:var(--iso-muted,#46544c)}.notes-speech-tts-stack{display:flex;flex-direction:column;align-items:center;gap:5px;min-height:64px;justify-content:flex-start}.notes-speech-tts-on-pill{font-size:.62rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:linear-gradient(180deg,#1e88e5,#1565c0);color:#ffffff;line-height:1.15;box-shadow:0 1px 4px rgba(13,71,161,.35);border:1px solid rgba(255,255,255,.35)}.notes-speech-tts-off-hint{font-size:.58rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.55;line-height:1.15;min-height:1.15em}.notes-speech-tts-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:50%;border:1px solid var(--iso-border,rgba(32,43,37,.22));background:linear-gradient(168deg,#ffffff,#f0f4fa);color:#1565c0;cursor:pointer;box-shadow:0 1px 3px rgba(25,45,35,.08);transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .15s ease}.notes-speech-tts-btn:hover:not(:disabled){background:linear-gradient(168deg,#fafcfe,#e3ecf7);border-color:rgba(21,101,192,.35)}.notes-speech-tts-btn:focus-visible{outline:2px solid #1565c0;outline-offset:2px}.notes-speech-tts-btn--on{background:linear-gradient(165deg,#2196f3,#1976d2 48%,#0d47a1);border:2px solid #052e6e;color:#ffffff;box-shadow:0 0 0 3px rgba(33,150,243,.45),0 4px 14px rgba(13,71,161,.4);transform:scale(1.04)}.notes-speech-tts-btn--on:hover:not(:disabled){background:linear-gradient(165deg,#42a5f5,#1e88e5 50%,#1565c0);border-color:#0d47a1;color:#ffffff;box-shadow:0 0 0 3px rgba(33,150,243,.55),0 5px 16px rgba(13,71,161,.45)}.notes-speech-tts-btn--on:focus-visible{outline:2px solid #ffffff;outline-offset:3px;box-shadow:0 0 0 3px rgba(33,150,243,.5),0 0 0 5px rgba(13,71,161,.35),0 4px 14px rgba(13,71,161,.4)}@media (prefers-reduced-motion:reduce){.notes-speech-tts-btn--on{transform:none}}.notes-speech-tts-btn--unsupported{opacity:.45;cursor:not-allowed;align-self:center;filter:grayscale(.35);color:var(--iso-muted,#46544c)}.notes-composer-send-row{align-items:stretch}.notes-composer-primary-actions{margin-top:.5rem;width:100%;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px}.notes-composer-primary-btn{line-height:1.35;white-space:normal;text-align:center;flex:1 1 12rem;min-width:min(100%,10rem)}.notes-composer-btn-icon{display:none}.notes-composer-btn--new,.notes-composer-btn--send,.notes-composer-btn--topics,.notes-composer-btn--try-next{display:inline-flex;align-items:center;justify-content:center;gap:8px}.notes-composer-trailing-icon{flex:0 0 auto;align-self:center}@media (max-width:960px){.notes-composer-primary-actions{flex-wrap:nowrap;gap:4px;margin-top:.65rem;align-items:flex-end}.notes-power-slider-wrap{min-width:64px;max-width:82px;flex:0 0 auto}.notes-power-label{font-size:.52rem}.notes-composer-primary-btn.notes-composer-btn--new,.notes-composer-primary-btn.notes-composer-btn--send,.notes-composer-primary-btn.notes-composer-btn--topics,.notes-composer-primary-btn.notes-composer-btn--try-next{flex:0 0 auto;min-width:44px;padding:8px}.notes-composer-btn-text-full{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.notes-composer-btn--new,.notes-composer-btn--send,.notes-composer-btn--topics,.notes-composer-btn--try-next{position:relative}.notes-composer-btn-icon{display:block}}.notes-power-slider-wrap{position:relative;display:flex;flex-direction:column;align-items:center;min-width:100px;max-width:120px;flex-shrink:0;padding:2px 4px 0}.notes-power-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;outline:none;cursor:pointer;transition:background .25s}.notes-power-slider--eco{background:linear-gradient(90deg,#43a047,#66bb6a 33%,#e0e0e0 34%)}.notes-power-slider--power{background:linear-gradient(90deg,#43a047,#fdd835 50%,#e0e0e0 51%)}.notes-power-slider--superpower{background:linear-gradient(90deg,#43a047,#fdd835 50%,#e53935)}.notes-power-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;border:2.5px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.22);cursor:pointer;-webkit-transition:background .2s,transform .15s;transition:background .2s,transform .15s}.notes-power-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;border:2.5px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.22);cursor:pointer;-moz-transition:background .2s,transform .15s;transition:background .2s,transform .15s}.notes-power-slider--eco::-webkit-slider-thumb{background:#43a047}.notes-power-slider--power::-webkit-slider-thumb{background:#f9a825}.notes-power-slider--superpower::-webkit-slider-thumb{background:#e53935}.notes-power-slider--eco::-moz-range-thumb{background:#43a047}.notes-power-slider--power::-moz-range-thumb{background:#f9a825}.notes-power-slider--superpower::-moz-range-thumb{background:#e53935}.notes-power-slider:active::-webkit-slider-thumb{transform:scale(1.18)}.notes-power-slider:active::-moz-range-thumb{transform:scale(1.18)}.notes-power-slider:disabled{opacity:.45;cursor:not-allowed}.notes-power-tooltip{position:absolute;top:-32px;transform:translateX(-50%);pointer-events:none;opacity:0;transition:opacity .25s ease,top .2s ease}.notes-power-tooltip--visible{opacity:1;top:-36px}.notes-power-tooltip-bubble{display:inline-block;font-size:.72rem;font-weight:600;padding:3px 8px;border-radius:6px;white-space:nowrap;box-shadow:0 2px 8px rgba(0,0,0,.15);color:#fff}.notes-power-tooltip-bubble--eco{background:#43a047}.notes-power-tooltip-bubble--power{background:#f9a825;color:#3e2c00}.notes-power-tooltip-bubble--superpower{background:#e53935}.notes-power-tooltip-bubble:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);border-left:5px solid transparent;border-right:5px solid transparent}.notes-power-tooltip-bubble--eco:after{border-top:5px solid #43a047}.notes-power-tooltip-bubble--power:after{border-top:5px solid #f9a825}.notes-power-tooltip-bubble--superpower:after{border-top:5px solid #e53935}.notes-power-labels{display:flex;justify-content:space-between;width:100%;margin-top:2px}.notes-power-label{font-size:.62rem;font-weight:500;color:var(--iso-muted,#999);text-transform:uppercase;letter-spacing:.02em;transition:color .2s,font-weight .2s}.notes-power-label--active{font-weight:700}.notes-power-label:first-child.notes-power-label--active{color:#43a047}.notes-power-label:nth-child(2).notes-power-label--active{color:#f9a825}.notes-power-label:nth-child(3).notes-power-label--active{color:#e53935}.notes-banner--warn{background:rgba(180,120,20,.08);color:var(--iso-text);border:1px solid rgba(180,120,20,.25);padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem}.notes-stall-actions{display:flex;flex-wrap:wrap;gap:8px}.notes-inline-code{font-size:.85em;padding:.1em .35em;border-radius:4px;background:rgba(32,43,37,.08)}.notes-subject-filter{display:flex;flex-wrap:wrap;gap:8px;margin:.75rem 0 1rem;align-items:center}.notes-subject-chip{font-size:.8rem;padding:6px 10px;border-radius:999px}.notes-folder-pill{display:inline-block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;color:var(--iso-primary,#3a6150);background:rgba(58,97,80,.12);padding:3px 8px;border-radius:6px;margin-bottom:6px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notes-modal-folder{margin:.25rem 0 0;font-size:.9rem}.notes-library-selection-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:.75rem 0 1rem;padding:10px 12px;border-radius:10px;background:rgba(32,43,37,.04);border:1px solid rgba(32,43,37,.08)}.notes-library-selection-actions{display:flex;flex-wrap:wrap;gap:8px}.notes-card-select-wrap{position:relative;display:flex;flex-direction:column;min-width:0}.notes-card-select-label{position:absolute;top:8px;left:8px;z-index:2;display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0;border-radius:6px;background:rgba(255,255,255,.92);box-shadow:0 1px 3px rgba(0,0,0,.12);cursor:pointer}.notes-card-select-label input{width:16px;height:16px;margin:0;cursor:pointer}.notes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:12px;gap:12px}.notes-card{text-align:left;border:1px solid var(--iso-border);border-radius:12px;overflow:hidden;background:var(--iso-panel);cursor:pointer;padding:0;width:100%}.notes-card-thumb{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.notes-card-thumb--empty{background:rgba(32,43,37,.06)}.notes-card-body{padding:10px 12px}.notes-card-title{font-weight:600;font-size:.95rem;color:var(--iso-text)}.notes-card-meta{font-size:.8rem;color:var(--iso-muted);margin-top:4px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.notes-status-pill{font-size:.7rem;text-transform:uppercase;padding:2px 6px;border-radius:4px;background:rgba(32,43,37,.08)}.notes-qa-row{display:flex;flex-direction:column;gap:10px}@media (min-width:640px){.notes-qa-row{flex-direction:row;align-items:flex-start}.notes-qa-row .notes-textarea{flex:1 1}}.notes-qa-answer{margin-top:1rem;padding:1rem;border-radius:12px;border:1px solid var(--iso-border);background:var(--iso-panel)}.notes-source-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:.5rem}.notes-source-thumb{padding:0;border:none;background:none;cursor:pointer;width:56px;height:56px;border-radius:8px;overflow:hidden;border:1px solid var(--iso-border)}.notes-source-thumb img{width:100%;height:100%;object-fit:cover}.notes-thumb-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:rgba(32,43,37,.06);font-size:1.2rem}.notes-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:1rem}.notes-chip{font-size:.85rem;padding:6px 10px;border-radius:999px;border:1px solid var(--iso-border);background:var(--iso-bg);cursor:pointer;color:var(--iso-text)}.notes-practice-list{margin:1rem 0 0;padding-left:1.25rem;line-height:1.6;color:var(--iso-text)}.notes-difficulty{font-size:.8rem;color:var(--iso-muted);margin-left:.5rem}.notes-processing-list{list-style:none;padding:0;margin:.5rem 0 0}.notes-processing-list li{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px solid rgba(32,43,37,.08);font-size:.9rem}.notes-status-badge{font-size:.75rem;color:var(--iso-muted);text-transform:uppercase}.notes-modal-root{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px}.notes-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45);border:none;cursor:pointer}.notes-modal-panel{position:relative;z-index:1;max-width:720px;width:100%;max-height:90vh;overflow:auto;background:var(--iso-panel);border-radius:16px;padding:1.25rem;border:1px solid var(--iso-border);box-shadow:0 12px 40px rgba(0,0,0,.15)}.notes-modal-head{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;justify-content:space-between;margin-bottom:.75rem}.notes-modal-head-main{flex:1 1;min-width:0}.notes-modal-head-actions{display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0}.notes-modal-head h3{margin:0}.notes-btn-delete{color:#8b1c1c;border-color:rgba(180,40,40,.35)}.notes-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:12px;gap:12px;margin-top:1rem}.notes-detail-thumb-wrap{padding:0;border:none;background:none;cursor:pointer;display:block;width:100%}.notes-detail-thumb-wrap img{width:100%;border-radius:8px;border:1px solid var(--iso-border)}.notes-extracted{font-size:.75rem;white-space:pre-wrap;word-break:break-word;max-height:160px;overflow:auto;margin:.5rem 0 0;padding:8px;background:rgba(32,43,37,.04);border-radius:6px}.notes-lightbox{position:relative;z-index:1;max-width:min(96vw,900px);max-height:90vh}.notes-lightbox-img{max-width:100%;max-height:80vh;border-radius:8px;display:block}.notes-lightbox-close{margin-top:12px}@keyframes skeleton-shimmer{0%{opacity:.35}50%{opacity:.6}to{opacity:.35}}.skeleton-bubble,.skeleton-line,.skeleton-pill{display:block;border-radius:6px;background:var(--muted,#c8ccd0);animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton-bubble{height:48px;border-radius:16px}.skeleton-bubble--assistant{width:65%;align-self:flex-start}.skeleton-bubble--user{width:45%;align-self:flex-end}.sb-login-page{max-width:420px;margin:0 auto;padding:2rem 1rem 3rem}.sb-login-header{text-align:center;margin-bottom:1.5rem}.sb-login-logo{max-height:48px;width:auto;object-fit:contain}.sb-login-logo-placeholder{width:120px;height:40px;margin:0 auto;border-radius:8px;background:var(--sb-brand-primary,var(--iso-panel));opacity:.35}.sb-login-title{font-size:1.35rem;font-weight:600;margin:.75rem 0 0}.sb-login-tenant-hint{color:var(--iso-muted);font-size:.9rem;margin:.5rem 0 0}.sb-login-form{gap:1rem}.sb-login-form,.sb-login-label{display:flex;flex-direction:column}.sb-login-label{gap:.35rem;font-size:.9rem;color:var(--iso-muted)}.sb-login-input{padding:.6rem .75rem;border:1px solid var(--iso-border);border-radius:8px;font:inherit;font-size:1rem;min-height:44px;background:#fff;color:var(--iso-text);box-sizing:border-box}.sb-login-error{color:#b42318;margin:0;font-size:.9rem}.sb-login-error--subscription{background:#fff3e0;border:1px solid #e65100;border-radius:8px;padding:.65rem .85rem;color:#bf360c;font-size:.88rem;line-height:1.45}.sb-login-submit{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;font-family:inherit;background:var(--sb-brand-primary,var(--iso-primary));color:#fff;padding:.75rem 1rem;border-radius:10px;font-weight:600;cursor:pointer;margin-top:.25rem;min-height:48px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.sb-login-submit:hover:not(:disabled){filter:brightness(1.06)}.sb-login-submit:focus-visible{outline:2px solid var(--sb-brand-primary,var(--iso-primary));outline-offset:2px}.sb-login-submit:disabled{opacity:.7;cursor:not-allowed}.sb-login-page--session-active .sb-login-header--session-active{margin-bottom:1.25rem}.sb-login-signed-in-card{border-radius:16px;border:1px solid color-mix(in srgb,var(--sb-brand-primary,var(--iso-primary)) 18%,var(--iso-border));background:color-mix(in srgb,var(--sb-brand-primary,var(--iso-primary)) 6%,var(--iso-panel,#fff));box-shadow:inset 0 1px 0 rgba(255,255,255,.65);padding:1.25rem 1.2rem 1.15rem;display:flex;flex-direction:column;gap:1rem}.sb-login-signed-in-card-top{text-align:center}.sb-session-pill{display:inline-flex;align-items:center;justify-content:center;margin:0 auto .65rem;padding:.28rem .65rem;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sb-brand-primary,var(--iso-primary));background:color-mix(in srgb,var(--sb-brand-primary,var(--iso-primary)) 14%,transparent);border:1px solid color-mix(in srgb,var(--sb-brand-primary,var(--iso-primary)) 22%,transparent)}.sb-login-signed-in-title{margin:0;font-size:1.125rem;font-weight:600;line-height:1.3;letter-spacing:-.02em;color:var(--iso-text)}.sb-login-signed-in-sub{font-size:.88rem;line-height:1.45;color:var(--iso-muted);max-width:22rem;margin:.45rem auto 0}.sb-login-signed-in-credentials{margin:0;padding:.85rem 1rem;border-radius:12px;background:#fff;border:1px solid rgba(32,43,37,.1);box-shadow:0 1px 2px rgba(22,38,30,.04);display:flex;flex-direction:column;align-items:center;gap:.4rem;text-align:center}.sb-login-signed-in-credentials dt{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sb-brand-primary,var(--iso-primary))}.sb-login-signed-in-credentials dd{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1.02rem;font-weight:500;letter-spacing:.02em;color:var(--iso-text);word-break:break-word;max-width:100%}.school-solutions-page .sb-login-embedded .sb-login-signed-in-card-top{text-align:left}.school-solutions-page .sb-login-embedded .sb-session-pill{margin-left:0;margin-right:0}.school-solutions-page .sb-login-embedded .sb-login-signed-in-sub{margin-left:0;margin-right:0;max-width:none}.school-solutions-page .sb-login-embedded .sb-login-signed-in-credentials{align-items:stretch;text-align:left}.school-solutions-page .sb-login-embedded .sb-login-signed-in-credentials dd,.school-solutions-page .sb-login-embedded .sb-login-signed-in-credentials dt{text-align:left}.sb-login-already-signed .sb-login-actions-row{display:flex;flex-direction:column;gap:.75rem;margin-top:.25rem}.sb-login-already-signed .sb-login-actions-row .sb-login-submit{font-family:inherit;font-size:1rem;font-weight:600;line-height:1.25;letter-spacing:.012em;border-radius:12px}@media (min-width:400px){.sb-login-already-signed .sb-login-actions-row{flex-direction:row;align-items:stretch}.sb-login-already-signed .sb-login-actions-row>.sb-login-submit{flex:1 1;min-width:0;margin-top:0}}.sb-login-already-signed .sb-login-submit--learn{box-shadow:0 1px 2px rgba(15,23,42,.12)}.sb-login-submit.sb-login-submit--outline{background:#fff;color:var(--iso-text);border:2px solid var(--iso-border);box-sizing:border-box}.sb-login-submit--outline:hover:not(:disabled){border-color:var(--sb-brand-primary,var(--iso-primary))}.sb-login-submit.sb-login-submit--outline:focus-visible{outline:2px solid var(--sb-brand-primary,var(--iso-primary));outline-offset:2px}.sb-login-submit.sb-login-submit--learn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box;background:var(--sb-brand-primary,#1e3a5f);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent}.sb-login-submit.sb-login-submit--learn:hover{filter:brightness(1.06)}.sb-login-submit.sb-login-submit--learn:focus-visible{outline:2px solid var(--sb-brand-primary,var(--iso-primary));outline-offset:2px}.sb-login-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2rem;font-size:.9rem}.sb-login-nav a{color:var(--sb-brand-accent,var(--iso-primary))}.sb-login-embedded{max-width:100%;margin:0;padding:.5rem 0 0}.sb-sign-in-mode{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.sb-sign-in-mode-btn{flex:1 1;min-width:min(120px,100%);min-height:44px;padding:.5rem .75rem;border-radius:8px;border:1px solid var(--iso-border);background:var(--iso-panel);font:inherit;cursor:pointer;color:var(--iso-text);touch-action:manipulation}.sb-sign-in-mode-btn--active{border-color:var(--sb-brand-primary,var(--iso-primary));background:color-mix(in srgb,var(--sb-brand-primary,var(--iso-primary)) 12%,transparent)}.sb-sign-in-mode-hint{font-size:.9rem;color:var(--iso-muted);margin:0 0 1rem;line-height:1.45}.sb-sign-in-secondary{margin-top:.5rem;padding:.5rem .25rem;min-height:44px;background:none;border:none;color:var(--sb-brand-accent,var(--iso-primary));font:inherit;cursor:pointer;text-decoration:underline;text-align:center;touch-action:manipulation}.sb-platform-modal-panel{margin-top:0;padding:1.35rem 1.45rem 1.45rem;border-radius:14px;border:1px solid rgba(15,23,42,.18);background:#f1f5f9;box-shadow:0 25px 50px -12px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.95);color:#0f172a}.sb-platform-modal-panel .login-section-title{color:#0f172a;font-weight:600}.sb-platform-modal-panel .sb-login-label{color:#0f172a;font-weight:600;font-size:.88rem}.sb-platform-modal-panel .sb-login-input,.sb-platform-modal-panel textarea.sb-login-input{border-color:#64748b;background:#ffffff;color:#0f172a}.sb-platform-modal-panel .sb-login-input::placeholder{color:#64748b}.sb-platform-modal-panel .muted{color:#334155!important}.sb-platform-modal-panel .muted strong{color:#0f172a;font-weight:700}.sb-platform-modal-panel .sb-login-error{color:#b91c1c;font-weight:500}.sb-platform-modal-panel .btn{color:#0f172a;border-color:#94a3b8;background:#ffffff}.sb-platform-modal-panel .btn:hover:not(:disabled){background:#f8fafc;border-color:#64748b}.school-messaging-root{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:20px;gap:20px}@media (min-width:960px){.school-messaging-root{grid-template-columns:minmax(280px,1fr) minmax(0,2fr)}}.question-paper-preview-modal.teacher-challenges-modal--pack-preview{max-width:min(960px,96vw);width:min(960px,96vw);max-height:min(92vh,calc(100dvh - 2rem));min-height:0;display:flex;flex-direction:column;overflow:hidden}.question-paper-preview-modal-head{flex-wrap:wrap;gap:.5rem;align-items:flex-start}.question-paper-preview-modal-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-left:auto;justify-content:flex-end}.question-paper-modal-scroll{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;padding:.75rem 1rem 1rem;background:#e8eef0}.question-paper-preview-modal-foot{padding:.75rem 1rem 1rem;border-top:1px solid rgba(15,23,42,.12);display:flex;justify-content:center}.question-paper-sheet{max-width:210mm;margin:0 auto;background:#fff;color:#111;padding:14mm 16mm 16mm;box-shadow:0 2px 24px rgba(0,0,0,.12);border:1px solid rgba(15,23,42,.12);font-family:var(--font-sans,system-ui,sans-serif);line-height:1.4}.question-paper-hdr{text-align:center;border-bottom:1px solid #333;padding-bottom:.75rem;margin-bottom:1rem}.question-paper-logo img{max-height:18mm;max-width:100%;object-fit:contain}.question-paper-title{text-align:center;font-size:1.15rem;font-weight:700;margin:.5rem 0 .75rem}.question-paper-meta-exam{text-align:center;font-size:.88rem;margin-bottom:.75rem;display:flex;flex-wrap:wrap;gap:.35rem .75rem;justify-content:center}.question-paper-meta-chip strong{font-weight:600}.question-paper-meta-dl{display:grid;grid-template-columns:auto 1fr;grid-gap:.25rem 1rem;gap:.25rem 1rem;font-size:.85rem;margin:0 0 1rem;padding:.5rem .75rem;background:#f8fafc;border-radius:8px}.question-paper-meta-row{display:contents}.question-paper-meta-row dt{margin:0;font-weight:600;color:#166534;text-transform:uppercase;font-size:.72rem;letter-spacing:.04em}.question-paper-meta-row dd{margin:0;font-family:ui-monospace,monospace;font-size:.82rem}.question-paper-gen-ins{font-size:.88rem;padding:.5rem .65rem;border:1px solid #cbd5e1;border-radius:6px;margin-bottom:1rem;white-space:pre-wrap}.question-paper-q-list{list-style:none;padding:0;margin:0}.question-paper-q{margin-bottom:1.25rem}.question-paper-q-stem{display:grid;grid-template-columns:2em minmax(0,1fr) auto;align-items:start;grid-column-gap:.5rem;column-gap:.5rem;grid-row-gap:.25rem;row-gap:.25rem}.question-paper-q-stem--no-num{grid-template-columns:minmax(0,1fr) auto}.question-paper-q-stem-body{min-width:0}.question-paper-q-num{font-weight:700;margin-right:0;flex-shrink:0;line-height:1.35;padding-top:.06em}.question-paper-marks{font-weight:600;color:#334155;font-size:.9em;text-align:right;white-space:nowrap;padding-top:.06em}.question-paper-q-ins{font-style:italic;font-size:.88rem;margin:.35rem 0 0 1.35rem;color:#334155}.question-paper-q-ins .chat-message-md{font-style:italic}.question-paper-options{margin:.35rem 0 0 1.35rem}.question-paper-opt-row{display:flex;align-items:flex-start;gap:.35rem;margin:.2rem 0}.question-paper-opt-body{flex:1 1;min-width:0}.question-paper-opt-label{font-weight:700;margin-right:.35em}.question-paper-img-wrap{margin-top:.75rem;text-align:left}.question-paper-img{max-width:75%;max-height:280px;width:auto;height:auto;display:block;margin:.35rem 0 0;object-fit:contain;border-radius:4px}.question-paper-muted{color:#64748b;font-style:italic;font-size:.88rem}.question-paper-answer-space{margin-top:.5rem;min-height:8rem;border-bottom:1px solid #cbd5e1;background:repeating-linear-gradient(180deg,transparent 0,transparent 1.45rem,#e2e8f0 0,#e2e8f0 1.5rem)}.question-paper-answer-space--compact{min-height:2.25rem;background:#f8fafc;background-image:none}.question-paper-answer-space-ruled{margin-top:0}.question-paper-subjective-wrap{margin-top:.5rem}.question-paper-diagram-pad{margin-top:.35rem;min-height:1.5rem;background:#f1f5f9;border:1px dashed #94a3b8;box-sizing:border-box}.question-paper-answer-space-empty{margin-top:.5rem;background:#f8fafc}.question-paper-ruled-row{border-bottom:1px solid #cbd5e1;box-sizing:border-box}.question-paper-total-marks{text-align:right;font-weight:700;margin-top:1rem}.question-paper-footer{margin-top:1.5rem;padding-top:.5rem;border-top:1px solid #94a3b8;text-align:center;color:#334155}.question-paper-full-page{display:flex;flex-direction:column;min-height:70vh;width:100%;min-width:0;box-sizing:border-box}.question-paper-full-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem}.question-paper-full-actions{margin-left:auto;display:flex;flex-wrap:wrap;gap:.5rem}.question-paper-full-page .question-paper-full-scroll{flex:1 1;overflow:auto;background:#e8eef0;padding:1rem;border-radius:10px;width:100%;max-width:min(54rem,calc(100vw - 3.5rem));margin-inline:auto;box-sizing:border-box}.question-paper-full-footer-actions{margin-top:1rem;display:flex;justify-content:center}.question-paper-wizard{width:min(720px,96vw);max-width:720px;box-sizing:border-box;max-height:min(92vh,880px);display:flex;flex-direction:column;min-width:0}.question-paper-wizard.question-paper-wizard--inline{width:100%;max-width:none;margin:0;max-height:none;min-width:0;flex:0 1 auto;background:rgba(255,255,255,.96);border-radius:12px;padding:.65rem 1rem 1rem;border:1px solid rgba(58,97,80,.14);box-shadow:0 1px 2px rgba(15,23,42,.06);box-sizing:border-box}.question-paper-wizard.question-paper-wizard--inline .question-paper-wizard-body{max-height:none;min-width:0;width:100%;overflow-x:hidden}.question-paper-wizard-head{margin-bottom:.15rem}.question-paper-wizard .teacher-challenges-progress{margin:.15rem 0 1rem}.question-paper-wizard .teacher-challenges-progress__list{display:flex;list-style:none;margin:0 0 .5rem;padding:0;gap:.25rem;justify-content:space-between}.question-paper-wizard .teacher-challenges-progress__step{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:.3rem;text-align:center;min-width:0}.question-paper-wizard .teacher-challenges-progress__step-num{display:flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;border-radius:999px;font-size:.78rem;font-weight:800;border:2px solid rgba(58,97,80,.28);background:rgba(255,255,255,.95);color:rgba(32,43,37,.5)}.question-paper-wizard .teacher-challenges-progress__step--done .teacher-challenges-progress__step-num{background:var(--iso-primary);border-color:var(--iso-primary);color:#fff}.question-paper-wizard .teacher-challenges-progress__step--current .teacher-challenges-progress__step-num{border-color:var(--iso-primary);background:rgba(58,97,80,.14);color:var(--iso-primary);box-shadow:0 0 0 2px rgba(58,97,80,.12)}.question-paper-wizard .teacher-challenges-progress__step-label{font-size:.62rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase;color:rgba(32,43,37,.42);line-height:1.15;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere}.question-paper-wizard .teacher-challenges-progress__step--current .teacher-challenges-progress__step-label{color:var(--iso-primary)}.question-paper-wizard .teacher-challenges-progress__step--done .teacher-challenges-progress__step-label{color:rgba(32,43,37,.58)}.question-paper-wizard .teacher-challenges-progress__track{height:7px;border-radius:999px;background:rgba(58,97,80,.14);overflow:hidden}.question-paper-wizard .teacher-challenges-progress__fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--iso-primary),rgba(58,97,80,.82));transition:width .28s ease}.question-paper-wizard-backdrop{z-index:450}.question-paper-wizard-body{overflow:auto;flex:1 1;min-height:0;min-width:0;padding:.75rem 1rem}.question-paper-wizard-form{display:flex;flex-direction:column;gap:.85rem;width:100%;min-width:0;box-sizing:border-box}.question-paper-wizard-logo-strip{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;width:100%}.question-paper-wizard-logo-field.school-roster-field{width:100%;margin:0;align-self:stretch}.question-paper-wizard-logo-field input[type=file]{align-self:stretch;width:100%;max-width:100%;box-sizing:border-box;min-height:2.75rem;padding:.4rem .65rem .4rem .45rem;border:1px solid rgba(58,97,80,.22);border-radius:10px;background:#eff5f1;font:inherit;font-size:.88rem;font-weight:500;color:var(--iso-text);cursor:pointer;line-height:1.35}.question-paper-wizard-logo-field input[type=file]:focus{outline:none}.question-paper-wizard-logo-field input[type=file]:focus-visible{outline:2px solid rgba(58,97,80,.45);outline-offset:2px}.question-paper-wizard-logo-field input[type=file]:disabled{opacity:.65;cursor:not-allowed}.question-paper-wizard-logo-field input[type=file]::-webkit-file-upload-button{margin-right:.85rem;padding:.5rem 1.05rem;border:1px solid rgba(58,97,80,.35);border-radius:8px;background:rgba(255,255,255,.92);color:rgba(22,38,30,.92);font:inherit;font-size:.86rem;font-weight:650;letter-spacing:.02em;cursor:pointer;-webkit-transition:background .15s ease,border-color .15s ease;transition:background .15s ease,border-color .15s ease}.question-paper-wizard-logo-field input[type=file]::-webkit-file-upload-button,.question-paper-wizard-logo-field input[type=file]::file-selector-button{margin-right:.85rem;padding:.5rem 1.05rem;border:1px solid rgba(58,97,80,.35);border-radius:8px;background:rgba(255,255,255,.92);color:rgba(22,38,30,.92);font:inherit;font-size:.86rem;font-weight:650;letter-spacing:.02em;cursor:pointer;-webkit-transition:background .15s ease,border-color .15s ease;transition:background .15s ease,border-color .15s ease}.question-paper-wizard-logo-field input[type=file]:hover:not(:disabled)::-webkit-file-upload-button{background:rgba(58,97,80,.08);border-color:rgba(58,97,80,.45)}.question-paper-wizard-logo-field input[type=file]:hover:not(:disabled)::-webkit-file-upload-button,.question-paper-wizard-logo-field input[type=file]:hover:not(:disabled)::file-selector-button{background:rgba(58,97,80,.08);border-color:rgba(58,97,80,.45)}.question-paper-wizard-logo-field input[type=file]:disabled::-webkit-file-upload-button{opacity:.55;cursor:not-allowed}.question-paper-wizard-logo-field input[type=file]:disabled::-webkit-file-upload-button,.question-paper-wizard-logo-field input[type=file]:disabled::file-selector-button{opacity:.55;cursor:not-allowed}.question-paper-wizard-logo-hint{margin:0;max-width:100%}.question-paper-wizard-logo-remove{flex:0 0 auto;width:auto;align-self:flex-start;white-space:nowrap;padding-inline:1rem}.question-paper-wizard-sub{font-size:.98rem;font-weight:650;color:var(--iso-text);margin:1rem 0 .35rem;letter-spacing:.01em}.question-paper-wizard-header-block{border:1px solid rgba(58,97,80,.18);border-radius:12px;padding:1rem 1.15rem 1.1rem;margin-bottom:.85rem;background:rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.85);width:100%;box-sizing:border-box}.question-paper-wizard-footer-block{margin-bottom:0}.question-paper-wizard-header-block__title{font-size:.72rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:var(--iso-primary);margin:0 0 .65rem;line-height:1.35}.question-paper-wizard-header-block__grid{display:grid;grid-gap:.75rem 1rem;gap:.75rem 1rem;grid-template-columns:1fr;align-items:end}.question-paper-wizard-header-block__stack{display:flex;flex-direction:column;gap:.85rem;width:100%;align-items:stretch}@media (min-width:480px){.question-paper-wizard-header-block__grid{grid-template-columns:1fr minmax(5.5rem,6.75rem)}}.question-paper-wizard-header-field.school-roster-field{margin:0;gap:.45rem;min-width:0}.question-paper-wizard-header-field.school-roster-field>span{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary);margin-bottom:.05rem}.question-paper-wizard-header-field .input{width:100%;max-width:100%;min-width:0;min-height:2.75rem;padding:.55rem .75rem;font-size:.95rem;box-sizing:border-box}.question-paper-wizard-header-field input.input[type=date],.question-paper-wizard-header-field input.input[type=time]{display:block}.question-paper-wizard-header-field textarea.input{min-height:5.5rem;resize:vertical;line-height:1.45}.question-paper-wizard-header-field--size .input{text-align:center;padding-inline:.4rem}.question-paper-wizard-header-italic{margin-top:.65rem;margin-bottom:0;align-items:center}.question-paper-wizard-header-block>.question-paper-wizard-header-italic{margin-top:.4rem}.question-paper-wizard-header-italic>span{font-size:.9rem;font-weight:500;text-transform:none;letter-spacing:normal;color:var(--iso-text)}.question-paper-wizard-preview-wrap{position:relative}.question-paper-wizard-preview-scroll{overflow:auto;overflow-x:auto;max-width:100%;max-height:55vh;background:#e8eef0;padding:.75rem;border-radius:8px;box-sizing:border-box}.question-paper-wizard-preview-print{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:8px;background:rgba(15,23,42,.82);color:#fff;font:inherit;font-size:.88rem;font-weight:600;cursor:pointer;opacity:0;transition:opacity .18s ease;pointer-events:none;z-index:2;box-shadow:0 2px 8px rgba(0,0,0,.18)}.question-paper-wizard-preview-print:focus-visible,.question-paper-wizard-preview-wrap:hover .question-paper-wizard-preview-print{opacity:1;pointer-events:auto}.question-paper-wizard-preview-print:hover{background:rgba(15,23,42,.95)}.question-paper-wizard-nav{display:flex;justify-content:space-between;gap:.5rem;padding:.75rem 1rem 1rem;border-top:1px solid rgba(15,23,42,.1)}.question-paper-wizard-downloads{display:flex;flex-direction:column;gap:.65rem;align-items:flex-start}.chat-page.school-roster-chat .school-messaging-gmail__folder-group{display:flex;flex-direction:column;gap:2px;padding-bottom:4px;margin-bottom:4px;border-bottom:1px solid rgba(15,23,42,.06)}.chat-page.school-roster-chat .school-messaging-gmail__folder-group:last-child{border-bottom:none}.chat-page.school-roster-chat .school-messaging-gmail__folder-accordion-head{display:grid;grid-template-columns:var(--messaging-folder-disclosure,1.5rem) minmax(0,1fr);grid-column-gap:var(--messaging-folder-head-gap,.125rem);column-gap:var(--messaging-folder-head-gap,.125rem);align-items:center}.chat-page.school-roster-chat .school-messaging-gmail__folder-accordion-toggle{display:flex;align-items:center;justify-content:center;align-self:stretch;width:100%;min-height:2.75rem;margin:0;padding:0;border:none;border-radius:8px;background:transparent;color:inherit;cursor:pointer;font:inherit}.chat-page.school-roster-chat .school-messaging-gmail__folder-accordion-toggle:hover{background:rgba(58,97,80,.08)}.chat-page.school-roster-chat .school-messaging-gmail__folder-accordion-toggle:focus-visible{outline:2px solid var(--iso-primary,#3a6150);outline-offset:2px}.chat-page.school-roster-chat .school-messaging-gmail__folder-accordion-chevron{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;font-size:1.05rem;line-height:1;font-weight:700;opacity:.92;transition:transform .15s ease;transform:rotate(0deg)}.chat-page.school-roster-chat .school-messaging-gmail__folder-accordion-chevron[data-expanded=true]{transform:rotate(90deg)}.chat-page.school-roster-chat .school-messaging-gmail__folder-row--accordion-root{flex:1 1;min-width:0;padding-left:6px}.chat-page.school-roster-chat .school-messaging-gmail__folder-row--accordion-root>span:first-child{flex:1 1 auto;min-width:0;text-align:left}.chat-page.school-roster-chat .school-messaging-gmail__folder-row--accordion-root .school-messaging-gmail__folder-row-text{flex:1 1 auto;min-width:0}.chat-page.school-roster-chat .school-messaging-gmail__folder-accordion-panel{display:flex;flex-direction:column;gap:2px;padding-left:calc(var(--messaging-folder-disclosure, 1.5rem) + var(--messaging-folder-head-gap, .125rem) + var(--messaging-folder-child-tree, .875rem))}.chat-page.school-roster-chat .school-messaging-gmail__folder-row--child{font-size:.86rem;opacity:.92}.chat-page.school-roster-chat .school-messaging-gmail__search{padding:6px 4px 4px}.chat-page.school-roster-chat .school-messaging-gmail__search-input{width:100%;padding:7px 10px;border-radius:8px;border:1px solid rgba(15,23,42,.12);background:rgba(255,255,255,.85);font:inherit;font-size:.86rem;color:inherit}.chat-page.school-roster-chat .school-messaging-gmail__search-input:focus-visible{outline:2px solid var(--iso-primary,#3a6150);outline-offset:1px;border-color:var(--iso-primary,#3a6150)}.school-messaging-gmail__row-grid{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto auto;grid-column-gap:12px;column-gap:12px;grid-row-gap:2px;row-gap:2px;align-items:baseline;min-width:0;width:100%}.school-messaging-gmail__row-name{grid-column:1;grid-row:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:.92rem}.school-messaging-gmail__row-time{grid-column:2;grid-row:1;font-size:.78rem;white-space:nowrap;opacity:.8;text-align:right}.school-messaging-gmail__row-chips{grid-column:1/3;grid-row:2;display:flex;flex-wrap:wrap;gap:6px;font-size:.74rem;opacity:.85}.school-messaging-gmail__row-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:rgba(58,97,80,.1);color:var(--iso-primary,#3a6150)}.school-messaging-gmail__row-preview{grid-column:1/3;grid-row:3;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;opacity:.8}.school-messaging-gmail__row-counts{display:inline-flex;gap:6px;margin-left:6px;font-size:.72rem;opacity:.85}.school-messaging-gmail__row-count-pill{padding:1px 7px;border-radius:999px;background:rgba(15,23,42,.06)}.school-messaging-gmail__row-count-pill--unread{background:var(--iso-primary,#3a6150);color:#fff}.school-messaging-bcc-banner{margin:8px 0 4px;padding:8px 12px;border-radius:10px;background:rgba(58,97,80,.09);color:var(--iso-primary,#3a6150);font-size:.86rem;border:1px solid rgba(58,97,80,.18)}.school-messaging-attachment-list{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}.school-messaging-attachment{display:flex;flex-direction:column;gap:4px;padding:8px;border-radius:10px;border:1px solid rgba(15,23,42,.12);background:#fff;width:180px;font-size:.8rem}.school-messaging-attachment__thumb{width:100%;height:120px;object-fit:cover;border-radius:6px;background:rgba(15,23,42,.04)}.school-messaging-attachment__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.school-messaging-attachment__meta{font-size:.72rem;opacity:.75}.school-messaging-attachment__pdf-icon{width:100%;height:120px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:rgba(220,38,38,.08);color:rgba(153,27,27,.95);font-weight:700;font-size:.95rem}.school-messaging-recipient-modal-overlay{position:fixed;inset:0;z-index:21000;background:rgba(15,22,18,.55);display:flex;align-items:center;justify-content:center;padding:1rem}.school-messaging-recipient-modal{background:#fff;border-radius:12px;width:min(96vw,720px);max-height:86vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.25)}.school-messaging-recipient-modal__head{padding:12px 16px;border-bottom:1px solid rgba(15,23,42,.08);display:flex;align-items:center;justify-content:space-between;gap:12px}.school-messaging-recipient-modal__body{padding:12px 16px;overflow:auto;flex:1 1 auto;display:flex;flex-direction:column;gap:10px}.school-messaging-recipient-modal__row{display:grid;grid-template-columns:1fr auto;align-items:center;grid-gap:10px;gap:10px;padding:8px 10px;border-radius:8px;background:rgba(15,23,42,.03)}.school-messaging-recipient-modal__row-status{font-size:.74rem;padding:2px 8px;border-radius:999px;background:rgba(15,23,42,.08)}.school-messaging-recipient-modal__row-status--read{background:rgba(58,97,80,.18);color:var(--iso-primary,#3a6150)}.school-messaging-recipient-modal__row-status--replied{background:rgba(37,99,235,.16);color:rgb(37,99,235)}.perf-rating{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:600;color:#fff}.perf-rating--acquiring{background:#c2410c}.perf-rating--developing{background:#ca8a04}.perf-rating--progressing{background:#2563eb}.perf-rating--proficient{background:#059669}.perf-rating--established{background:#047857}.perf-report-progress{margin:16px 0 20px}.perf-report-progress__label{font-size:.9rem;margin:0 0 8px;color:var(--iso-muted)}.perf-report-progress__bar{overflow:hidden;height:8px;background:rgba(15,23,42,.08);border-radius:4px}.perf-report-progress__fill{height:100%;background:var(--iso-primary,#3a6150);border-radius:4px;transition:width .3s ease}.perf-report-legend{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.perf-report-review-stack{display:flex;flex-direction:column;gap:1.25rem}.perf-report-review-details,.perf-report-review-search,.perf-report-review-students{padding:clamp(1rem,2vw,1.35rem)}.perf-report-review-context{display:flex;flex-wrap:wrap;gap:8px 10px;margin:0 0 1rem;padding:.75rem 1rem;background:rgba(58,97,80,.06);border:1px solid rgba(58,97,80,.12);border-radius:10px}.perf-report-review-details .perf-report-review-context{margin-bottom:1rem}.perf-report-review-context__chip{display:inline-flex;align-items:center;padding:.2rem .65rem;font-size:.8rem;font-weight:600;color:var(--iso-text);background:#fff;border:1px solid rgba(58,97,80,.14);border-radius:999px}.perf-report-review-context__chip--title{font-weight:700;color:var(--iso-primary)}.perf-report-review-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin:0}.perf-report-review-bar .perf-report-legend{margin:0;flex:1 1 auto;min-width:0}.perf-report-review-bar__action{flex-shrink:0;margin-left:auto}.perf-report-student-toolbar__search-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem 1rem}.perf-report-student-toolbar__search-field{flex:1 1 min(100%,20rem);min-width:0}.perf-report-student-toolbar__search-input{width:100%;max-width:none}.perf-report-student-toolbar__clear{flex-shrink:0;margin-bottom:.15rem}.perf-report-student-toolbar__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem 1rem;padding-top:1rem}.perf-report-student-toolbar__count{margin:0;font-size:.88rem}.perf-report-student-toolbar__count strong{color:var(--iso-text);font-weight:700}.perf-report-student-toolbar__buttons{display:flex;flex-wrap:wrap;gap:.5rem}.perf-report-students-list{display:flex;flex-direction:column;gap:14px}.perf-report-students-pagination{margin-top:1rem;flex-wrap:wrap;gap:.65rem 1rem}.perf-report-students-pagination__summary{font-size:.82rem}.perf-report-students-pagination__page-size{display:inline-flex;align-items:center;gap:.5rem}.perf-report-students-pagination__label{font-size:.82rem;white-space:nowrap}.perf-report-students-pagination__select{width:auto;min-width:0;padding:.18rem .4rem;font-size:.82rem}.perf-report-students-pagination__nav{display:inline-flex;align-items:center;gap:.35rem}.perf-report-students-pagination__page-indicator{font-size:.82rem;white-space:nowrap}.perf-report-empty-search{margin:0 0 1rem;padding:1rem 1.1rem;background:rgba(58,97,80,.05);border-radius:10px}.perf-report-empty-search .school-roster-inline-link{margin:0;padding:0;border:none;background:none;font:inherit;font-weight:600;color:var(--iso-primary);text-decoration:underline;cursor:pointer}.perf-report-meta{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:.88rem;margin:12px 0 8px}.perf-report-status{text-transform:capitalize;font-weight:600}.perf-report-status--published{color:var(--iso-primary)}.perf-report-student-card{margin-bottom:0;padding:0;border:1px solid var(--iso-border,rgba(15,23,42,.12));border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.04);overflow:hidden}.perf-report-student-card--expanded{border-color:rgba(58,97,80,.28);box-shadow:0 2px 8px rgba(58,97,80,.08)}.perf-report-student-card__header{display:flex;justify-content:space-between;align-items:stretch;gap:10px;margin-bottom:0;padding:12px 14px;background:rgba(58,97,80,.04);border-bottom:1px solid transparent}.perf-report-student-card--expanded .perf-report-student-card__header{border-bottom-color:rgba(15,23,42,.08);margin-bottom:0}.perf-report-student-card--collapsed .perf-report-student-card__header{border-bottom:none}.perf-report-student-card__header-trigger{display:flex;align-items:center;gap:10px;flex:1 1 auto;min-width:0;margin:0;padding:4px 6px;border:none;border-radius:8px;background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit}.perf-report-student-card__header-trigger:hover{background:rgba(58,97,80,.08)}.perf-report-student-card__header-trigger:focus-visible{outline:2px solid var(--iso-primary,#3a6150);outline-offset:2px}.perf-report-student-card__chevron{flex-shrink:0;width:1.25rem;font-size:.95rem;font-weight:700;color:var(--iso-primary);line-height:1}.perf-report-student-card__title-block{display:flex;flex-direction:column;gap:2px;min-width:0}.perf-report-student-card__name{font-size:1.05rem;font-weight:700;color:var(--iso-text);line-height:1.25}.perf-report-student-card__toggle-hint{font-size:.78rem;font-weight:500;color:var(--iso-muted)}.perf-report-student-card__regenerate{align-self:center;flex-shrink:0}.perf-report-student-card__summary{display:flex;flex-wrap:wrap;gap:8px 10px;padding:10px 14px 12px}.perf-report-student-card__summary-chip{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 8px;max-width:100%;padding:4px 8px 4px 10px;background:rgba(58,97,80,.05);border:1px solid rgba(58,97,80,.1);border-radius:8px}.perf-report-student-card__summary-label{font-size:.78rem;font-weight:600;color:var(--iso-text);max-width:14rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.perf-report-student-card__summary-chip .perf-report-rating{font-size:.68rem;padding:2px 7px}.perf-report-student-card__body{margin-top:0;padding:14px 16px 16px}.perf-report-student-card__empty{margin:0 0 12px;font-size:.9rem}.perf-report-category-tabs{flex-wrap:wrap;gap:6px 8px;margin-bottom:14px;align-items:flex-end}.perf-report-category-tabs__item{display:inline-flex;align-items:center;gap:2px;max-width:100%}.perf-report-category-tab{max-width:220px}.perf-report-category-tab__label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.perf-report-category-tab__input{max-width:240px;min-width:120px;cursor:text}.perf-report-category-tab__sources{font-size:.72rem;padding:2px 6px;flex-shrink:0}.perf-report-category-tab--rich{max-width:none}.perf-report-category-tab__parts{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.perf-report-category-tab__subject{font-weight:700;color:var(--iso-primary,#3a6150)}.perf-report-category-tab__sep{color:var(--iso-muted,#64748b);font-weight:600}.perf-report-category-tab__topic{font-weight:500}.perf-report-category-tab__parts .perf-report-rating{margin-left:2px;font-size:.72rem;padding:2px 8px}.perf-report-category-tab__info{flex-shrink:0;min-width:2rem;padding:4px 6px!important;font-size:.85rem;line-height:1}.perf-report-subject-feedback{display:flex;flex-direction:column;gap:16px;margin-top:16px}.perf-report-category-panel{margin-top:4px}.perf-report-category__notes{margin-top:12px}.perf-report-category__feedback{margin-top:0}.perf-report-category-readonly__feedback{margin-top:1rem}.perf-report-category-readonly__feedback h3{margin:0 0 .5rem;font-size:.88rem;font-weight:700;color:var(--iso-primary)}.perf-report-category{margin-top:16px;padding-top:16px;border-top:1px solid rgba(15,23,42,.06)}.chat-page.school-roster-chat .teacher-challenges-modal-backdrop.perf-report-exams-overlay-backdrop{align-items:flex-start;justify-content:center;padding:max(6rem,calc(4.75rem + env(safe-area-inset-top, 0px))) max(1rem,env(safe-area-inset-right,0px)) max(1.25rem,env(safe-area-inset-bottom,0px)) max(1rem,env(safe-area-inset-left,0px))}.chat-page.school-roster-chat .teacher-challenges-modal.perf-report-exams-overlay,.perf-report-exams-overlay{max-width:min(1180px,calc(100vw - 2rem));width:min(1180px,calc(100vw - 2rem));max-height:min(88vh,calc(100dvh - 7.5rem));display:flex;flex-direction:column;padding:18px 24px 22px;margin-top:0}.perf-report-exams-overlay__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.perf-report-exams-overlay__title{margin:0;font-size:1.1rem;color:var(--iso-text)}.perf-report-exams-overlay__subtitle{margin:4px 0 0;font-size:.88rem}.perf-report-exams-overlay__empty{margin:0}.perf-report-exams-overlay__table-wrap{overflow:auto;flex:1 1;min-height:0;-webkit-overflow-scrolling:touch}.perf-report-exams-overlay__table.school-data-table{min-width:920px}.perf-report-exams-overlay__table th{white-space:nowrap;overflow-wrap:normal;word-break:normal}.perf-report-exams-overlay__table td{overflow-wrap:break-word;word-break:normal}.perf-report-exams-overlay__table td:last-child,.perf-report-exams-overlay__table th:last-child{text-align:right;white-space:nowrap}.perf-report-exams-overlay__feedback{min-width:10rem;max-width:22rem;white-space:normal;word-break:break-word;font-size:.88rem;line-height:1.35}.perf-report-exams-overlay__grade,.perf-report-exams-overlay__marks{white-space:nowrap}.perf-report-exams-overlay__footer{display:flex;justify-content:center;margin-top:16px;padding-top:14px;border-top:1px solid rgba(15,23,42,.08);flex-shrink:0}.perf-report-exams-overlay__close{min-width:7.5rem}.perf-report-category__rating-row{display:grid;grid-template-columns:auto 1fr;grid-gap:8px 12px;gap:8px 12px;align-items:center;margin:10px 0}.perf-report-rating-slider{grid-column:1/-1;width:100%}.perf-report-rating-ticks{grid-column:1/-1;display:flex;justify-content:space-between;font-size:.65rem;color:var(--iso-muted);text-transform:uppercase;letter-spacing:.04em}.perf-report-rating-ticks .is-active{color:var(--iso-primary);font-weight:700}.perf-report-feedback-field{margin-top:16px}.perf-report-subjects-fieldset{grid-column:1/-1}.perf-report-subjects-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:6px 12px;gap:6px 12px;margin-top:8px}.perf-report-subject-option{display:flex;align-items:center;gap:8px;font-size:.9rem}.perf-report-relative-perf{grid-column:1/-1;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;align-self:start;gap:8px}.perf-report-source-exams-collapse{grid-column:1/-1;margin-top:8px;border:1px solid var(--iso-border,rgba(15,23,42,.12));border-radius:10px;background:rgba(255,255,255,.6)}.perf-report-source-exams-collapse__trigger{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit}.perf-report-source-exams-collapse__trigger:hover{background:rgba(58,97,80,.05)}.perf-report-source-exams-collapse__title{font-size:1rem;font-weight:600;color:var(--iso-primary,#3a6150)}.perf-report-source-exams-collapse__meta{flex:1 1;font-size:.88rem}.perf-report-source-exams-collapse__chevron{font-size:.85rem;color:var(--iso-muted,#64748b)}.perf-report-source-exams-collapse__panel{padding:0 14px 14px;border-top:1px solid var(--iso-border,rgba(15,23,42,.08))}.perf-report-source-exams-collapse__panel .perf-report-meta--in-collapse{margin:12px 0 10px;display:flex;flex-wrap:wrap;gap:8px 16px}.perf-report-source-exams-collapse__panel .perf-report-exam-banner{margin:0 0 12px}.perf-report-source-exams-collapse__panel .perf-report-date-edit{margin-top:0}.perf-report-source-exams--embedded{margin-top:0;padding-top:12px;border-top:0}.perf-report-source-exams{grid-column:1/-1;margin-top:8px;padding-top:16px;border-top:1px solid var(--iso-border,rgba(15,23,42,.12))}.perf-report-source-exams__head{margin-bottom:12px}.perf-report-source-exams__title{margin:0 0 4px;font-size:1rem;font-weight:600}.perf-report-source-exams__hint,.perf-report-source-exams__lead,.perf-report-source-exams__loading{margin:0;font-size:.9rem}.perf-report-source-exams__table-wrap{max-height:280px;overflow:auto}.perf-report-source-exams__select-col{width:2.75rem;text-align:center;vertical-align:middle}.perf-report-source-exams__select-all{display:inline-flex;align-items:center;justify-content:center;margin:0}.perf-report-source-exams__topics{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.perf-report-source-exams__row--included{background:rgba(34,197,94,.06)}.perf-report-source-exams__row--excluded{opacity:.88}.perf-report-source-exams__badge{display:inline-block;font-size:.8rem;line-height:1.3;padding:2px 8px;border-radius:999px;white-space:nowrap}.perf-report-source-exams__badge--yes{background:rgba(34,197,94,.14);color:#166534;font-weight:600}.perf-report-source-exams__badge--no{background:rgba(15,23,42,.06);color:var(--iso-muted,#64748b)}.perf-report-setup-actions{grid-column:1/-1}.perf-report-publish-panel{padding:1.25rem 1.35rem;background:rgba(58,97,80,.04);border:1px solid rgba(58,97,80,.14);border-radius:12px;display:grid;grid-gap:14px;gap:14px}.perf-report-review-students+.perf-report-publish-panel{margin-top:2.75rem}.perf-report-save-actions{margin-top:0;padding-top:0;border-top:none;display:grid;grid-gap:12px;gap:12px}.perf-report-save-buttons{display:flex;flex-wrap:wrap;gap:12px}.perf-report-category-readonly__rating{margin:0 0 10px}.perf-report-category-readonly__notes,.perf-report-feedback-readonly p{font-size:.92rem;line-height:1.5;color:var(--iso-text);margin:0}.student-exam-results-list__topics{max-width:14rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exam-marks-card-page{max-width:46rem;margin:0 auto;padding:0 .5rem 2rem}.exam-marks-card-preview-wrap{position:relative;padding:.75rem;border-radius:10px;background:#e8eef0}.exam-marks-card-preview-print:focus-visible,.exam-marks-card-preview-wrap:hover .exam-marks-card-preview-print{opacity:1;pointer-events:auto}.exam-marks-card{background:#fff;border:2px solid var(--iso-primary,#3a6150);border-radius:10px;overflow:hidden;box-shadow:0 1px 0 rgba(58,97,80,.08),0 8px 28px rgba(35,65,50,.1)}.exam-marks-card__band{height:6px;background:linear-gradient(90deg,#2d4f42 0,var(--iso-primary,#3a6150) 42%,#4a7a64 100%)}.exam-marks-card__body{padding:clamp(1.35rem,3vw,1.85rem) clamp(1.15rem,3vw,1.75rem) clamp(1.25rem,3vw,1.5rem)}.exam-marks-card__letterhead{text-align:center;padding-bottom:.85rem;margin-bottom:.85rem;border-bottom:1px solid rgba(58,97,80,.18)}.exam-marks-card__school-name{margin:0 0 .3rem;font-size:clamp(1.25rem,2.8vw,1.55rem);font-weight:750;letter-spacing:.02em;color:var(--iso-primary,#3a6150);line-height:1.2}.exam-marks-card__school-address{display:flex;flex-direction:column;gap:.1rem;font-style:normal;font-size:.86rem;line-height:1.4;color:var(--iso-muted,#46544c)}.exam-marks-card__doc-title{margin:0 0 1rem;text-align:center;font-size:.72rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase;color:var(--iso-primary,#3a6150)}.exam-marks-card__student{margin:0 0 1rem;padding:.65rem .85rem;background:rgba(58,97,80,.06);border:1px solid rgba(58,97,80,.14);border-radius:8px}.exam-marks-card__student-label{display:block;margin-bottom:.15rem;font-size:.68rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--iso-primary,#3a6150)}.exam-marks-card__student-name{margin:0;font-size:clamp(1.05rem,2.5vw,1.28rem);font-weight:700;color:var(--iso-text,#1e2b24);line-height:1.25}.exam-marks-card__meta-table,.report-card__meta-table{width:100%;border-collapse:separate;border-spacing:0;margin:0 0 1rem;padding:.65rem .85rem;background:rgba(58,97,80,.06);border:1px solid rgba(58,97,80,.14);border-radius:8px}.exam-marks-card__meta-table td,.report-card__meta-table td{width:50%;vertical-align:top;padding:.35rem .85rem .35rem 0}.exam-marks-card__meta-table td.report-card__meta-wide,.report-card__meta-table td.report-card__meta-wide{padding-top:.5rem}.exam-marks-card__meta-label,.report-card__meta-label{display:block;margin-bottom:.12rem;font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary,#3a6150)}.exam-marks-card__meta-value,.report-card__meta-value{display:block;font-size:.9rem;font-weight:600;line-height:1.35;color:var(--iso-text,#1e2b24);word-break:break-word}@media (max-width:520px){.exam-marks-card__meta-table td,.report-card__meta-table td{display:block;width:100%;padding-right:0}}.exam-marks-card__result{text-align:center;margin:0 0 1rem;padding:1rem .85rem;border:2px solid var(--iso-primary,#3a6150);border-radius:8px;background:rgba(250,252,249,.95)}.exam-marks-card__result-label{margin:0 0 .4rem;font-size:.68rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--iso-primary,#3a6150)}.exam-marks-card__result-value{margin:0;display:flex;flex-direction:column;align-items:center;gap:.15rem}.exam-marks-card__result-main{font-size:clamp(2rem,6vw,2.65rem);font-weight:800;line-height:1.05;color:var(--iso-text,#1e2b24);letter-spacing:-.02em}.exam-marks-card__result-denom{font-size:.95rem;font-weight:600;color:var(--iso-muted,#46544c)}.exam-marks-card__result-value--text .exam-marks-card__result-main{font-size:.95rem;font-weight:600;line-height:1.5;letter-spacing:normal;white-space:pre-wrap;max-width:100%}.exam-marks-card__result-value--absent .exam-marks-card__result-main{font-size:1.35rem;font-weight:700;color:#b45309}.exam-marks-card__remarks{margin:0 0 .85rem;padding-top:.75rem;border-top:1px solid rgba(58,97,80,.14)}.exam-marks-card__remarks h3{margin:0 0 .35rem;font-size:.68rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--iso-primary,#3a6150)}.exam-marks-card__remarks p{margin:0;font-size:.9rem;line-height:1.5;color:var(--iso-text,#1e2b24);white-space:pre-wrap}.exam-marks-card__footer{margin:0;padding-top:.75rem;border-top:1px dashed rgba(58,97,80,.2);text-align:center}.exam-marks-card__footer p{margin:0;font-size:.8rem;font-style:italic;color:var(--iso-muted,#46544c)}.exam-marks-card__issued{margin-top:.25rem!important;font-style:normal!important;font-size:.75rem!important}@media (max-width:520px){.exam-marks-card__meta{grid-template-columns:1fr}}@media print{.exam-marks-card-page,.report-card-page{max-width:none;padding:0}.exam-marks-card-preview-print,.report-card-toolbar{display:none!important}.exam-marks-card{box-shadow:none;border-width:1.5px;page-break-inside:avoid;break-inside:avoid}}.report-card-page{max-width:52rem;margin:0 auto;padding:0 .5rem 2rem}.school-solutions-root.school-class-assessment-list-page .report-card-page{max-width:none;width:100%;margin:0;padding:0 0 2rem}.report-card-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:.85rem}.report-card-preview-wrap{margin-top:0}.report-card.report-card{max-width:100%}.report-card__report-name{margin:0 0 1rem;text-align:center;font-size:.95rem;font-weight:600;color:var(--iso-text,#1e2b24);line-height:1.35}.report-card__empty{margin:0 0 1rem;font-size:.9rem}.report-card__legend{margin:0 0 .85rem;padding:.55rem .7rem;background:rgba(58,97,80,.05);border:1px solid rgba(58,97,80,.12);border-radius:8px}.report-card__legend-title{display:block;margin-bottom:.35rem;font-size:.68rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--iso-primary,#3a6150)}.report-card__legend-chips{display:block;line-height:1.85}.report-card__legend-chips .perf-rating{display:inline-block;margin:0 6px 6px 0;font-size:.68rem;padding:2px 10px;vertical-align:middle}.report-card__table-wrap{overflow-x:auto;margin:0 0 1rem;-webkit-overflow-scrolling:touch}.report-card__ratings-table{width:100%;border-collapse:collapse;font-size:.88rem}.report-card__ratings-table td,.report-card__ratings-table th{text-align:left;vertical-align:middle;padding:.55rem .7rem;border:1px solid rgba(58,97,80,.16)}.report-card__ratings-table th{font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary,#3a6150);background:rgba(58,97,80,.06);white-space:nowrap}.report-card__ratings-table td{color:var(--iso-text,#1e2b24);line-height:1.35}.report-card__ratings-table__actions{width:1%;white-space:nowrap;text-align:right}.report-card__ratings-table .perf-rating{font-size:.68rem;padding:3px 9px}.report-card__assessments-btn{margin:0;padding:0;border:none;background:none;font:inherit;font-size:.82rem;font-weight:600;color:var(--iso-primary,#3a6150);text-decoration:underline;cursor:pointer}.report-card__assessments-btn:hover{color:#2d4f42}.report-card__section-heading{margin:0 0 .65rem;font-size:.68rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--iso-primary,#3a6150)}.report-card__feedback-sections{margin-top:.25rem;padding-top:.85rem;border-top:1px solid rgba(58,97,80,.14)}.report-card__feedback-block{margin:0 0 .85rem;padding:.65rem .75rem;background:rgba(58,97,80,.04);border:1px solid rgba(58,97,80,.1);border-radius:8px}.report-card__feedback-block:last-child{margin-bottom:0}.report-card__feedback-block__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .65rem;margin-bottom:.45rem}.report-card__feedback-block__head h4{margin:0;font-size:.92rem;font-weight:700;color:var(--iso-text,#1e2b24)}.report-card__field-label{display:block;margin-bottom:.2rem;font-size:.68rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary,#3a6150)}.report-card__feedback p,.report-card__notes p{margin:0;font-size:.9rem;line-height:1.5;color:var(--iso-text,#1e2b24);white-space:pre-wrap}.report-card__notes+.report-card__feedback{margin-top:.55rem;padding-top:.55rem;border-top:1px solid rgba(58,97,80,.1)}.perf-report-student-readonly section+section{margin-top:20px}.school-solutions-root.school-class-assessment-page:not(.school-class-assessment-list-page) .chat-page.school-roster-chat .class-assessment-stack{max-width:52rem;margin:0 auto;padding:0 .5rem 2.5rem;display:flex;flex-direction:column;gap:1rem}.school-solutions-root.school-class-assessment-page .chat-page.school-roster-chat .class-assessment-stack{display:flex;flex-direction:column;gap:1rem}.school-class-assessment-page .class-assessment-loading{padding:1.5rem 0}.school-class-assessment-page .class-assessment-panel{margin-top:.15rem}.school-class-assessment-page .class-assessment-form-grid{gap:1rem 1.25rem}.school-class-assessment-page .class-assessment-roster-hint{margin:0;font-size:.88rem;line-height:1.45}.school-class-assessment-page .class-assessment-scoring-fieldset{border:1px solid rgba(58,97,80,.14);border-radius:14px;padding:.95rem 1.05rem 1rem;margin:0;background:rgba(255,255,255,.55);min-width:0}.school-class-assessment-page .class-assessment-scoring-fieldset>legend{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary);padding:0 .35rem;margin-bottom:.5rem;float:left;width:100%}.school-class-assessment-page .class-assessment-radio-group{display:flex;flex-wrap:wrap;gap:.65rem 1.25rem;clear:both;padding-top:.15rem}.school-class-assessment-page .class-assessment-radio{display:inline-flex;align-items:center;gap:.45rem;font-size:.92rem;color:var(--iso-text);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.school-class-assessment-page .class-assessment-radio input{accent-color:var(--iso-primary)}.school-class-assessment-page .class-assessment-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:.25rem}.school-class-assessment-page .class-assessment-comment-row td{padding-top:0;background:rgba(58,97,80,.03)}.school-class-assessment-page .class-assessment-scores-table .input{width:100%;min-width:0}.school-class-assessment-page .school-roster-hero .btn{margin-top:.35rem}.school-class-assessment-page .class-assessment-list-cta{margin:.5rem 0 0}.school-class-assessment-page .perf-report-subjects-fieldset{border:1px solid rgba(58,97,80,.14);border-radius:14px;padding:.95rem 1.05rem;margin:0;background:rgba(255,255,255,.55)}.school-class-assessment-page .perf-report-subjects-fieldset>legend{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--iso-primary);padding:0 .35rem;margin-bottom:.5rem}.school-class-assessment-page .perf-report-subject-option,.school-class-assessment-page .perf-report-subjects-all{display:flex;align-items:center;gap:.5rem;font-size:.92rem;cursor:pointer}.chat-page.school-roster-chat .school-class-assessment-page .perf-report-relative-perf.school-roster-field,.school-class-assessment-page .perf-report-relative-perf.school-roster-field{flex-direction:row;align-items:center;justify-content:flex-start;align-self:start;gap:.5rem}.chat-page.school-roster-chat .school-class-assessment-page .perf-report-relative-perf.school-roster-field>span{text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:700;color:var(--iso-primary);white-space:nowrap}.school-class-assessment-page .perf-report-empty{margin:.5rem 0 1rem}.school-class-assessment-page .school-roster-notice--error{border-color:rgba(220,38,38,.35);background:linear-gradient(145deg,rgba(255,251,251,.98),rgba(254,242,242,.95));color:#991b1b}.school-class-assessment-page .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (min-width:640px){.school-class-assessment-page .class-assessment-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.school-class-assessment-page .class-assessment-row--error td{background:rgba(254,242,242,.35)}.school-class-assessment-page .class-assessment-field-error{margin:4px 0 0;font-size:.8rem;color:#991b1b}.school-class-assessment-page .input--error{border-color:rgba(220,38,38,.55)}.school-class-assessment-page .class-assessment-absent-note{margin:0;font-size:.88rem;font-style:italic}.school-class-assessment-page .class-assessment-list-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.school-class-assessment-page .class-assessment-list-progress{display:flex;align-items:center;gap:8px;min-width:100px}.school-class-assessment-page .class-assessment-list-progress__bar{flex:1 1;height:6px;background:rgba(15,23,42,.08);border-radius:3px;overflow:hidden;min-width:48px}.school-class-assessment-page .class-assessment-list-progress__fill{height:100%;background:var(--iso-primary,#3a6150);border-radius:3px;transition:width .2s ease}.school-class-assessment-page .class-assessment-list-progress__label{font-size:.8rem;color:var(--iso-muted);min-width:2.5rem;text-align:right}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-hero .class-assessment-list-hero__row,.school-solutions-root.school-class-assessment-page .perf-report-editor .class-assessment-list-hero .class-assessment-list-hero__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-hero .school-roster-title,.school-solutions-root.school-class-assessment-page .perf-report-editor .class-assessment-list-hero .school-roster-title{margin:0;min-width:0;flex:1 1 12rem}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-hero__intro,.school-solutions-root.school-class-assessment-page .perf-report-editor .class-assessment-list-hero__intro{min-width:0;flex:1 1 min(100%,22rem)}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-hero__ctas,.school-solutions-root.school-class-assessment-page .perf-report-editor .class-assessment-list-hero__ctas{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;flex-shrink:0}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-hero__cta,.school-solutions-root.school-class-assessment-page .perf-report-editor .class-assessment-list-hero__cta{text-decoration:none;flex-shrink:0}.chat-page.school-roster-chat .perf-report-editor-hero{display:flex;flex-direction:column;gap:.55rem}.chat-page.school-roster-chat .perf-report-editor-hero__lead{margin:0;max-width:none;width:100%}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-panel{max-width:none;padding-inline:clamp(.35rem,1.5vw,1rem)}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table-shell{width:100%;min-width:0;border-radius:14px;border:1px solid rgba(58,97,80,.16);background:rgba(255,255,255,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.65);overflow:hidden}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table-shell .school-roster-table-wrap{margin:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table{width:100%;min-width:720px;font-family:inherit;font-size:.9rem}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table th{font-size:.9rem;font-weight:600;letter-spacing:0;text-transform:none;color:rgba(22,38,30,.94);white-space:nowrap}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table td{font-size:.9rem;vertical-align:middle}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table__class,.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table__division,.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table__status{white-space:nowrap}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table__date{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table__subject{min-width:9rem}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table__teacher{min-width:10rem}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table__progress{min-width:8.5rem}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-table .partner-notes-table__actions{width:1%;min-width:9.5rem;white-space:nowrap}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:8px 12px;white-space:nowrap}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-actions .btn,.school-solutions-root.school-class-assessment-list-page .class-assessment-list-actions .school-roster-inline-link{white-space:nowrap;flex-shrink:0}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-actions--links{gap:6px 10px}.chat-page.school-roster-chat .school-roster-inline-link--danger,.school-solutions-root.school-class-assessment-list-page .school-roster-inline-link--danger{margin:0;padding:0;border:none;background:none;font:inherit;font-weight:600;color:#b91c1c;text-decoration:underline;cursor:pointer}.chat-page.school-roster-chat .school-roster-inline-link--danger:hover:not(:disabled),.school-solutions-root.school-class-assessment-list-page .school-roster-inline-link--danger:hover:not(:disabled){color:#991b1b}.chat-page.school-roster-chat .school-roster-inline-link--danger:disabled,.school-solutions-root.school-class-assessment-list-page .school-roster-inline-link--danger:disabled{opacity:.55;cursor:not-allowed}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-filters{margin-bottom:0;border-bottom:1px solid rgba(58,97,80,.12)}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-filters__grid{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr))}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-filters__meta{border-top:none;margin-top:0;padding-top:.5rem}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-datatable{display:flex;flex-direction:column;gap:0;width:100%}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-pagination{margin:0;padding:.85rem clamp(.75rem,1.5vw,1rem);border-top:1px solid rgba(58,97,80,.12);background:rgba(255,255,255,.35);border-radius:0 0 14px 14px}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-pagination__size{margin:0;min-width:min(100%,9.5rem)}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-pagination__nav{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.school-solutions-root.school-class-assessment-list-page .class-assessment-list-pagination__page{font-size:.9rem}.school-class-assessment-page .class-assessment-th--label{text-transform:none;letter-spacing:.02em;font-size:.72rem;font-weight:700;white-space:nowrap}.school-class-assessment-page .class-assessment-absent-check{display:inline-flex;align-items:center;justify-content:flex-start;gap:.45rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.school-class-assessment-page .class-assessment-absent-label{font-size:.88rem;font-weight:500;color:var(--iso-text);letter-spacing:normal;text-transform:none}.school-class-assessment-page .class-assessment-scores-table .class-assessment-th--label,.school-class-assessment-page .class-assessment-scores-table td:has(.class-assessment-absent-check){width:6.5rem;white-space:nowrap}