body {
    font-family: -apple-system, "Segoe UI", Helvetica, sans-serif;
    background-color: #f0eef6;
    background-color: #fffcf9;
}

main {
    max-width: 1208px;
    margin: 56px auto 0;
    border-radius: .5em;
}

header {
    position: relative;
}

nav {
    position: fixed;
    top: 0; 
    left: 0;
    right: 0;
    background-color: #fffcf9;
    /* background-color: #fafafa; */
    z-index: 1000;
}


h1 {
    text-align: center;
}

.learnpoint-startpages__button {
    position: absolute;
    top: 16px;
}

.learnpoint-startpages__link {
    padding: 16px;
}

.learnpoint-startpages__link-icon {
    opacity: 0.3;
    width: 24px;
    height: 24px;
}

.learnpoint-startpages__link-icon:hover {
    opacity: 1;
}

.top-nav {
    display: flex;
    justify-content: center;
    gap: 24px;
    margin: 16px 0;
}

.is-mobile .top-nav {
    gap: 24px;
    align-items: baseline;
    margin: 16px 0;
}

.top-nav__link {
    color: #000;
    text-decoration: none;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap:6px;
    flex-shrink:unset;
}

.is-mobile .top-nav__link {
    font-size: 10px;
    gap: 0;
    flex-direction: column;
}

.top-nav__icon {
    opacity: 0.7; 
    
}

.top-nav__user-profile {
    position: absolute;
    right: 16px;
    top:10px;
}

.is-mobile .top-nav__user-profile {
    top:16px;
}

.top-nav__avatar {
    display: block;
    border-radius: 50%;
    cursor: pointer;
    width: 24px;
    height: 24px;
}

.top-nav__help-page-link {
    position: absolute;
    right: 8px;
    top:10px;
    opacity: 0.7;
}

.is-mobile .top-nav__help-page-link {
    right: 8px;
    top:16px;
}

.top-nav__unread-badge {
    position: absolute;
    top: 13px;
    margin-left: 6px;
    font-size: 10px;
    display: inline-flex;
    inline-size: 13px;
    block-size: 13px;
    line-height: 13px;
    text-align: center;
    font-weight: bold;
    background-color: #f34906;
    border: 1px solid #f34906;
    border-radius: 50%;
    color: #fff;
    justify-content: center;
    align-items: center;
}


.is-mobile .top-nav__unread-badge {
    top: 9px;
    margin-left: 14px;
}

.school__logo {
    width: 240px;
    margin: 32px auto;
    display: flex;
    justify-content: center;
}

.school__logo-image {
    width: 50px;
    height: 100%;
}

.school-groups__actions {
    margin: 24px;
}

