webapp/src/components/Author/AuthorCard/AuthorCard.module.scss

471 lines
7.9 KiB
SCSS

.author {
display: flex;
align-items: center;
flex-flow: row nowrap;
margin-bottom: 1.6rem;
&:last-child {
margin-bottom: 0;
}
@include media-breakpoint-down(md) {
justify-content: center;
}
@include media-breakpoint-up(md) {
margin-bottom: 2.4rem;
}
.authorName {
@include font-size(4rem);
font-weight: 700;
margin-bottom: 0.2em;
}
.authorAbout {
@include font-size(2rem);
color: #696969;
font-weight: 500;
margin-top: 1.5rem;
}
.authorActions {
margin: 2rem -0.8rem 0 0;
padding-left: 0;
display: flex;
flex-direction: row;
gap: 1rem;
@include media-breakpoint-down(md) {
justify-content: center;
}
}
.authorDetails {
display: block;
@include media-breakpoint-down(md) {
flex: 1 100%;
text-align: center;
}
}
.listWrapper & {
align-items: flex-start;
margin-bottom: 2rem;
@include media-breakpoint-down(sm) {
margin-bottom: 3rem;
}
@include media-breakpoint-between(md, lg) {
margin-bottom: 3rem;
}
.circlewrap {
margin-top: 1rem;
}
.authorDetailsWrapper {
margin-bottom: 1rem;
}
}
@include media-breakpoint-down(lg) {
flex-wrap: wrap;
}
.buttonWriteMessage {
border-radius: 0.8rem;
padding-bottom: 0.6rem;
padding-top: 0.6rem;
}
}
.authorDetails {
flex: 0 0 auto;
@include media-breakpoint-up(sm) {
align-items: center;
display: flex;
}
@include media-breakpoint-down(sm) {
flex-wrap: wrap;
}
@include media-breakpoint-between(md, lg) {
flex-wrap: wrap;
.listWrapper & {
flex-wrap: nowrap;
}
}
}
.authorDetailsWrapper {
flex: 1 0;
position: relative;
@include media-breakpoint-up(sm) {
flex: 1;
}
@include media-breakpoint-between(md, lg) {
flex: 1 0 100%;
.listWrapper & {
flex: 1;
}
}
@include media-breakpoint-up(md) {
padding-right: 1.2rem;
}
}
.authorName {
@include font-size(4rem);
line-height: 1.1;
}
.authorAbout {
color: rgb(0 0 0 / 60%);
font-size: 1.4rem;
font-weight: 500;
line-height: 1.3;
word-break: break-word;
}
.authorSubscribeSocialLabel {
display: none;
}
.authorSubscribeSocial {
align-items: center;
display: flex;
margin: 2rem 0;
.socialLink {
border: none;
display: inline-block;
height: 24px;
margin-right: 0.4rem;
position: relative;
transition: background-color 0.2s;
vertical-align: middle;
width: 24px;
&::before {
background-image: url(/icons/user-link-default.svg);
background-repeat: no-repeat;
background-position: 50% 50%;
background-size: contain;
content: '';
height: 100%;
left: 50%;
position: absolute;
top: 50%;
transform: translate(-50%, -50%);
transition: filter 0.2s;
width: 100%;
}
&:hover {
background: #000;
&::before {
filter: invert(1);
}
.authorSubscribeSocialLabel {
@include font-size(1.6rem);
color: #000;
display: block;
left: 100%;
padding-left: 0.4rem;
position: absolute;
}
}
&[href*='facebook.com/'] {
&::before {
background-image: url(/icons/user-link-facebook.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='twitter.com/'] {
&::before {
background-image: url(/icons/user-link-twitter.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='telegram.com/'],
&[href*='t.me/'] {
&::before {
background-image: url(/icons/user-link-telegram.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='vk.cc/'],
&[href*='vk.com/'] {
&::before {
background-image: url(/icons/user-link-vk.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='tumblr.com/'] {
&::before {
background-image: url(/icons/user-link-tumblr.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='instagram.com/'] {
&::before {
background-image: url(/icons/user-link-instagram.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='behance.net/'] {
&::before {
background-image: url(/icons/user-link-behance.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='dribbble.com/'] {
&::before {
background-image: url(/icons/user-link-dribbble.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='github.com/'] {
&::before {
background-image: url(/icons/user-link-github.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='linkedin.com/'] {
&::before {
background-image: url(/icons/user-link-linkedin.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='medium.com/'] {
&::before {
background-image: url(/icons/user-link-medium.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='ok.ru/'] {
&::before {
background-image: url(/icons/user-link-ok.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='pinterest.com/'] {
&::before {
background-image: url(/icons/user-link-pinterest.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='reddit.com/'] {
&::before {
background-image: url(/icons/user-link-reddit.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='tiktok.com/'] {
&::before {
background-image: url(/icons/user-link-tiktok.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='youtube.com/'],
&[href*='youtu.be/'] {
&::before {
background-image: url(/icons/user-link-youtube.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
&[href*='dzen.ru/'] {
&::before {
background-image: url(/icons/user-link-dzen.svg);
}
&:hover {
.authorSubscribeSocialLabel {
display: none;
}
}
}
}
@include media-breakpoint-down(sm) {
flex: 1 100%;
justify-content: center;
margin-top: 1em;
}
@include media-breakpoint-down(md) {
justify-content: center;
}
a:link {
border: none;
}
}
.subscribersContainer {
display: flex;
flex-wrap: wrap;
font-size: 1.4rem;
margin-top: 1.5rem;
@include media-breakpoint-down(md) {
justify-content: center;
}
}
.subscribers {
align-items: center;
cursor: pointer;
display: inline-flex;
margin: 0 2% 1rem;
vertical-align: top;
border-bottom: unset !important;
.subscribersItem {
position: relative;
&:nth-child(1) {
z-index: 2;
}
&:nth-child(2) {
z-index: 1;
}
&:not(:last-child) {
margin-right: -4px;
box-shadow: 0 0 0 1px var(--background-color);
}
}
.subscribersCounter {
font-weight: 500;
margin-left: 1rem;
}
&:hover {
background: none !important;
.subscribersCounter {
background: var(--background-color-invert);
}
}
}
.listWrapper {
max-height: 70vh;
}