.AppShell_shell__YCowG{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:100vh;--sidebar-width:248px}.AppShell_sidebar__urELu{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--hb-navy);padding:var(--space-6) var(--space-3);display:flex;flex-direction:column;gap:var(--space-6)}.AppShell_brand__tkE0n{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-2);text-decoration:none}.AppShell_brand__tkE0n:hover{text-decoration:none}.AppShell_nav__nv2Pu{display:flex;flex-direction:column;gap:var(--space-5)}.AppShell_group__Gdtg1{display:flex;flex-direction:column;gap:var(--space-1)}.AppShell_groupLabel__Z4R_V{margin:0 0 var(--space-1);padding:0 var(--space-3);color:var(--hb-sky);font-size:var(--size-3xs);font-weight:var(--type-section-weight);letter-spacing:var(--type-section-tracking);text-transform:var(--type-section-transform)}.AppShell_link__ib5rP{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-left:var(--space-1) solid transparent;border-radius:var(--radius-sm);color:var(--hb-blue-100);font-size:var(--size-xs);font-weight:var(--weight-medium);text-decoration:none;transition:var(--transition-control)}.AppShell_link__ib5rP:hover{background:color-mix(in srgb,var(--hb-neutral-0) 6%,transparent);color:var(--hb-neutral-0);text-decoration:none}.AppShell_link__ib5rP:focus-visible{outline:none;box-shadow:var(--ring-focus)}.AppShell_current__gNc_6{background:color-mix(in srgb,var(--hb-neutral-0) 10%,transparent);border-left-color:var(--hb-sky);color:var(--hb-neutral-0);font-weight:var(--weight-semibold)}.AppShell_icon__gSgBD{flex-shrink:0}.AppShell_account__drmeb{margin-top:auto;padding-top:var(--space-4);border-top:var(--border-width) solid color-mix(in srgb,var(--hb-neutral-0) 14%,transparent);display:flex;flex-direction:column;gap:var(--space-2)}.AppShell_identity__MFeGm{display:flex;align-items:center;gap:var(--space-3);min-height:calc(var(--space-12) + var(--space-2));padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:inherit;text-decoration:none;transition:var(--transition-control)}a.AppShell_identity__MFeGm:hover{background:color-mix(in srgb,var(--hb-neutral-0) 8%,transparent);text-decoration:none}a.AppShell_identity__MFeGm:focus-visible{outline:none;box-shadow:var(--ring-focus)}.AppShell_accountText__O4flP{min-width:0;flex:1 1}.AppShell_accountName__WfZHA{display:block;color:var(--hb-neutral-0);font-size:var(--size-xs);font-weight:var(--weight-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.AppShell_accountRole__5Sbtv{display:block;color:var(--hb-blue-200);font-size:var(--size-3xs)}.AppShell_signoutRow__fQwhI{margin:0;padding-top:var(--space-2);border-top:var(--border-width) solid color-mix(in srgb,var(--hb-neutral-0) 14%,transparent)}.AppShell_signout__j6AOg{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:calc(var(--space-10) + var(--space-1));padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--hb-blue-200);font:inherit;font-size:var(--size-xs);font-weight:var(--weight-medium);cursor:pointer;transition:var(--transition-control)}.AppShell_signout__j6AOg:hover{background:color-mix(in srgb,var(--hb-neutral-0) 12%,transparent);color:var(--hb-neutral-0)}.AppShell_signout__j6AOg:focus-visible{outline:none;box-shadow:var(--ring-focus)}.AppShell_main__NYoit{display:flex;flex-direction:column;min-width:0;background:var(--surface-page)}.AppShell_topbar__wO_J6{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-8);background:var(--surface-card);border-bottom:var(--border-width) solid var(--border-subtle)}.AppShell_today__1xhND{color:var(--text-muted);font-size:var(--size-2xs);font-weight:var(--weight-medium)}.AppShell_topbarActions__z5pUE{margin-left:auto;display:flex;align-items:center;gap:var(--space-3);flex:1 1;justify-content:flex-end;min-width:0}.AppShell_searchForm__itmTi{position:relative;display:flex;align-items:center;width:100%;max-width:calc(var(--space-32) * 3);min-width:0}.AppShell_searchIcon__u_zya{position:absolute;left:var(--space-3);color:var(--text-muted);pointer-events:none}.AppShell_searchInput__jPAVD{width:100%;padding:var(--space-2) var(--space-3);padding-left:var(--space-8);border:var(--border-width) solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-page);color:var(--text-body);font-family:var(--font-sans);font-size:var(--size-xs)}.AppShell_searchInput__jPAVD::placeholder{color:var(--text-muted)}.AppShell_searchInput__jPAVD:focus-visible{outline:none;border-color:var(--border-brand);box-shadow:var(--ring-focus)}.AppShell_bell__UiMi8{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--space-10);height:var(--space-10);flex-shrink:0;border-radius:var(--radius-sm);color:var(--text-muted);transition:var(--transition-control)}.AppShell_bell__UiMi8:hover{background:var(--surface-sunken);color:var(--text-brand)}.AppShell_bell__UiMi8:focus-visible{outline:none;box-shadow:var(--ring-focus)}.AppShell_bellCount__ZKT3y{position:absolute;top:0;right:0;min-width:var(--space-4);height:var(--space-4);padding:0 var(--space-1);border-radius:var(--radius-pill);background:var(--action-bg);color:var(--text-inverse);font-size:var(--size-3xs);font-weight:var(--weight-semibold);line-height:var(--space-4);text-align:center}.AppShell_sidebarSlot__1nRm_{display:contents}.AppShell_drawerClose__4hJv_,.AppShell_scrim__myJCD,.AppShell_topbar__wO_J6 .AppShell_menuButton__9o_gr{display:none}@media (max-width:900px){.AppShell_shell__YCowG{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.AppShell_sidebarSlot__1nRm_{display:block}.AppShell_sidebar__urELu{position:fixed;top:0;left:0;z-index:20;width:min(var(--sidebar-width),84vw);height:100dvh;transform:translateX(-100%);box-shadow:none;visibility:hidden;transition:transform var(--duration-normal) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard),visibility 0s linear var(--duration-normal);padding-top:calc(var(--space-6) + env(safe-area-inset-top));padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom));padding-left:calc(var(--space-3) + env(safe-area-inset-left))}.AppShell_link__ib5rP{min-height:calc(var(--space-10) + var(--space-1))}.AppShell_shellOpen__JEPr7 .AppShell_sidebar__urELu{transform:translateX(0);box-shadow:var(--shadow-lg);visibility:visible;transition-delay:0s}.AppShell_drawerClose__4hJv_{position:fixed;top:env(safe-area-inset-top);left:calc(min(var(--sidebar-width), 84vw) - var(--space-12) - var(--space-1));z-index:21;display:none;align-items:center;justify-content:center;width:var(--space-12);height:var(--space-12);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--hb-blue-100);cursor:pointer}.AppShell_shellOpen__JEPr7 .AppShell_drawerClose__4hJv_{display:inline-flex}.AppShell_drawerClose__4hJv_:hover{background:color-mix(in srgb,var(--hb-neutral-0) 12%,transparent);color:var(--hb-neutral-0)}.AppShell_drawerClose__4hJv_:focus-visible{outline:none;box-shadow:var(--ring-focus)}.AppShell_topbar__wO_J6 .AppShell_menuButton__9o_gr{display:inline-flex;width:var(--space-12);height:var(--space-12);margin-left:calc(var(--space-2) * -1)}.AppShell_bell__UiMi8{width:var(--space-12);height:var(--space-12)}.AppShell_bellCount__ZKT3y{top:var(--space-1);right:var(--space-1)}.AppShell_searchInput__jPAVD{padding-block:var(--space-3);font-size:var(--size-md)}.AppShell_scrim__myJCD{display:block;position:fixed;inset:0;z-index:10;border:0;padding:0;background:var(--overlay-scrim);opacity:0;pointer-events:none;transition:opacity var(--duration-normal) var(--ease-standard)}.AppShell_shellOpen__JEPr7 .AppShell_scrim__myJCD{opacity:1;pointer-events:auto}.AppShell_topbar__wO_J6{position:-webkit-sticky;position:sticky;top:0;z-index:5;background:var(--surface-page);padding-inline:calc(var(--space-4) + env(safe-area-inset-left)) calc(var(--space-4) + env(safe-area-inset-right));padding-top:calc(var(--space-3) + env(safe-area-inset-top))}.AppShell_main__NYoit{padding-bottom:env(safe-area-inset-bottom)}.AppShell_today__1xhND{display:none}}@media (prefers-reduced-motion:reduce){.AppShell_scrim__myJCD,.AppShell_sidebar__urELu{transition:none}}.AppShell_shell__YCowG:has([data-lesson-frame]){grid-template-columns:minmax(0,1fr);grid-template-rows:auto}.AppShell_shell__YCowG:has([data-lesson-frame]) .AppShell_scrim__myJCD,.AppShell_shell__YCowG:has([data-lesson-frame]) .AppShell_sidebarSlot__1nRm_,.AppShell_shell__YCowG:has([data-lesson-frame]) .AppShell_sidebar__urELu,.AppShell_shell__YCowG:has([data-lesson-frame]) .AppShell_topbar__wO_J6{display:none}.AppShell_shell__YCowG:has([data-lesson-frame]) .AppShell_main__NYoit{padding-bottom:0}@media (max-width:720px){.AppShell_shell__YCowG:has([data-editor-shell]) .AppShell_topbar__wO_J6{display:none}.AppShell_shell__YCowG:has([data-editor-shell]) .AppShell_main__NYoit{--shell-sticky-top:0px!important}}.AppShell_skip__lRmwT{position:absolute;top:var(--space-2);left:var(--space-2);z-index:30;display:inline-flex;align-items:center;min-height:calc(var(--space-10) + var(--space-1));padding:0 var(--space-4);border-radius:var(--radius-md);background:var(--action-bg);color:var(--text-inverse);font-size:var(--size-sm);font-weight:var(--weight-medium);text-decoration:none;translate:0 calc(-100% - var(--space-4))}.AppShell_skip__lRmwT:focus,.AppShell_skip__lRmwT:focus-visible{outline:none;box-shadow:var(--ring-focus);translate:0 0}@media (min-width:901px){.AppShell_skip__lRmwT{--ring-focus:0 0 0 var(--ring-focus-width) var(--hb-sky)}}.AppShell_skipTarget__xPMY3:focus{outline:none;box-shadow:none}@media print{.AppShell_sidebar__urELu,.AppShell_skip__lRmwT,.AppShell_topbar__wO_J6{display:none}.AppShell_main__NYoit,.AppShell_shell__YCowG{display:block}}.CreateEntry_rail__LqgHY{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;min-height:var(--space-10);margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--action-bg);border-radius:var(--radius-md);background:var(--action-bg);color:var(--action-fg);font-family:var(--font-sans);font-size:var(--size-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:var(--transition-control)}.CreateEntry_rail__LqgHY:hover{background:var(--action-bg-hover);border-color:var(--action-bg-hover);box-shadow:var(--shadow-md)}.CreateEntry_rail__LqgHY:active{background:var(--hb-blue-100);border-color:var(--hb-blue-100);box-shadow:var(--shadow-none)}.CreateEntry_rail__LqgHY:focus-visible{outline:none;box-shadow:var(--ring-focus)}dialog.CreateEntry_picker__C1zcZ{width:min(calc(var(--container-sm) - var(--space-32)),calc(100% - var(--space-8)))}.CreateEntry_list__l8OTw{display:flex;flex-direction:column;gap:var(--space-1);margin:calc(var(--space-2) * -1) calc(var(--space-3) * -1) 0;padding:0;list-style:none}.CreateEntry_option__gydqq{display:flex;align-items:center;gap:var(--space-4);min-height:var(--space-16);padding:var(--space-3);border-radius:var(--radius-md);color:var(--text-body);text-decoration:none;transition:background-color var(--duration-fast) var(--ease-standard)}.CreateEntry_option__gydqq:hover{background:var(--surface-muted);text-decoration:none}.CreateEntry_option__gydqq:focus-visible{outline:none;background:var(--surface-muted);box-shadow:var(--ring-focus)}.CreateEntry_tile__G7FHy{display:inline-flex;flex:none;align-items:center;justify-content:center;width:var(--space-12);height:var(--space-12);border-radius:var(--radius-md);background:var(--action-bg-subtle);color:var(--text-brand)}.CreateEntry_text__Tmblf{display:flex;flex:1 1;flex-direction:column;gap:var(--space-1);min-width:0}.CreateEntry_name__s1HtN{color:var(--text-strong);font-size:var(--size-md);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.CreateEntry_line__4ItMm{color:var(--text-muted);font-size:var(--size-xs);line-height:var(--leading-snug)}.CreateEntry_chevron__ozgv_{flex:none;color:var(--text-muted);transition:color var(--duration-fast) var(--ease-standard)}.CreateEntry_option__gydqq:focus-visible .CreateEntry_chevron__ozgv_,.CreateEntry_option__gydqq:hover .CreateEntry_chevron__ozgv_{color:var(--text-brand)}.CreateEntry_divider__VUYkR{height:var(--border-width);margin:var(--space-2) var(--space-3);background:var(--border-subtle)}@media (max-width:720px){dialog.CreateEntry_picker__C1zcZ{width:100%}.CreateEntry_rail__LqgHY{min-height:calc(var(--space-10) + var(--space-1))}}.ImpersonationBanner_banner__HwXgK{display:flex;gap:var(--space-3);align-items:center;justify-content:space-between;flex-wrap:wrap;padding:var(--space-2) var(--space-4);background:var(--hb-warning-soft);color:var(--text-strong);border-bottom:var(--border-width-thick) solid var(--hb-warning);font-size:var(--type-caption-size);line-height:var(--leading-normal)}.ImpersonationBanner_stamp__Ld6w9{color:var(--text-body)}.AwayBanner_banner__7Z4cg{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;padding:var(--space-2) var(--space-4);background:var(--surface-sunken);color:var(--text-body);border-bottom:var(--border-width) solid var(--border-subtle);font-size:var(--type-caption-size);line-height:var(--leading-normal)}.AwayBanner_icon__Ls4Mk{flex:none;color:var(--text-muted)}.AwayBanner_link__rmrbY{color:var(--link);font-weight:var(--weight-semibold);border-radius:var(--radius-sm)}.AwayBanner_link__rmrbY:focus-visible{outline:none;box-shadow:var(--ring-focus)}