.sidebar-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 auto;border:2px solid var(--primer-btn-border);border-radius:var(--primer-radius);background:var(--primer-btn-bg);color:var(--primer-btn-text);box-shadow:var(--primer-shadow);cursor:pointer;vertical-align:middle}.sidebar-toggle-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.sidebar-toggle-btn .icon{pointer-events:none}.sidebar-overlay{position:fixed;inset:0;background:rgba(15,23,42,0.45);opacity:0;visibility:hidden;pointer-events:none;transition:opacity 0.2s ease;z-index:60}body.sidebar-open .sidebar-overlay{opacity:1;visibility:visible;pointer-events:auto}.app-sidebar{position:fixed;top:0;left:0;height:100dvh;width:min(280px,82vw);max-width:280px;z-index:65;transform:translateX(-100%);transition:transform 0.25s ease;overflow-y:auto;box-shadow:2px 0 16px rgba(15,23,42,0.18);display:flex;flex-direction:column;padding:16px!important;border-radius:0!important;flex:none!important;width:min(280px,82vw)!important}body.sidebar-open .app-sidebar{transform:translateX(0)}body.sidebar-open{overflow:hidden}.app-sidebar .sidebar-nav{flex-direction:column;overflow-x:visible;flex:1 1 auto}.app-sidebar .sidebar-link{flex:none;white-space:normal}.app-sidebar .sidebar-footer{flex:0 0 auto;margin-top:12px;padding-top:12px;border-top:1px solid var(--color-divider-hairline,#f1f5f9)}@media (min-width:1024px){body.role-student .app-sidebar,body.role-admin .app-sidebar,body.role-ta .app-sidebar{position:fixed;top:var(--navbar-h,64px);bottom:0;left:0;transform:none!important;height:auto;box-shadow:none;border:2px solid var(--color-border,#c9d2dc);border-left:none;flex:0 0 280px!important;width:280px!important;padding:16px!important;border-radius:0!important}body.role-student .app-main,body.role-admin .app-main,body.role-ta .app-main{margin-left:280px}body.role-student .app-footer,body.role-admin .app-footer,body.role-ta .app-footer{margin-left:280px;width:auto}body.role-student .sidebar-toggle-btn,body.role-admin .sidebar-toggle-btn,body.role-ta .sidebar-toggle-btn{display:none}body.role-student .sidebar-overlay,body.role-admin .sidebar-overlay,body.role-ta .sidebar-overlay{display:none}body.role-student.sidebar-open,body.role-admin.sidebar-open,body.role-ta.sidebar-open{overflow:visible}}