fediparty/themes/starter/source/assets/scss/modules/_misc.scss
2020-03-01 23:53:56 +03:00

362 lines
6.6 KiB
SCSS

.miscellaneous .hero-header {
max-height: 350px;
box-shadow: 1px 1px 4px 2px $black;
}
.misc {
background: $asphalt;
color: $white;
min-height: 90%;
padding: 2em 13% 3em;
}
.misc svg {
width: 13px;
height: 13px;
color: $black;
vertical-align: middle;
}
.misc h2 {
text-align: center;
margin-bottom: 1em;
}
.misc > h4 {
font-family: $font-primary;
font-weight: bold;
border-bottom: 1px solid $white;
margin-top: .5em;
}
.contents.misc p {
margin: .2em 0;
}
.misc h2,
.misc .option,
.misc footer {
color: $golden;
}
.misc .option span {
color: $white;
font-size: .7rem;
}
.misc input {
vertical-align: middle;
margin: 0 .5em 0 .25em;
}
.misc__grid {
display: flex;
flex-wrap: wrap;
margin: 3em 0 0;
}
.misc__grid a {
border: 0;
}
.card {
background-color: transparent;
color: $black;
border-radius: 8px;
border-color: transparent;
flex: 33% 0 0;
margin-bottom: 3em;
font-size: inherit;
text-align: left;
transition: .2s ease;
cursor: pointer;
z-index: 1;
}
.card p {
padding-left: .5em;
margin-bottom: .5em;
}
.card a {
word-wrap: break-word;
}
.card__title {
padding-top: 1.2em;
height: 45px;
}
.misc .title {
float: right;
width: 65%;
right: 0;
background: $golden;
padding: .1em 1em .1em .2em;
text-align: right;
}
.card__body {
padding: 2em;
}
.card__subtitle {
border-bottom: 1px solid $golden;
}
.card__title > img {
display: inline;
vertical-align: middle;
margin-left: 2em;
width: 45px;
}
.card__about,
.card__more {
line-height: 1.1;
}
.card__more {
position: absolute;
right: 20px;
bottom: 20px;
margin-top: .8em;
font-size: .95rem;
}
.card__more i {
display: inline-block;
vertical-align: middle;
height: 13px;
margin-left: 2px;
font-size: .7rem;
}
.card:focus .card__more {
display: none;
}
.card__content {
position: relative;
background: $white;
border-radius: inherit;
width: 270px;
height: 360px;
transition: .3s cubic-bezier(.175, .885, .32, 1.275);
}
.card__extra {
position: absolute;
width: 350px;
height: 360px;
left: 0;
top: 0;
border-radius: 0 8px 8px 0;
transition: .15s cubic-bezier(.175, .885, .32, 1);
transform: translateX(70%) rotateX(90deg);
opacity: 0;
transform-origin: top;
overflow: hidden;
padding: 1.5em;
}
.card__extra p {
transition: opacity .3s ease;
transition-delay: .2s;
opacity: 0;
}
.card__content:before,
.card__content:after {
content: "";
position: absolute;
opacity: 0;
cursor: pointer;
transition: .1s ease;
pointer-events: none;
}
.card__content:after {
width: 25px;
height: 25px;
border-radius: 20%;
background: linear-gradient(45deg, rgba(255, 255, 255, 1.0e-05) calc(50% - 2px), #fff calc(50% - 2px), #fff calc(50% + 2px), rgba(255, 255, 255, 1.0e-05) calc(50% + 2px)), linear-gradient(-45deg, rgba(255, 255, 255, 1.0e-05) calc(50% - 2px), #fff calc(50% - 2px), #fff calc(50% + 2px), rgba(255, 255, 255, 1.0e-05) calc(50% + 2px)), $golden;
top: -30px;
right: -360px;
box-shadow: inset 0 0 0 5px $golden;
z-index: $zIndex--5;
}
.card__content:before {
width: 660px;
height: 30px;
top: -35px;
left: -20px;
background: rgba(0, 0, 0, .9);
border-radius: 16px 16px 0 0;
z-index: $zIndex--5;
}
.card:focus {
outline: none;
transform: translateY(-10px) translateX(-80px);
z-index: $zIndex--4;
}
.card:focus > .card__content:before,
.card:focus > .card__content:after {
opacity: 1;
}
.card:focus:before {
content: "";
position: absolute;
min-width: 660px;
min-height: 395px;
top: -15px;
left: -100px;
background-color: rgba(0, 0, 0, .9);
border-radius: 0 0 16px 16px;
}
.card:focus .card__content {
transform: translateY(-10px) translateX(-80px);
border-radius: 8px 0 0 8px;
}
.card:focus .card__extra {
background: inherit;
transition: opacity 0s ease-in, transform .2s ease-in;
transition-delay: .1s;
transform: translateX(77%) rotateX(0deg);
opacity: 1;
}
.card:focus .card__extra p {
opacity: 1;
}
#sortAP:checked ~ .misc__grid .card:not(.ap),
#sortZot:checked ~ .misc__grid .card:not(.zot),
#sortDiaspora:checked ~ .misc__grid .card:not(.dia),
#sortOstatus:checked ~ .misc__grid .card:not(.os),
#snMacro:checked ~ .misc__grid .card:not(.SN-ma),
#snMicro:checked ~ .misc__grid .card:not(.SN-mi),
#blogPub:checked ~ .misc__grid .card:not(.Blog-Pub),
#media:checked ~ .misc__grid .card:not(.Media),
#links:checked ~ .misc__grid .card:not(.Links),
#evMeet:checked ~ .misc__grid .card:not(.Ev-Meet),
#files:checked ~ .misc__grid .card:not(.Files),
#dev:checked ~ .misc__grid .card:not(.DevTools),
#data:checked ~ .misc__grid .card:not(.DataForge),
#coop:checked ~ .misc__grid .card:not(.Coop),
#plugins:checked ~ .misc__grid .card:not(.Plugins),
#relays:checked ~ .misc__grid .card:not(.Relays),
#python:checked ~ .misc__grid .card:not(.python),
#php:checked ~ .misc__grid .card:not(.php),
#javascript:checked ~ .misc__grid .card:not(.javascript),
#rust:checked ~ .misc__grid .card:not(.rust),
#go:checked ~ .misc__grid .card:not(.go),
#typescript:checked ~ .misc__grid .card:not(.typescript),
#elixir:checked ~ .misc__grid .card:not(.elixir),
#ruby:checked ~ .misc__grid .card:not(.ruby),
#crystal:checked ~ .misc__grid .card:not(.crystal),
#ocaml:checked ~ .misc__grid .card:not(.ocaml),
#java:checked ~ .misc__grid .card:not(.java),
#c\#:checked ~ .misc__grid .card:not(.c\#),
#c:checked ~ .misc__grid .card:not(.c),
#haskell:checked ~ .misc__grid .card:not(.haskell) {
display: none;
}
@media screen and (max-width: $mq-large) {
.misc__grid {
justify-content: flex-end;
}
.card {
flex: 45% 0 0;
}
}
@media screen and (max-width: $mq-medium) {
.misc__grid {
justify-content: flex-start;
}
.card {
flex: 95% 0 0;
outline: none;
cursor: default;
pointer-events: none;
}
.card__content {
display: flex;
flex-wrap: wrap;
height: auto;
width: 100%;
border-radius: 8px;
}
.card__title {
flex: 100% 0 0;
padding-top: .5em;
}
.card__body {
flex: 40% 0 0;
}
.card__extra {
position: static;
flex: 60% 0 0;
background: inherit;
transition: opacity 0s ease-in, transform .2s ease-in;
transition-delay: .1s;
opacity: 1;
width: inherit;
height: inherit;
transform: none;
}
.card__extra p {
opacity: 1;
}
.card__more {
display: none;
}
.misc .title {
width: 45%;
}
}
@media screen and (max-width: $mq-small) {
.card {
flex: 100% 0 0;
}
.card__body,
.card__extra {
padding: 1.3em;
}
}
@media screen and (max-width: $mq-xsmall) {
.card__body,
.card__extra {
flex: 100% 0 0;
}
.card__body {
padding-bottom: 0;
}
.card__extra {
padding-top: 0;
}
}