webapp/src/components/NotificationsPanel/NotificationsPanel.module.scss

110 lines
1.9 KiB
SCSS
Raw Normal View History

$transition-duration: 200ms;
.container {
display: flex;
align-items: stretch;
justify-content: flex-end;
position: fixed;
top: 0;
right: 0;
bottom: 0;
width: 0;
z-index: 10000;
overflow: hidden;
transition:
background-color $transition-duration,
width 0ms linear $transition-duration;
.panel {
position: relative;
background-color: var(--background-color);
width: 50%;
height: 100%;
transform: translateX(100%);
transition: transform $transition-duration;
display: flex;
flex-direction: column;
.title {
@include font-size(2rem);
color: var(--black-500);
font-style: normal;
font-weight: 700;
position: sticky;
top: 0;
padding: 1.23rem 38px;
border-bottom: 2px solid var(--black-100);
}
.content {
overflow-y: auto;
flex: 1;
padding: 0 38px 1rem;
.loading {
@include font-size(1.2rem);
text-align: center;
padding: 1rem;
color: var(--black-300);
}
}
.actions {
padding: 24px 38px;
width: 100%;
bottom: 0;
left: 0;
background: var(--background-color);
border-top: 1px solid var(--black-100);
}
}
&.isOpened {
width: 100%;
background-color: rgb(0 0 0 / 60%);
transition:
background-color $transition-duration,
width 0ms;
.panel {
transform: translateX(0);
}
}
}
.closeButton {
position: absolute;
top: 1.2rem;
right: 1rem;
padding: 1rem;
cursor: pointer;
z-index: 1;
&:hover {
background-color: var(--background-color-invert);
.closeIcon {
filter: invert(1);
}
}
}
.notificationView + .notificationView {
margin-top: 8px;
}
.emptyMessageContainer {
text-align: center;
}
.periodTitle {
// TODO: check markup
margin: 32px 0 16px 0;
color: var(--black-400);
font-size: 12px;
font-weight: 500;
line-height: 14px;
}