.school-groups__filter-options {
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.school-groups__filter {
    border-radius: 16px;
    background-color: #fff;
    padding: 6px 20px;
    border: 1px solid #ddd;
    color: #222;
    font-size: 14px;
}

.school-groups__filter.SELECTED {
    background-color: #fcdcce;
    background-color: #eee;
}


.school-groups__view-togglers {
    display: flex;
    align-items: center;
    display: none;
}

.school-groups__view-toggler {
    background-color: #ddd;
    padding: 4px;
}

.school-groups__view-toggler-icon {

}

.school-groups__list {
    align-content: flex-start;
    display: flex;
    flex-flow: row wrap;
    gap: 12px;
    justify-content: center;
}

.is-mobile .school-groups__list {
    flex-wrap: wrap;
}

.school-groups__list-item {
    /* box-shadow: 0 -1px 1px hsla( 32.2, 20.2%, 60.2% , 0.05), 0 1px 2px -0.5px hsla( 32.2, 20.2%, 60.2% , 0.1) , 0 2px 4px -1px hsla( 32.2, 20.2%, 60.2% , 0.2) , 0 4px 8px -2px hsla( 32.2, 20.2%, 60.2% , 0.2);
    width: 240px;
    height: 125px;
    background-color: #fff;
    padding: 16px;
    box-sizing: border-box;
    border-radius: 10px; */
    width: 240px;
    height: 120px;
    border: 1px solid #dbdbdb;
    border: 1px solid #ccc;
    background-color: #fff;
    box-sizing: border-box;
    border-radius: 10px;
    position: relative;
    overflow: hidden;
}

.is-mobile .school-groups__list-item {
    width: 45%;
}


.school-groups__list-item-link {
    /* color: #000;
    text-decoration: none;
    font-weight: 600; */
    color: #000;
    text-decoration: none;
    font-weight: 600;
    font-weight: bold;
    padding: 16px 16px 4px 16px;
    padding: 0 16px;
    display: block;
    font-size: 18px;
    font-size: 16px;
    line-height: 1.2;
}

.school-groups__list-item-type {
    /* display: block;
    margin: 4px 0;
    color: #aaa;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 11px; */
    display: block;
    padding: 0 16px;
    padding: 16px 16px 2px 16px;
    color: #444;
    color: #555;
    text-transform: uppercase;
    letter-spacing: 1px;
    letter-spacing: normal;
    font-size: 11px;
    font-size: 13px;
}

.school-groups__show-all {
    text-align: center;
    margin: 24px;
}

.school-groups__show-all-link {
    color: #333;
    font-size: 15px;
}

.group__name {
    text-align: center;
    margin: 8px 0;
    font-size: 24px;
    font-weight: 600;
}

.group__features {
    align-content: flex-start;
    display: flex;
    flex-flow: row wrap;
    gap: 12px;
    justify-content: center;
    margin: 36px 0;
}

.group__feature {
    width: 25%;
    font-weight: 600;
    height: 150px;
    border: 1px solid #0000001a;
    border-radius: 6px;
    padding: 16px;
    text-align: center;
}

.group__feature_name a {
    color: #000;
    text-decoration: none;
}

.group__feature-icon-container {
  margin-top: 64px;
  border-radius: 50%;
  width: 64px;
  height: 64px;
  background-color: #020c13;
  margin: 24px auto;
  padding: 16px;
  box-sizing: border-box;
}

.group__feature-icon-container.CONTENT {
    background-color: #00b4d0;
}

.group__feature-icon-container.NEWS {
     background-color: #ff2d55;
}

.group__feature-icon-container.CHANNELS {
    background-color: #00a40e;
}

.group__feature-icon-container.STAFF {
    background-color: #ad2c53;
}

.group__feature-icon-container.STUDENT {
    background-color: #4282e2;
}

.group__feature-icon-container.GRADE {
    background-color: #5856d6;
}

.group__feature-icon-container.CALENDAR {
    background-color: #ffcc00;
}

.group__feature-icon  {
    width: 28px;
    height: 28px;
}

.group__feature-tabs  {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    font-size: 15px;
    border-bottom: 1px solid #0000001a;
    margin-top: 12px;
}

.group__feature-tab  {
    padding: 10px;
}

.group__feature-tab.SELECTED  {
    border-bottom: 2px solid #0079f2;
}

.group__feature-tab.SELECTED a  {
    color: #0079f2;
}

.group__course-item-content {
    padding: 0 16px;
    padding-bottom: 0;
    max-width: 960px;
    margin: 0 auto 0; 
}

.group__course-content {
    max-width: 860px;
    margin: 16px auto;
}

.group__course-content-section {
    margin: 0px 0 36px;
    padding: 16px;
    /* border: 1px solid #eee; */
    border-radius: 8px;
}

.group__course-content-section:last-child {
    margin: 0;
}

.group__course-content-section-name {
    font-weight: 600;
    font-size: 20px;
    margin-bottom: 4px;
    padding: 0 0 12px 0;
    border-bottom: 1px solid #eee;
}

.group__course-content-item {
    padding: 12px 0; 
    text-decoration: none;
    color:#0079f2; 
    border-bottom: 1px solid #eee;
}

.group__course-content-item:visited {
    color:#0079f2;  
}

.group__course-content-item a {
    text-decoration: none;   
    color:#0079f2; 
}

.group__course-content-item-new {
    color:#000; 
    padding: 12px 0 0; 
    font-size: 15px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 4px;
}

.group-content__actions {
    text-align: center;
    margin: 32px 0;
}

.group-content__button {
    background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.02));
    background-color: #fff;
    border: 1px solid #b5b5b5;
    padding: 0.8em 1.5em;
    border-radius: 99rem;
    color: #111;
    color: inherit;
    cursor: pointer;
    font-family: inherit;
    font-size: 14px;
    font-weight: normal;
    line-height: 16px;
    outline: 0;
    padding: 8px 18px;
    margin: 0;
    text-align: center;
    text-decoration: none;
    vertical-align: baseline;
    margin-bottom: 16px;
}

