$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 { margin: 32px 0 16px; color: var(--black-400); font-size: 12px; font-weight: 500; line-height: 14px; }