.recent_topics_container { position: relative; height: 95%; width: 70%; max-width: 1200px; max-height: 1000px; padding: 0px; border-radius: 4px; background-color: hsl(0, 0%, 100%); overflow: hidden; display: flex; flex-direction: column; @media (max-width: 1130px) { max-width: 90%; } @media (max-width: 700px) { height: 95%; max-width: none; width: 90%; } .recent_topics_header { padding-top: 4px; padding-bottom: 8px; text-align: center; border-bottom: 1px solid hsl(0, 0%, 87%); h1 { margin: 0; font-size: 1.1em; text-transform: uppercase; } .exit { font-weight: 400; position: absolute; top: 10px; right: 10px; color: hsl(0, 0%, 67%); cursor: pointer; .exit-sign { position: relative; top: 3px; margin-left: 3px; font-size: 1.5rem; font-weight: 600; cursor: pointer; } } } .recent_topics_table { margin: 0px; padding: 15px; overflow: hidden !important; display: flex; flex-direction: column; td { vertical-align: middle; padding: 3px 8px 3px 8px; } .recent_topics_focusable { display: inline-block; } a { color: hsl(205, 47%, 42%); text-decoration: none; &:hover { color: hsl(214, 40%, 58%); } } .required-text:empty::after { content: attr(data-empty); display: block; font-style: italic; color: hsl(0, 0%, 67%); } .fa-check-square-o, .fa-square-o { padding: 0 2px 0 2px; } .fa-lock { padding-right: 3px; } .table_fix_head { padding: 10px; padding-top: 0px !important; overflow-y: auto; } .table_fix_head table { // To keep border properties to the thead th. border-collapse: separate; } #recent_topics_filter_buttons { margin: 0 10px 0 10px; display: flex; flex-wrap: wrap; justify-content: flex-start; } #recent_topics_search { margin: 0 0 10px 0px; flex-grow: 1; } #recent_topics_search_clear { margin-top: -10px !important; } .btn-recent-filters { border-radius: 40px; margin: 0 5px 10px 0; } .btn-recent-selected { background-color: hsl(0, 11%, 93%); } .recent_topic_unread_count { background-color: hsl(105, 2%, 50%) !important; color: hsl(0, 0%, 100%); float: right; height: 16px; line-height: 16px; font-size: 12px; font-weight: 400; letter-spacing: .6px; border-radius: 4px; background-color: hsl(0, 0%, 89%); padding: 0 4px; margin-right: 10px; } .recent_avatars { display: inline-flex; /* Causes LI items to display in row. */ list-style-type: none; margin: auto; /* Centers vertically / horizontally in flex container. */ height: 24px; padding: 4px; border-radius: 6px; overflow: hidden; /* By using the row-reverse layout, the visual ordering will be opposite of the DOM ordering. This will allows us to stack the items in the opposite direction of the natural stacking order without having to mess with the zIndex value. The MAJOR DOWNSIDE is that the HTML itself now reads backwards, which super janky. */ flex-direction: row-reverse; } .recent_avatars_item { height: 24px; margin: 0; padding: 0 1.5px 0 1.5px; position: relative; min-width: 24px; } .recent_avatars_img, .recent_avatars_others { border: 0; border-radius: 6px; color: hsl(0, 0%, 100%); display: block; height: 24px; text-align: center; } .recent_avatars_others { color: hsl(0, 0%, 0%); line-height: 24px; } thead th { background-color: hsl(0, 0%, 100%); color: inherit; border-top: 1px solid hsla(0, 0%, 0%, 0.2) !important; border-bottom: 1px solid hsla(0, 0%, 0%, 0.2) !important; position: sticky; top: 0; z-index: 1000; &.active::after, &[data-sort]:hover::after { content: " \f0d8"; white-space: pre; display: inline-block; position: absolute; padding-top: 3px; font: normal normal normal 12px/1 FontAwesome; font-size: inherit; } &.active { opacity: 1; transition: opacity 100ms ease-out; &.descend::after { content: " \f0d7"; } } &[data-sort]:hover { cursor: pointer; background-color: hsla(0, 0%, 95%); transition: background-color 100ms ease-in-out; &:not(.active)::after { opacity: 0.3; } } } } }