.group-content__button.PRIMARY {
    background-color: #0079f2 ;
    border-color: #0079f2;
    color: #fff;
}

.group__breadcrumbs {
    max-width: 900px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 16px auto 8px;
    font-size: 13px;
    padding: 4px 8px 8px;
    color: #888;
}

.group__breadcrumbs a:visited {
    text-decoration: none;   
    color:#0079f2; 
    color: #888;
}

.group__course-item-title {
    text-align: center;
    margin: 8px 0;
    font-size: 24px;
    font-weight: 600;
}

.group__course-item-sub-title {
    text-align: center;
    color: #aaa;
    font-weight: normal;
    margin: 4px 0 16px;
    font-size: 14px;
}

.group__course-item-menu-tabs {
    display: flex;
    margin: 1.5em 0 2em;
    align-items: center;
    justify-content: center;
}

.group__course-item-menu-tab {
    text-decoration: none;
    flex: 0 0 auto;
    width: 72px;
    text-align: center;
    cursor: pointer;
    padding: 4px 24px;
    color: #444;
    border-radius: 4px 0 0 4px;
    border: 1px solid #777;
    font-size: 14px;
}

.group__course-item-menu-tab.SELECTED {
    background-color: #777;
    color: #fff;
}

.group__course-item-menu-tab:first-child {
    border-right: 0;
}

.group__course-item-menu-tab:last-child {
    border-radius: 0 4px 4px 0;
    border-left: 0;
}

.group__course-item-settings {
    padding: 16px 0;
    border-bottom: 1px solid #e5e5e5;
    border-top: 1px solid #e5e5e5;
}

.group__course-item-settings-content {
    padding: 0px 6px 0;
    max-width: 480px;
    max-width: 648px;
    margin: 0 auto;
}

.group__course-item-settings-item {
    position: relative;
    display: flex;
    padding: 10px 32px 10px 8px;
    border-radius: 6px;
    /* border-top: 1px solid #f7f7f7; */
    transition-property: padding, background-color, margin;
    transition-duration: .16s;
    cursor: pointer;
    line-height: 1.3;
    gap: 32px;
}

.group__course-item-settings-item-name {
    font-weight: 600;
    width: 80px;
    padding: 4px 16px 4px 0;
    padding: 4px 0;
    flex-shrink: 0;
}

.group__course-item-settings-item-state {
    padding: 4px 0;
    flex: auto;
    position: relative;
}

.group__course-item-description {
    max-width: 640px;
    margin: 12px auto;
    line-height: 1.8;
    margin-bottom: 32px;
}


.group__news {
    padding: 32px;
}

.group__news-actions {

} 

.group__news-action {
    background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.02));
    background-color: #fff;
    border: 1px solid #b5b5b5;
    padding: 0.8em 1.5em;
    border-radius: 99rem;
    color: #111;
    color: inherit;
    cursor: pointer;
    font-family: inherit;
    font-size: 14px;
    font-weight: normal;
    line-height: 16px;
    outline: 0;
    padding: 8px 18px;
    margin: 0;
    text-align: center;
    text-decoration: none;
    vertical-align: baseline;
    margin-bottom: 16px;
}

.group__news-action.PRIMARY {
    background-color: #0079f2 ;
    border-color: #0079f2;
    color: #fff;
}

.group__news-items {

}

.group__news-item-link {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 8px;
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid #e5e5e5;
}

