hexo-theme-async
Version:
🎈 A simple, lightweight Hexo theme
966 lines (815 loc) • 15.6 kB
text/less
.trm-card {
background-color: var(--theme-bg-color, #fcfcfe);
position: relative;
border-radius: var(--card-border-radius, 10px);
margin-bottom: var(--card-bottom-card, 40px);
padding: var(--card-padding, 40px);
box-shadow: var(--box-shadow);
.trm-icon {
font-size: 22px;
color: var(--theme-color, #00283a);
margin-bottom: 20px;
}
.shadow();
}
// skill-card
.trm-skill-card {
border-radius: var(--card-border-radius, 10px);
background-color: var(--theme-bg-color, #fcfcfe);
padding: var(--card-padding, 40px);
margin-bottom: var(--card-bottom-card, 40px);
.shadow();
.trm-skill-header {
display: flex;
justify-content: space-between;
}
.trm-progressbar-frame {
overflow: hidden;
border-radius: var(--card-border-radius, 10px);
background-color: var(--theme-bg2-color, #f4f5f7);
height: 5px;
width: 100%;
box-shadow: var(--box-shadow);
.trm-progressbar {
width: 0;
height: 100%;
background-color: var(--primary, #afb42b);
.transition-mixin(all, 0.8s);
transition-delay: 0.4s;
}
}
&.trm-active-el {
.trm-progressbar-frame {
.p10 {
width: 10%;
}
.p20 {
width: 20%;
}
.p30 {
width: 30%;
}
.p40 {
width: 40%;
}
.p50 {
width: 50%;
}
.p60 {
width: 60%;
}
.p70 {
width: 70%;
}
.p80 {
width: 80%;
}
.p90 {
width: 90%;
}
.p100 {
width: 100%;
}
}
}
}
@media (max-width: 992px) {
.trm-skill-card {
.trm-progressbar-frame {
.p10 {
width: 10%;
}
.p20 {
width: 20%;
}
.p30 {
width: 30%;
}
.p40 {
width: 40%;
}
.p50 {
width: 50%;
}
.p60 {
width: 60%;
}
.p70 {
width: 70%;
}
.p80 {
width: 80%;
}
.p90 {
width: 90%;
}
.p100 {
width: 100%;
}
}
}
}
// link-box
.trm-link-box {
padding: var(--card-padding, 40px);
border-radius: var(--card-border-radius, 10px);
background-color: var(--theme-bg-color, #fcfcfe);
margin-bottom: var(--card-bottom-card, 40px);
box-shadow: var(--box-shadow);
.trm-link-content {
display: flex;
align-items: center;
}
.trm-link-text {
flex: 1;
div {
height: 2.6em;
}
}
.trm-icon {
width: 50px;
height: 50px;
margin-right: 20px;
img {
width: 100%;
height: 100%;
border-radius: 50%;
box-shadow: none ;
padding: 2px;
}
}
.click-animation();
.shadow();
}
// main card
.trm-main-card-frame {
position: relative;
z-index: 2;
transform: translateY(-410px);
.trm-main-card {
display: flex;
flex-direction: column;
justify-content: flex-start;
padding: var(--card-padding, 40px);
border-radius: var(--card-border-radius, 10px);
width: 100%;
height: calc(100vh - 100px);
box-shadow: 0 2px 4px -2px rgba(0, 0, 0, 0.15);
background-color: var(--theme-bg-color, #fcfcfe);
&.trm-active-el {
border-radius: 0;
}
&:before {
content: "";
position: absolute;
left: 30px;
top: -8px;
height: 8px;
width: calc(100% - 60px);
background-color: var(--theme-bg-color, #fcfcfe);
border-radius: 5px 5px 0 0;
opacity: 0.3;
}
.trm-social {
display: flex;
flex-wrap: wrap;
justify-content: center;
a {
color: var(--theme-color, #00283a);
margin: 6px 10px;
.transition-mixin();
&:hover {
color: var(--primary, #afb42b);
}
svg,
i {
font-size: 24px;
}
}
}
.trm-table {
padding: 0;
margin: 0;
li {
display: flex;
justify-content: space-between;
margin-bottom: 10px;
&:last-child {
margin-bottom: 0;
}
}
}
}
@media (min-width: 992px) {
&.fixed {
position: fixed;
top: 90px;
transform: translateY(0);
.trm-main-card {
border-radius: 0;
}
}
}
}
@keyframes blink {
0%,
100% {
opacity: 0;
}
50% {
opacity: 1;
}
}
@media (max-width: 992px) {
.trm-main-card-frame {
transform: translateY(-40px);
.trm-main-card {
border-radius: var(--card-border-radius, 10px) ;
height: auto;
}
}
}
.trm-mc-header {
text-align: center;
.trm-avatar-frame {
position: relative;
display: inline-block;
.trm-avatar {
border: solid 3px var(--theme-bg-color, #fcfcfe);
box-shadow: var(--box-shadow);
width: 110px;
height: 110px;
border-radius: 50%;
object-fit: cover;
object-position: top;
}
}
.trm-name {
font-size: 18px;
&.trm-name-lg {
font-size: 32px;
}
}
.trm-typed-text {
&::after {
content: "|";
font-weight: 200;
animation: blink ease 1s infinite;
}
}
}
// counter card
.trm-counter-up {
text-align: center;
border-radius: var(--card-border-radius, 10px);
box-shadow: var(--box-shadow);
background-color: var(--theme-bg-color, #fcfcfe);
padding: var(--card-padding, 40px);
margin-bottom: var(--card-bottom-card, 40px);
&:before {
content: "";
position: absolute;
left: 30px;
top: -8px;
height: 8px;
width: calc(100% - 60px);
background-color: var(--theme-bg-color, #fcfcfe);
border-radius: 5px 5px 0 0;
opacity: 0.3;
}
.trm-counter-number {
font-size: 24px;
font-weight: 900;
color: var(--theme-color, #00283a);
line-height: 20px;
.trm-counter-symbol {
color: var(--primary, #afb42b);
font-size: 16px;
margin-left: 3px;
}
}
}
// contact card
.trm-contact-card {
border-radius: var(--card-border-radius, 10px);
background: var(--theme-bg-color, #fcfcfe);
padding: var(--card-padding, 40px);
box-shadow: var(--box-shadow);
.trm-form-bottom {
display: flex;
align-items: center;
.trm-text-sm {
margin-left: 40px;
}
}
}
@media (max-width: 992px) {
.trm-contact-card .trm-form-bottom {
flex-direction: column;
}
.trm-contact-card .trm-form-bottom .trm-text-sm {
margin-left: 0;
margin-top: 20px;
text-align: center;
}
}
// blog card
.trm-blog-card {
background-color: var(--theme-bg-color, #fcfcfe);
position: relative;
overflow: hidden;
border-radius: var(--card-border-radius, 10px);
margin-bottom: var(--card-bottom-card, 40px);
.click-animation();
.shadow();
.trm-top {
position: absolute;
top: -18px;
right: -36px;
background: var(--card-top-bg-color);
color: var(--card-top-color);
padding: 30px 30px 4px;
transform: rotate(45deg);
font-size: 12px;
}
.trm-cover-frame {
display: block;
position: relative;
padding-bottom: 60%;
overflow: hidden;
.trm-cover-date,
.trm-cover-img,
img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
transform: scale(1.05);
.transition-mixin();
}
.trm-cover-date {
background-color: var(--card-cover-bg-color, #f3f3f3);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
line-height: 1.2;
font-family: fantasy;
.trm-cover-day {
font-size: 100px;
font-weight: 800;
}
.trm-cover-month {
font-size: 20px;
}
}
.trm-cover-img {
background-repeat: no-repeat;
background-position: center;
background-size: cover;
}
}
.trm-card-descr {
padding: var(--card-padding, 40px);
h5 {
a {
font-size: 1.1rem;
white-space: nowrap;
text-overflow: ellipsis;
width: 100%;
display: inline-block;
overflow: hidden;
}
}
.trm-category {
a {
opacity: 0.6;
.transition-mixin();
&:hover {
opacity: 1;
color: var(--primary, #afb42b);
}
}
}
}
&:hover {
.trm-cover-frame {
.trm-cover-img,
img {
transform: scale(1);
}
}
}
}
.trm-card-data {
padding: 0;
margin: 0;
display: flex;
li {
list-style-type: none;
padding-right: 20px;
position: relative;
opacity: 0.6;
&:after {
content: "•";
position: absolute;
top: 0;
right: 6px;
opacity: 0.5;
}
&:last-child {
&:after {
display: none;
}
}
}
}
// publications card
.trm-older-publications-card {
background-color: var(--theme-bg-color, #fcfcfe);
position: relative;
overflow: hidden;
border-radius: var(--card-border-radius, 10px);
padding: var(--card-padding, 40px);
margin-bottom: var(--card-bottom-card, 40px);
.shadow();
.trm-older-publication {
margin-bottom: var(--card-bottom-card, 40px);
.trm-op-top {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
.trm-op-cover {
width: 30%;
height: 50px;
margin-right: 20px;
border-radius: 5px;
position: relative;
overflow: hidden;
img {
transform: scale(1.1);
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
border-radius: 5px;
.transition-mixin();
}
}
.trm-op-title {
width: 70%;
overflow: hidden;
text-overflow: ellipsis;
display: -moz-box;
-moz-box-orient: vertical;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
line-clamp: 2;
box-orient: vertical;
.transition-mixin();
}
&:hover {
.trm-op-cover {
img {
transform: scale(1);
}
}
.trm-op-title {
color: var(--primary, #afb42b);
}
}
}
.trm-category {
a {
opacity: 0.6;
.transition-mixin();
&:hover {
opacity: 1;
color: var(--primary, #afb42b);
}
}
}
.trm-card-data {
padding: 0;
margin: 0;
display: flex;
li {
list-style-type: none;
padding-right: 20px;
position: relative;
opacity: 0.6;
&:after {
content: "•";
position: absolute;
top: 0;
right: 6px;
opacity: 0.5;
}
&:last-child {
&:after {
display: none;
}
}
}
}
&:last-child {
margin-bottom: 0;
}
}
}
// categories card
.trm-blog-categories {
text-align: center;
position: relative;
background-color: var(--theme-bg-color, #fcfcfe);
border-radius: var(--card-border-radius, 10px);
padding: var(--card-padding, 40px);
margin-bottom: var(--card-bottom-card, 40px);
.shadow();
&:before {
content: "";
position: absolute;
left: 30px;
top: -8px;
height: 8px;
width: calc(100% - 60px);
background-color: var(--theme-bg-color, #fcfcfe);
border-radius: 5px 5px 0 0;
opacity: 0.3;
}
.trm-number {
color: var(--theme-bg-color, #fcfcfe);
margin-left: 5px;
border-radius: 20px;
font-size: 12px;
font-weight: 600;
display: inline-block;
padding: 3px 10px;
transform: translateY(-2px);
background-color: var(--primary, #afb42b);
}
}
// price card
.trm-price {
position: relative;
overflow: hidden;
text-align: center;
background-color: var(--theme-bg-color, #fcfcfe);
border-radius: var(--card-border-radius, 10px);
padding: var(--card-padding, 40px);
margin-bottom: var(--card-bottom-card, 40px);
.shadow();
&.trm-popular {
&:after {
content: "popular";
color: #fcfcfe;
text-transform: uppercase;
font-size: 10px;
font-weight: 700;
letter-spacing: 2px;
line-height: 20px;
padding: 0 40px;
background-color: var(--primary, #afb42b);
height: 20px;
transform: rotate(45deg);
position: absolute;
top: 23px;
right: -40px;
}
}
.trm-price-header {
margin-bottom: 30px;
}
.trm-price-number {
font-size: 32px;
font-weight: 900;
color: var(--theme-color, #00283a);
line-height: 30px;
sup {
font-weight: 300;
font-size: 14px;
margin: 0 5px;
color: var(--body-color, #7b7b7d);
}
}
.trm-price-list {
padding: 0;
margin: 0 0 40px;
li {
list-style-type: none;
margin-bottom: 20px;
&.trm-label-light {
text-decoration: line-through;
opacity: 0.5;
}
}
}
}
// portfolio card
.trm-portfolio-item {
display: block;
position: relative;
overflow: hidden;
margin-bottom: var(--card-bottom-card, 40px);
border-radius: var(--card-border-radius, 10px);
.shadow();
.trm-cover-frame {
padding-bottom: 100%;
position: relative;
overflow: hidden;
.trm-cover {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
transform: scale(1.05);
margin: 0;
.transition-mixin();
}
}
.trm-item-description {
background-color: var(--theme-bg-color, #fcfcfe);
position: absolute;
width: 100%;
padding: 20px 40px;
bottom: 0;
left: 0;
display: flex;
justify-content: space-between;
align-items: center;
box-shadow: var(--box-shadow);
opacity: 0;
transform: translateY(30px) scale(1.02);
.transition-mixin();
.trm-zoom-icon {
background-color: var(--primary, #afb42b);
border-radius: 50%;
color: #fcfcfe;
width: 40px;
height: 40px;
font-size: 12px;
display: flex;
justify-content: center;
align-items: center;
}
}
&:hover {
.trm-cover-frame {
.trm-cover {
transform: scale(1);
}
}
.trm-item-description {
opacity: 1;
transform: translateY(0) scale(1);
}
}
&:focus {
outline: inherit;
}
&.trm-demo-card {
.trm-cover-frame {
padding-bottom: 0;
.trm-cover {
position: relative;
}
}
}
}
@media (max-width: 992px) {
.trm-portfolio-item .trm-item-description {
transform: none;
opacity: 1;
}
}
// order card
.trm-order {
background-color: var(--theme-bg-color, #fcfcfe);
border-radius: var(--card-border-radius, 10px);
overflow: hidden;
display: none;
width: 100%;
max-width: 800px;
padding: 0;
.shadow();
.trm-popup-content {
max-height: 550px;
display: flex;
align-items: stretch;
height: 100%;
img {
display: block;
width: 40%;
object-fit: cover;
}
.trm-popup-form-frame {
text-align: center;
position: relative;
padding: 40px;
width: 60%;
}
}
}
@media (max-width: 992px) {
.trm-order {
width: calc(100% - 40px);
.trm-popup-content {
height: auto;
img {
display: none;
}
.trm-popup-form-frame {
width: 100%;
}
}
}
}
// slider card
.trm-sliders-card {
position: relative;
overflow: visible;
margin-left: -20px;
margin-right: -20px;
padding: 0 20px;
margin-bottom: var(--card-bottom-card, 40px);
.trm-slider-navigation {
opacity: 0;
cursor: pointer;
position: absolute;
z-index: 1;
width: 100%;
padding: 0 100px;
top: 50px;
left: 0;
display: flex;
justify-content: space-between;
.transition-mixin();
div {
&.swiper-button-disabled {
background-color: var(--theme-bg2-color, #f4f5f7);
border-color: var(--theme-bg2-color, #f4f5f7);
cursor: not-allowed;
}
}
}
&:hover {
.trm-slider-navigation {
opacity: 1;
padding: 0 60px;
}
}
}
.trm-slider-card {
z-index: -1;
text-align: center;
padding: var(--card-padding, 40px);
background-color: var(--theme-bg-color, #fcfcfe);
border-radius: var(--card-border-radius, 10px);
box-shadow: var(--box-shadow);
.trm-slider-author {
img {
height: 70px;
width: 70px;
border-radius: 50%;
object-fit: cover;
object-position: center;
margin-bottom: 20px;
border: solid 3px var(--theme-bg-color, #fcfcfe);
box-shadow: var(--box-shadow);
}
}
.trm-slider-text {
padding-top: 20px;
}
}
@media (max-width: 992px) {
.trm-sliders-card {
overflow: hidden;
}
}
// project card
.trm-project-card {
position: relative;
overflow: hidden;
text-align: center;
background-color: var(--theme-bg-color, #fcfcfe);
border-radius: var(--card-border-radius, 10px);
margin-bottom: var(--card-bottom-card, 40px);
padding: var(--card-padding, 40px);
.shadow();
.trm-project-desc {
height: 3rem;
overflow: hidden;
}
&:hover {
transform: scale(1.05);
}
}