.group__news-item-link:last-child {
    border-bottom: none;
}

.group__news-item-author {
    font-size: 1.2em;
}

.group__news-item-author-avatar {
    display: block;
    border-radius: 50%;
    cursor: pointer;
    width: 2.5em;
    height: 2.5em;
}

.group__news-item-content {
    overflow: hidden;
    flex: 1;
}

.group__news-item-title {
    font-weight: 600;
    font-size: 16px;
    word-wrap: break-word;
}

.group__news-item-meta {
    font-size: 14px;
    color: #666;
    display: flex;
    flex-wrap: wrap;
    gap: 0 6px;
    margin-top: 2px;
}

.group__news-item {
    max-width: 700px;
    margin: 0 auto;
}

.group__news-item-title-text {
    display: block;
    text-align: center;
    font-weight: 600;
    font-size: 2.2em;
    line-height: 1;
    margin: 0;
    word-wrap: break-word;
}

.group__news-item-title-divider {
    border: 0;
    border-top: 1px solid #ddd;
    margin: 16px auto 12px;
    max-width: 240px;
}

.group__news-item-meta-info {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 32px;
    gap: 8px;
    font-size: 14px;
}

.group__news-item-author-img {
    display: block;
    border-radius: 50%;
    cursor: pointer;
    width: 2em;
    height: 2em;
    transition: all .1s;
}

.group__news-item-author-name {

}

.group__news-item-published-date {

}

.group__news-item-description {
    padding-bottom: 24px;
    line-height: 1.5;
}

.group__course-channel {
    /* max-width: 960px;*/
    margin: 16px auto -16px; 
    border-radius: 12px;
    background-color: #fff;
    /* height: 800px; */
    display: flex;
 }

 .is-mobile .group__course-channel {
    border-radius: 0;
    box-shadow: unset;
 }
 
.group__course-channel-content {
     flex: 1;
     padding:0 16px;
}

.is-mobile .group__course-channel-content {
    display: none;
}


.group__course-channel-header {
    border-bottom: 1px solid #ddd;
    padding: 20px;
    font-weight: 600;
    font-size: 18px;
}

.group__course-channel-menu {
    width: 200px;
    border-left: 1px solid #ddd;
    padding: 16px;
}

.is-mobile .group__course-channel-menu {
    width: 100%;
}

.group__course-channel-menu-item {
    padding: 4px;
    color: #000;
    text-decoration: none;
    display: block;
}

.group__course-channel-menu-item.SELECTED {
    background-color: rgba(0, 0, 0, .54);
    color: #fff;
    border-radius: 4px;
}

.is-mobile .group__course-channel-menu-item {
    color: #0079f2;
}

.is-mobile .group__course-channel-menu-item.SELECTED {
    background-color: #fff;
}

.group__course-channel-messages{
    height: 700px;
}

.group__course-channel-textbox,
.group__channel-input {
    display: block;
    resize: none;
    margin: 0 24px 0 0;
    padding: 12px 42px 13px 12px;
    font-size: 15px;
    font-family: inherit;
    line-height: 20px;
    color: #333;
    color: #000;
    background-color: #eee;
    background-color: #f0f0f0;
    background-color: #e0e0e0;
    background-color: #e5e5e5;
    background-image: none;
    border: none;
    border-radius: 6px;
    transition-property: border-color, box-shadow;
    transition-duration: .2s;
    width: 100%;
    height: 45px;
    vertical-align: baseline;
    -webkit-appearance: none;
    -moz-appearance: none;
    box-sizing: border-box;
}

.group__channel {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: #fff;
    z-index: 1000;
}

.group__channel-header {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #ddd;
    padding: 8px;
    gap: 12px;
}

.group__channel-messages {
    height: 86vh;
}


.group__channel-input-container {
    padding: 0 16px;
}

.group__channel-name {
    font-weight: 600;
    font-size: 18px;
}

.group__channel-group-name {
    color: #888;
    font-size: 14px;
}

.group__channel-back-button-icon {
    width: 20x;
    height: 20px;
}
