Introduce color variables

Signed-off-by: hossainemruz <hossainemruz@gmail.com>
This commit is contained in:
hossainemruz 2023-09-29 04:22:23 +06:00
parent b34c6860be
commit 6d5d1b9851
35 changed files with 696 additions and 909 deletions

View file

@ -12,6 +12,16 @@
@import '@fontsource/mulish/700'; @import '@fontsource/mulish/700';
@import './variables'; @import './variables';
@import './mixins';
// components
@import './components/cards';
@import './components/buttons';
@import './components/links';
@import './components/texts';
@import './components/images';
@import './components/tables';
@import './components/misc';
// layouts // layouts
@import './layouts/main'; @import './layouts/main';
@ -39,11 +49,6 @@
@import './sections/footer'; @import './sections/footer';
// components
@import './components/cards';
@import './components/buttons';
@import './components/links';
// override // override
@import './override'; @import './override';

View file

@ -1,45 +1,44 @@
.btn-dark { .btn-dark {
background-color: #3c4858 !important; background-color: $text-color !important;
border-color: #3c4858 !important; border-color: $text-color !important;
color: #e5e9f2 !important; color: $text-over-accent-color !important;
transition: all 0.3s ease-out !important; @include transition();
&:hover, &:hover,
&:focus { &:focus {
background-color: #248aaa !important; background-color: $accent-color !important;
border-color: #248aaa !important; border-color: $accent-color !important;
transition: all 0.3s ease-out !important; @include transition();
} }
} }
.btn-info { .btn-info {
background-color: #248aaa !important; background-color: $accent-color !important;
color: #e5e9f2 !important; color: $text-over-accent-color !important;
&:hover, &:hover,
&:focus { &:focus {
background-color: #2098d1 !important; background-color: $hover-over-accent-color !important;
color: #e5e9f2 !important;
} }
} }
.btn-outline-info { .btn-outline-info {
color: #2098d1 !important; color: $accent-color !important;
border-color: #2098d1 !important; border-color: $accent-color !important;
&:hover, &:hover,
&:focus { &:focus {
background-color: #2098d1 !important; background-color: $accent-color !important;
color: #e5e9f2 !important; color: $text-over-accent-color !important;
} }
} }
.btn-link { .btn-link {
color: #248aaa; color: $accent-color;
&:hover, &:hover,
&:focus { &:focus {
color: #207089; color: $hover-over-accent-color;
} }
} }
@ -47,7 +46,7 @@
background-color: transparent; background-color: transparent;
border: 1px solid transparent; border: 1px solid transparent;
border-radius: 0.25rem; border-radius: 0.25rem;
color: #8392a5; color: $muted-text-color;
} }
.tags { .tags {
@ -57,18 +56,18 @@
font-size: 0.5em; font-size: 0.5em;
list-style-type: none; list-style-type: none;
display: inline-block; display: inline-block;
background: #248aaa; background: $accent-color;
margin-left: 0.1em; margin-left: 0.1em;
margin-right: 0.1em; margin-right: 0.1em;
} }
a { a {
color: #f9fafc; color: $text-over-accent-color;
} }
} }
.icon-button { .icon-button {
background-color: #3c4858; background-color: $text-color;
color: #e5e9f2 !important; color: $text-over-accent-color !important;
padding: 0.25rem 0.5rem; padding: 0.25rem 0.5rem;
line-height: 1.5; line-height: 1.5;
border-radius: 0.2rem; border-radius: 0.2rem;
@ -76,19 +75,19 @@
&:hover, &:hover,
&:focus { &:focus {
background-color: #248aaa !important; background-color: $accent-color !important;
transition: all 0.3s ease-out !important; @include transition();
} }
} }
.filled-button { .filled-button {
color: #f9fafc !important; background-color: $accent-color !important;
background-color: #248aaa !important; color: $text-over-accent-color !important;
transition: all 0.3s ease-out; @include transition();
&:hover, &:hover,
&:active { &:active {
background-color: #0cafe1 !important; background-color: $hover-over-accent-color !important;
transition: all 0.3 ease-out; @include transition();
} }
} }

View file

@ -1,13 +1,14 @@
.card { .card {
box-shadow: none; box-shadow: none;
transition: all 0.3s ease-out; @include transition();
overflow: hidden; overflow: hidden;
background: $bg-card;
&:hover, &:hover,
&:focus { &:focus {
box-shadow: 0px 8px 56px rgba(15, 80, 100, 0.16); box-shadow: $box-shadow;
border: 1px solid #fff; border: 1px solid $bg-primary;
transition: all 0.3s ease-out; @include transition();
} }
.card-head { .card-head {
@ -21,7 +22,7 @@
} }
.card-img-top { .card-img-top {
transition: all 0.3s ease-out !important; @include transition();
} }
.card-img-sm { .card-img-sm {
@ -35,7 +36,7 @@
} }
.card-footer { .card-footer {
background: #fff; background: $bg-card !important;
} }
} }
@ -55,7 +56,7 @@
&:focus { &:focus {
.card-img-top { .card-img-top {
transform: scale(1.2); transform: scale(1.2);
transition: all 0.3s ease-out; @include transition();
} }
} }
@ -79,7 +80,7 @@
span { span {
font-size: 10pt; font-size: 10pt;
color: #6c757d !important; color: $muted-text-color !important;
padding-top: 5px; padding-top: 5px;
} }
} }

View file

@ -0,0 +1,34 @@
img {
display: block;
max-width: 100%;
&.center {
margin-left: auto;
margin-right: auto;
}
&.left {
margin-right: auto;
}
&.right {
margin-left: auto;
}
}
figure {
border: 1px solid $border-color;
height: -moz-fit-content;
height: fit-content;
width: -moz-fit-content;
width: fit-content;
align-self: center;
margin: auto;
}
caption,
figcaption {
caption-side: bottom;
text-align: center;
color: $muted-text-color;
}

View file

@ -1,15 +1,52 @@
a {
color: $accent-color;
@include transition();
&:hover,
&:focus {
text-decoration: $hover-over-accent-color underline;
color: $hover-over-accent-color;
@include transition();
}
}
.list-link { .list-link {
text-decoration: none; text-decoration: none;
color: #131313; color: $text-color;
transition: all 0.3s ease-out; @include transition();
&.active { &.active {
display: inline; display: inline;
color: #2098d1; color: $accent-color;
}
&:hover {
margin-left: 3px;
color: $accent-color;
@include transition();
}
}
a.header-anchor {
text-decoration: none;
color: $heading-color;
i,
svg {
font-size: 10pt;
color: $text-color;
display: none;
margin-left: 0.5rem;
}
&:hover {
i,
svg {
display: inline-block;
} }
}
&:hover { code {
margin-left: 3px; color: $inline-code-color;
color: #2098d1; }
transition: all 0.3s ease-out; }
}
} .anchor {
padding-top: 3.5rem;
}

View file

@ -0,0 +1,33 @@
.paginator {
width: -moz-fit-content;
width: fit-content;
margin: auto;
vertical-align: bottom;
.page-item {
& > a {
color: $accent-color;
}
&.active,
&:hover > a {
background-color: $accent-color !important;
color: $text-over-accent-color !important;
}
}
}
pre {
margin: 5px;
& > code {
padding: 10px !important;
}
}
@include media('<=large') {
pre {
margin: 0px;
& > code {
padding: 0px !important;
}
}
}

View file

@ -0,0 +1,74 @@
table {
border-radius: 0.1rem;
border: 1px solid $border-color;
min-width: 10rem;
padding: 0.1rem;
thead {
tr {
background: $accent-color;
color: $text-over-accent-color;
}
}
tbody {
tr {
height: 40px !important;
color: $text-color;
&:nth-child(odd) {
background-color: $bg-primary;
}
&:nth-child(even) {
background-color: rgba($accent-color, 0.05);
}
}
}
th,
td {
padding-top: 0.2rem;
padding-bottom: 0.2rem;
padding-left: 0.5rem;
padding-right: 0.5rem;
}
}
.gist {
table {
border-radius: unset;
background: unset;
border: unset;
padding: unset;
tr {
height: unset !important;
}
th,
td {
padding: unset;
border-left: unset;
border-bottom: unset;
}
td,
tc {
border-right: 1px solid $border-color;
}
thead {
tr {
background: unset;
color: unset;
}
}
tbody {
tr {
&:nth-child(odd) {
background-color: unset;
}
&:hover {
background: unset;
}
}
}
}
}

View file

@ -0,0 +1,62 @@
h1,
h2,
h3,
h4,
h5 {
color: $heading-color;
}
strong {
color: $heading-color !important;
}
p {
color: $text-color;
}
blockquote {
border-left: 4px solid $accent-color;
background-color: rgba($accent-color, 0.05);
padding: 0.3rem;
padding-left: 1rem;
& > p {
color: $text-color;
margin-top: 0.5rem;
margin-bottom: 0.5rem;
}
}
.text-muted {
color: $muted-text-color !important;
}
.text-heading {
font-weight: bold;
color: $muted-text-color;
}
.sub-title {
color: $muted-text-color;
font-size: 10pt;
}
::-moz-selection {
@include selection-color();
}
::selection {
@include selection-color();
}
@include media('<=small') {
h1 {
font-size: 2.2rem;
}
}
@include media('<=tiny') {
h1 {
font-size: 1.5rem;
}
}

View file

@ -49,12 +49,12 @@ body.kind-page {
.page-item { .page-item {
& > a { & > a {
color: #248aaa; color: $accent-color;
} }
&.active > a { &.active > a {
background-color: #248aaa; background-color: $accent-color;
color: #f9fafc; color: $text-over-accent-color;
} }
} }
} }
@ -84,18 +84,18 @@ body.kind-page {
width: 100%; width: 100%;
padding-left: 0; padding-left: 0;
padding-right: 0; padding-right: 0;
transition: all ease-out 0.3s; @include transition();
} }
&.hide { &.hide {
.content { .content {
margin-top: 0; margin-top: 0;
padding-top: 0; padding-top: 0;
transition: all ease-out 0.3s; @include transition();
} }
.post-card-holder { .post-card-holder {
margin-top: 0.5rem; margin-top: 0.5rem;
transition: all ease-out 0.3s; @include transition();
} }
} }
} }
@ -136,7 +136,7 @@ body.kind-page {
padding-left: 0.5rem; padding-left: 0.5rem;
padding-right: 0.5rem; padding-right: 0.5rem;
position: relative; position: relative;
transition: all ease-out 0.3s; @include transition();
} }
} }
.container { .container {

View file

@ -1,18 +1,3 @@
/* ========= Colors ============
Heading: #1C2D41
Paragraph: #3C4858
Iconography: #8392A5
Secondary: #C0CCDA
Dirty Snow: #E5E9F2
Snow: #F9FAFC
Magenta: #7551E9
Orange: #FF7D51
Pink: #ED63D2
Green: #2DCA73
Yellow: #FFC212
*/
/* /*
Removed smooth scrolling implementation in main.js in favor of Removed smooth scrolling implementation in main.js in favor of
simpler css approach. simpler css approach.
@ -35,71 +20,16 @@ html {
} }
body { body {
background-color: #f9fafc; background-color: $bg-primary;
font-family: 'Mulish'; font-family: 'Mulish';
} }
h1, .bg-primary {
h2, background-color: $bg-primary !important;
h3,
h4,
h5 {
color: #1c2d41;
} }
strong { .bg-secondary {
color: #1c2d41 !important; background-color: $bg-secondary !important;
}
p {
color: #3c4858;
}
a {
color: #248aaa;
}
a:hover {
color: #207089;
}
a.focused {
color: #2098d1 !important;
}
.bg-white {
background-color: #f9fafc !important;
}
.bg-dimmed {
background-color: #e5e9f2;
}
.anchor {
padding-top: 3.5rem;
}
img.center {
display: block;
margin-left: auto;
margin-right: auto;
}
img.left {
display: block;
margin-right: auto;
}
img.right {
display: block;
margin-left: auto;
}
.sub-title {
color: #c0ccda;
font-size: 10pt;
} }
.flag-icon { .flag-icon {
@ -112,220 +42,36 @@ img.right {
display: none !important; display: none !important;
} }
/* ====== table ====== */ .content {
table { ul > ol,
border-radius: 0.1rem; ol > ul,
background: #e5e9f2; ul > ul,
border: 1px solid #c0ccda; ol > ol,
padding: 0.1rem; li > ol,
} li > ul {
-webkit-padding-start: 1rem;
table tr { padding-inline-start: 1rem;
height: 40px !important; }
}
table th,
td {
padding: 0.5rem;
border-left: 1px solid #8392a5;
border-bottom: 1px solid #8392a5;
}
table thead tr {
background: #248aaa;
color: #e5e9f2;
}
tbody tr:nth-child(odd) {
background-color: #e5e9f2;
}
tbody tr:hover {
background: #c0ccda;
}
/* ====== don't apply css to tables inside gist ====== */
.gist table {
border-radius: unset;
background: unset;
border: unset;
padding: unset;
}
.gist table tr {
height: unset !important;
}
.gist table th,
td {
padding: unset;
border-left: unset;
border-bottom: unset;
}
.gist table thead tr {
background: unset;
color: unset;
}
.gist tbody tr:nth-child(odd) {
background-color: unset;
}
.gist tbody tr:hover {
background: unset;
}
.gist table td,
.gist table tc {
border-right: 1px solid #eee;
}
figure {
border: 1px solid #c0ccda;
height: -moz-fit-content;
height: fit-content;
width: -moz-fit-content;
width: fit-content;
align-self: center;
margin: auto;
}
img {
max-width: 100%;
}
caption,
figcaption {
caption-side: bottom;
text-align: center;
color: #8392a5;
}
pre {
margin: 5px;
}
pre > code {
padding: 10px !important;
}
a.header-anchor {
text-decoration: none;
color: #1c2d41;
}
a.header-anchor i,
a.header-anchor svg {
font-size: 10pt;
color: #3c4858;
display: none;
margin-left: 0.5rem;
}
a.header-anchor:hover i,
a.header-anchor:hover svg {
display: inline-block;
}
a.header-anchor code {
color: #e83e8c;
}
.content ul > ol,
.content ol > ul,
.content ul > ul,
.content ol > ol,
.content li > ol,
.content li > ul {
-webkit-padding-start: 1rem;
padding-inline-start: 1rem;
} }
kbd { kbd {
background-color: #248aaa !important; background-color: $accent-color;
color: #f9fafc; color: $text-over-accent-color;
} }
mark { mark {
background-color: #ffc21280; background-color: $highlight-color;
border-radius: 0.25rem;
} }
/* ======= Paginator ========= */ @include media('<=small') {
.paginator { .skills-section,
width: -moz-fit-content; .projects-section,
width: fit-content; .publications-section {
margin: auto; .container {
vertical-align: bottom; padding-left: 0.3rem;
} padding-right: 0.3rem;
}
.paginator .page-item > a {
color: #248aaa;
}
.paginator .page-item.active > a {
background-color: #248aaa;
color: #f9fafc;
}
/* ============= Media Query Template ======= */
@include media('<medium') {
}
@include media('>=medium','<large') {
}
@include media('>=large','<very-large') {
}
@include media('>=very-large','<extra-large') {
}
@include media('>=extra-large') {
}
/* Large screens such as TV */
@media only screen and (min-width: 1824px) {
}
/* Extra large devices (large desktops, 1200px and up) */
@media (max-width: 1400px) {
}
@media (max-width: 1200px) {
}
/* IPad Pro */
@media (max-width: 1024px) {
.content-section .languageSelector {
position: fixed;
right: 0.5rem;
bottom: 1rem;
z-index: 10000000;
background-color: #f9fafc;
box-shadow: 0px 8px 56px rgba(15, 80, 100, 0.16);
}
pre {
margin: 0px;
}
code {
padding: 0px;
}
}
/* Large devices (desktops, 992px and up) */
@media (max-width: 992px) {
}
/* Medium devices (tablets, 768px and up) */
@media only screen and (max-width: 768px) {
}
/* Small devices (landscape phones, 576px and up) */
@media only screen and (max-width: 576px) {
.skills-section .container,
.projects-section .container,
.publications-section .container {
padding-left: 0.3rem;
padding-right: 0.3rem;
} }
.section-holder { .section-holder {
@ -341,36 +87,4 @@ mark {
padding-left: 0; padding-left: 0;
padding-right: 0; padding-right: 0;
} }
pre {
margin: 0px;
}
code {
padding: 0px;
}
h1 {
font-size: 2.2rem;
}
}
/* iPhoneX, iPhone 6,7,8 */
@media only screen and (max-width: 375px) {
h1 {
font-size: 2rem;
}
}
/* Galaxy S5, Moto G4 */
@media only screen and (max-width: 360px) {
h1 {
font-size: 1.8rem;
}
}
/* iPhone 5 or before */
@media only screen and (max-width: 320px) {
h1 {
font-size: 1.5rem;
}
} }

View file

@ -48,7 +48,7 @@ body.type-notes {
.note-title { .note-title {
padding-left: 1rem; padding-left: 1rem;
color: #248aaa; color: $accent-color;
&:before { &:before {
content: ''; content: '';
@ -56,11 +56,11 @@ body.type-notes {
width: 98%; width: 98%;
height: 100%; height: 100%;
margin-bottom: -26px; margin-bottom: -26px;
border-bottom: 1px solid #248aaa; border-bottom: 1px solid $accent-color;
} }
span { span {
background: #e5e9f2; background: $bg-secondary;
padding-right: 5px; padding-right: 5px;
} }
} }
@ -86,7 +86,7 @@ body.type-notes {
max-width: 100%; max-width: 100%;
order: 2; order: 2;
padding-bottom: 0.5rem; padding-bottom: 0.5rem;
transition: all ease-out 0.3s; @include transition();
.content { .content {
overflow: hidden; overflow: hidden;
@ -97,7 +97,7 @@ body.type-notes {
padding-left: 0.5rem; padding-left: 0.5rem;
padding-right: 0.5rem; padding-right: 0.5rem;
position: relative; position: relative;
transition: all ease-out 0.3s; @include transition();
.note-card { .note-card {
flex: 50%; flex: 50%;
} }
@ -109,7 +109,7 @@ body.type-notes {
&.hide { &.hide {
max-width: 60%; max-width: 60%;
transition: all ease-out 0.3s; @include transition();
} }
} }
} }
@ -119,13 +119,13 @@ body.type-notes {
.note-card-holder .note-card { .note-card-holder .note-card {
max-width: 50%; max-width: 50%;
min-width: 50%; min-width: 50%;
transition: all ease-out 0.3s; @include transition();
} }
.content-section.hide .note-card-holder .note-card { .content-section.hide .note-card-holder .note-card {
max-width: 100%; max-width: 100%;
min-width: 100%; min-width: 100%;
transition: all ease-out 0.3s; @include transition();
} }
} }
@ -141,16 +141,16 @@ body.type-notes {
width: 100%; width: 100%;
padding-left: 0; padding-left: 0;
padding-right: 0; padding-right: 0;
transition: all ease-out 0.3s; @include transition();
.note-card-holder { .note-card-holder {
margin-top: 0.5rem; margin-top: 0.5rem;
transition: all ease-out 0.3s; @include transition();
.note-card { .note-card {
flex: 100%; flex: 100%;
max-width: 100%; max-width: 100%;
transition: all ease-out 0.3s; @include transition();
} }
} }
} }
@ -159,13 +159,13 @@ body.type-notes {
max-width: 100%; max-width: 100%;
padding-left: 0; padding-left: 0;
width: 100%; width: 100%;
transition: all ease-out 0.3s; @include transition();
.content { .content {
.note-card-holder { .note-card-holder {
margin-top: 0; margin-top: 0;
padding-top: 0; padding-top: 0;
transition: all ease-out 0.3s; @include transition();
} }
} }
} }

View file

@ -1,5 +1,5 @@
body.kind-page { body.kind-page {
background-color: #e5e9f2; background-color: $bg-secondary;
position: relative; position: relative;
.wrapper { .wrapper {
@ -20,11 +20,10 @@ body.kind-page {
padding-right: 1rem; padding-right: 1rem;
.content { .content {
background: #e5e9f2;
padding-top: 1.5rem; padding-top: 1.5rem;
.read-area { .read-area {
background-color: #f9fafc; background-color: $bg-primary;
.hero-area { .hero-area {
margin-top: 3rem; margin-top: 3rem;
@ -55,12 +54,9 @@ body.kind-page {
width: 120px; width: 120px;
-o-object-fit: cover; -o-object-fit: cover;
object-fit: cover; object-fit: cover;
background-color: #f9fafc; background-color: $bg-primary;
padding: 5px; padding: 5px;
} }
p {
color: #8392a5;
}
} }
.title { .title {
@ -84,19 +80,6 @@ body.kind-page {
h6 { h6 {
margin-top: 1.3rem; margin-top: 1.3rem;
} }
blockquote {
border-left: 4px solid #248aaa;
background-color: #248baa15;
padding: 0.3rem;
padding-left: 1rem;
& > p {
color: #3c4858;
margin-top: 0.5rem;
margin-bottom: 0.5rem;
}
}
} }
.next-prev-navigator { .next-prev-navigator {
@ -120,7 +103,7 @@ body.kind-page {
flex: 20%; flex: 20%;
order: 3; order: 3;
max-width: 20%; max-width: 20%;
transition: all ease-out 0.5s; @include transition();
.toc-holder { .toc-holder {
position: sticky; position: sticky;
@ -128,14 +111,14 @@ body.kind-page {
padding-top: 1rem; padding-top: 1rem;
overflow-x: hidden; overflow-x: hidden;
overflow-y: auto; overflow-y: auto;
background-color: #f9fafc; background-color: $bg-primary;
margin-right: 0.5rem; margin-right: 0.5rem;
transition: all ease-out 0.3s; @include transition();
.toc { .toc {
position: relative; position: relative;
padding-top: 0px; padding-top: 0px;
transition: all ease-out 0.3s; @include transition();
nav { nav {
padding-top: 0px; padding-top: 0px;
@ -143,7 +126,7 @@ body.kind-page {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: flex-start; align-items: flex-start;
transition: all ease-out 0.3s; @include transition();
ul { ul {
list-style: none; list-style: none;
@ -155,17 +138,17 @@ body.kind-page {
.nav-link { .nav-link {
padding: 0; padding: 0;
padding-left: 0.5rem; padding-left: 0.5rem;
transition: all ease-out 0.3s; @include transition();
color: #1c2d41; color: $heading-color;
&:hover, &:hover,
&:focus, &:focus,
&.active { &.active {
padding-left: 1rem; padding-left: 1rem;
padding-right: 0.5rem; padding-right: 0.5rem;
background-color: #248aaa; background-color: $accent-color;
color: #f9f9f9; color: $text-over-accent-color;
transition: all ease-out 0.3s; @include transition();
} }
} }
} }
@ -193,21 +176,21 @@ body.kind-page {
position: fixed; position: fixed;
bottom: 0rem; bottom: 0rem;
right: 1rem; right: 1rem;
color: #248aaa; color: $accent-color;
font-size: 24pt; font-size: 24pt;
z-index: 900000; z-index: 900000;
visibility: hidden; visibility: hidden;
&:hover { &:hover {
color: #2098d1; color: $hover-over-accent-color;
} }
&.show { &.show {
visibility: visible; visibility: visible;
} }
i { i {
box-shadow: 0px 8px 56px rgba(15, 80, 100, 0.16); box-shadow: $box-shadow;
background-color: #f9f9f9; background-color: $bg-primary;
border-radius: 50%; border-radius: 50%;
} }
} }

30
assets/styles/mixins.scss Normal file
View file

@ -0,0 +1,30 @@
@mixin reset-list {
margin: 0;
padding: 0;
list-style: none;
}
@mixin section-title-adjustment() {
h1 > span {
margin-top: -55px; /* Size of fixed header */
padding-bottom: 55px;
display: block;
}
}
@mixin brand-background() {
@each $brand, $color in $brand-colors {
.bg-#{$brand} {
background-color: $color;
}
}
}
@mixin transition() {
transition: all $transition-type $transition-duration;
}
@mixin selection-color() {
background: $accent-color;
color: $text-over-accent-color;
}

View file

@ -1,9 +1,8 @@
@mixin nav-item-hover-effect() { @mixin nav-item-hover-effect() {
color: #2098d1 !important; color: $accent-color !important;
transition: all 0.3s ease-out; border-bottom: 2px solid $accent-color !important;
border-bottom: 2px solid #2098d1 !important; background: rgba($accent-color, 0.1);
background: rgb(2, 0, 36); @include transition();
background: linear-gradient(90deg, rgba(2, 0, 36, 1) 0%, rgba(34, 136, 168, 0.1) 0%);
} }
.top-navbar { .top-navbar {
@ -13,18 +12,25 @@
width: 100%; width: 100%;
height: 50px; height: 50px;
z-index: 99999; z-index: 99999;
transition: all 0.4s ease-out;
margin: 0px; margin: 0px;
padding-top: 0.4rem; padding-top: 0.4rem;
color: $heading-color;
text-align: center; text-align: center;
background-color: $bg-primary;
background-color: #f9fafc; @include transition();
color: #1c2d41;
transition: all 0.3s ease-out;
.navbar-brand { .navbar-brand {
color: #1c2d41; color: $heading-color;
font-weight: 600; font-weight: 600;
img {
width: 42px;
padding: 5px;
margin-left: -10px;
}
}
img {
display: inline-block;
} }
.sidebar-icon { .sidebar-icon {
@ -35,9 +41,9 @@
li { li {
a { a {
color: #1c2d41; color: $heading-color;
font-weight: 500; font-weight: 500;
transition: all 0.3s ease-out; @include transition();
border-bottom: 2px solid transparent; border-bottom: 2px solid transparent;
&:hover { &:hover {
@include nav-item-hover-effect(); @include nav-item-hover-effect();
@ -50,25 +56,28 @@
} }
#top-navbar-divider { #top-navbar-divider {
background: rgba(0, 0, 0, 0.6); margin-top: 10px;
background-color: $muted-text-color;
height: 20px;
width: 2px;
} }
.dropdown-menu { .dropdown-menu {
box-shadow: 0px 8px 56px rgba(15, 80, 100, 0.16); box-shadow: $box-shadow;
border: 1px solid #fff; border: 1px solid $border-color;
max-height: 0vh; max-height: 0vh;
overflow: hidden; overflow: hidden;
display: block; display: block;
visibility: hidden; visibility: hidden;
transition: all 0.3s ease-out; @include transition();
&.show { &.show {
max-height: 100vh; max-height: 100vh;
visibility: visible; visibility: visible;
transition: all 0.3s ease-in; @include transition();
a { a {
color: #1c2d41 !important; color: $heading-color !important;
&:hover { &:hover {
@include nav-item-hover-effect(); @include nav-item-hover-effect();
@ -81,22 +90,22 @@
margin-top: -5px; margin-top: -5px;
&.show, &.show,
&.collapsing { &.collapsing {
background-color: #f9fafc; background-color: $bg-primary;
padding-left: 1rem; padding-left: 1rem;
li { li {
a { a {
color: #1c2d41; color: $heading-color;
font-weight: 500; font-weight: 500;
transition: all 0.3s ease-out; @include transition();
} }
} }
.navbar-nav { .navbar-nav {
.active { .active {
color: #2098d1; color: $accent-color;
} }
a:hover { a:hover {
color: #2098d1; color: $accent-color;
} }
} }
} }
@ -105,32 +114,19 @@
&.transparent-navbar { &.transparent-navbar {
background-color: transparent; background-color: transparent;
.navbar-brand { .navbar-brand {
color: #c0ccda; color: $inverse-text-color;
font-weight: 600; font-weight: 600;
} }
li { li {
a { a {
color: #c0ccda; color: $inverse-text-color;
} }
} }
.feather-menu { .feather-menu {
stroke: #8392a5; stroke: $inverse-text-color;
} }
} }
#top-navbar-divider {
margin-top: 10px;
background: rgba(192, 204, 218, 0.8);
height: 20px;
width: 2px;
}
.navbar-brand img {
width: 42px;
padding: 5px;
margin-left: -10px;
}
@include media('<=large') { @include media('<=large') {
height: -moz-fit-content; height: -moz-fit-content;
height: fit-content; height: fit-content;
@ -144,39 +140,31 @@
&.transparent-navbar { &.transparent-navbar {
.navbar-nav .active, .navbar-nav .active,
li a:hover { li a:hover {
color: #2098d1; color: $accent-color;
transition: all 0.3s ease-out; @include transition();
} }
} }
&.final-navbar {
.navbar-nav .active,
li a:hover {
color: #2098d1;
transition: none;
border-bottom: none !important;
background: transparent;
}
li a {
border-bottom: none;
}
}
.dropdown-divider {
border-top: 1px solid #c0ccda;
}
#top-navbar-divider { #top-navbar-divider {
background: rgba(0, 0, 0, 0.6);
height: auto; height: auto;
width: auto; width: auto;
margin-right: 15px; margin-right: 15px;
border-top: 1px solid #c0ccda;
} }
.dropdown-menu { .dropdown-menu {
text-align: center; text-align: center;
margin-bottom: 0.5rem;
margin-right: 1rem; margin-right: 1rem;
transition: all 0.3s ease-out; @include transition();
}
.languageSelector {
position: fixed;
right: 0.5rem;
bottom: 1rem;
z-index: 10000000;
background-color: $bg-primary;
box-shadow: $box-shadow;
} }
} }
@ -192,5 +180,5 @@
.feather-menu { .feather-menu {
width: 1.5rem; width: 1.5rem;
height: 1.5rem; height: 1.5rem;
stroke: #3c4858; stroke: $text-color;
} }

View file

@ -2,22 +2,21 @@
order: 1; order: 1;
flex: 20%; flex: 20%;
max-width: 20%; max-width: 20%;
/* background-color: lightsalmon; */ @include transition();
transition: all ease-out 0.5s;
.sidebar-holder { .sidebar-holder {
top: 2.5rem; top: 2.5rem;
position: sticky; position: sticky;
background-color: #f9fafc; background-color: $bg-primary;
height: 100vh; height: 100vh;
overflow: auto; overflow: auto;
box-shadow: 0px 8px 56px rgba(15, 80, 100, 0.16); box-shadow: $box-shadow;
transition: all ease-out 0.3s; @include transition();
.sidebar { .sidebar {
background: #f9fafc; background: $bg-primary;
height: 100vh; height: 100vh;
transition: all ease-out 0.3s; @include transition();
#search-box { #search-box {
margin-left: 5%; margin-left: 5%;
@ -28,12 +27,12 @@
margin-top: 30px; margin-top: 30px;
margin-bottom: 10px; margin-bottom: 10px;
border-radius: 5px; border-radius: 5px;
background-color: #e5e9f2; background-color: $bg-secondary;
transition: all 0.3s ease-out; @include transition();
border: 1px solid #c0ccda; border: 1px solid $border-color;
&:focus { &:focus {
border: 1pt solid #248aaa; border: 1pt solid $accent-color;
outline: none; outline: none;
} }
} }
@ -57,11 +56,11 @@
margin: 0; margin: 0;
padding: 0 1em; padding: 0 1em;
line-height: 2em; line-height: 2em;
color: #3c4858; color: $heading-color;
position: relative; position: relative;
i { i {
color: #3c4858; color: $heading-color;
font-size: 12px; font-size: 12px;
margin-right: 5px; margin-right: 5px;
} }
@ -81,7 +80,7 @@
top: 2.5rem; top: 2.5rem;
left: 1.5rem; left: 1.5rem;
bottom: 0.9rem; bottom: 0.9rem;
border-left: 1px solid; border-left: 1px solid $text-color;
} }
li { li {
&:before { &:before {
@ -89,14 +88,14 @@
display: block; display: block;
width: 18px; width: 18px;
height: 0; height: 0;
border-top: 1px solid; border-top: 1px solid $text-color;
margin-top: -1px; margin-top: -1px;
position: absolute; position: absolute;
top: 18px; top: 18px;
left: -2px; left: -2px;
} }
&:last-child:before { &:last-child:before {
background: #f9fafc; background: $bg-primary;
height: auto; height: auto;
top: 1.1rem; top: 1.1rem;
bottom: 0; bottom: 0;
@ -154,7 +153,7 @@
flex: 0%; flex: 0%;
max-width: 0%; max-width: 0%;
min-height: 100vh; min-height: 100vh;
transition: all ease-out 0.3s; @include transition();
.sidebar-holder { .sidebar-holder {
position: sticky; position: sticky;
@ -168,7 +167,7 @@
flex: 30%; flex: 30%;
max-width: 30%; max-width: 30%;
margin-right: 0.5rem; margin-right: 0.5rem;
transition: all ease-out 0.3s; @include transition();
} }
} }
@ -176,7 +175,7 @@
flex: 0%; flex: 0%;
max-width: 0%; max-width: 0%;
min-height: 100vh; min-height: 100vh;
transition: all ease-out 0.3s; @include transition();
.sidebar-holder { .sidebar-holder {
position: sticky; position: sticky;
@ -188,7 +187,7 @@
flex: 40%; flex: 40%;
max-width: 40%; max-width: 40%;
margin-right: 0.5rem; margin-right: 0.5rem;
transition: all ease-out 0.3s; @include transition();
} }
} }
@ -197,7 +196,7 @@
min-height: 0; min-height: 0;
max-height: 0; max-height: 0;
max-width: 100%; max-width: 100%;
transition: all ease-out 0.5s; @include transition();
.sidebar-holder { .sidebar-holder {
max-height: 0; max-height: 0;
@ -205,7 +204,7 @@
height: fit-content; height: fit-content;
overflow: hidden; overflow: hidden;
max-width: 100%; max-width: 100%;
transition: all ease-out 0.5s; @include transition();
.sidebar { .sidebar {
position: relative; position: relative;
@ -216,12 +215,12 @@
width: 100vw; width: 100vw;
min-height: 0; min-height: 0;
overflow: hidden; overflow: hidden;
transition: all ease-out 0.5s; @include transition();
.sidebar-tree { .sidebar-tree {
margin-left: 0rem; margin-left: 0rem;
max-height: 0; max-height: 0;
transition: all 0.5s ease-out; @include transition();
} }
} }
} }
@ -234,15 +233,15 @@
flex: none; flex: none;
max-height: 300vh; max-height: 300vh;
max-width: 100%; max-width: 100%;
transition: all ease-out 0.5s; @include transition();
.sidebar-holder { .sidebar-holder {
max-height: 200vh; max-height: 200vh;
transition: all ease-out 0.5s; @include transition();
.sidebar-tree { .sidebar-tree {
max-height: 200vh; max-height: 200vh;
transition: all 0.5s ease-out; @include transition();
} }
} }
} }

View file

@ -1,3 +1,52 @@
@use 'sass:map';
$progress-bar-colors: (
'blue': #048dff,
'yellow': #eebb4d,
'pink': #ed63d2,
'green': #2dca73,
'sky': #00c9e3,
'orange': #ff7c7c,
);
@mixin circular-progress-bar-color() {
@each $color, $value in $progress-bar-colors {
&.#{$color} {
.circular-progress-bar {
border-color: $value;
}
}
}
}
@mixin circular-progress-animation-breakpoints() {
$progress: 50;
$duration: 0;
@for $i from 1 through 10 {
.circular-progress-percentage-#{$progress} {
animation: circular-loading-#{$progress} #{$duration}s linear forwards 1.8s;
}
$progress: $progress + 5;
$duration: $duration + 0.18;
}
}
@mixin circular-progress-animation-keyframes($progress, $degree, $keyframes) {
@for $i from 1 through $keyframes {
@keyframes circular-loading-#{$progress} {
0% {
transform: rotate(0);
}
100% {
transform: rotate(#{$degree}deg);
}
}
$progress: $progress + 5;
$degree: $degree + 18;
}
}
.about-section { .about-section {
.social-link { .social-link {
list-style: none; list-style: none;
@ -5,12 +54,12 @@
a { a {
font-size: 1.5rem; font-size: 1.5rem;
color: #3c4858; color: $text-color;
padding: 0.5rem; padding: 0.5rem;
&:hover { &:hover {
color: #248aaa; color: $accent-color;
transition: all 0.3s ease-in; @include transition();
} }
} }
} }
@ -29,7 +78,7 @@
width: 100%; width: 100%;
height: 100%; height: 100%;
border-radius: 50%; border-radius: 50%;
border: 12px solid #f9fafc; border: 12px solid $bg-primary;
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
@ -42,9 +91,7 @@
top: 0; top: 0;
z-index: 1; z-index: 1;
} }
.circular-progress-left {
left: 0;
}
.circular-progress-bar { .circular-progress-bar {
width: 100%; width: 100%;
height: 100%; height: 100%;
@ -54,32 +101,38 @@
position: absolute; position: absolute;
top: 0; top: 0;
} }
.circular-progress-left .circular-progress-bar {
left: 100%; .circular-progress-left {
border-top-right-radius: 80px; left: 0;
border-bottom-right-radius: 80px;
border-left: 0; .circular-progress-bar {
transform-origin: center left; left: 100%;
border-top-right-radius: 80px;
border-bottom-right-radius: 80px;
border-left: 0;
transform-origin: center left;
}
} }
.circular-progress-right { .circular-progress-right {
right: 0; right: 0;
}
.circular-progress-right .circular-progress-bar { .circular-progress-bar {
left: -100%; left: -100%;
border-top-left-radius: 80px; border-top-left-radius: 80px;
border-bottom-left-radius: 80px; border-bottom-left-radius: 80px;
border-right: 0; border-right: 0;
transform-origin: center right; transform-origin: center right;
animation: circular-loading-1 1.8s linear forwards; animation: circular-loading-1 1.8s linear forwards;
}
} }
.circular-progress-value { .circular-progress-value {
width: 90%; width: 90%;
height: 90%; height: 90%;
padding: 1rem; padding: 1rem;
border-radius: 50%; border-radius: 50%;
background: #3c4858; background: $text-color;
font-size: 1rem; font-size: 1rem;
color: #f9fafc; color: $bg-primary;
line-height: initial; line-height: initial;
text-align: center; text-align: center;
position: absolute; position: absolute;
@ -89,211 +142,10 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
&.blue .circular-progress-bar { @include circular-progress-bar-color();
border-color: #048dff; @include circular-progress-animation-breakpoints();
} @include circular-progress-animation-keyframes($progress: 50, $degree: 0, $keyframes: 10);
&.yellow .circular-progress-bar { @include circular-progress-animation-keyframes($progress: 1, $degree: 180, $keyframes: 5);
border-color: #eebb4d;
}
&.pink .circular-progress-bar {
border-color: #ed63d2;
}
&.green .circular-progress-bar {
border-color: #2dca73;
}
&.sky .circular-progress-bar {
border-color: #00c9e3;
}
&.orange .circular-progress-bar {
border-color: #ff7c7c;
}
.circular-progress-percentage-50 {
animation: circular-loading-50 0s linear forwards 1.8s;
}
.circular-progress-percentage-55 {
animation: circular-loading-55 0.18s linear forwards 1.8s;
}
.circular-progress-percentage-60 {
animation: circular-loading-60 0.36s linear forwards 1.8s;
}
.circular-progress-percentage-65 {
animation: circular-loading-65 0.54s linear forwards 1.8s;
}
.circular-progress-percentage-70 {
animation: circular-loading-70 0.72s linear forwards 1.8s;
}
.circular-progress-percentage-75 {
animation: circular-loading-75 0.9s linear forwards 1.8s;
}
.circular-progress-percentage-80 {
animation: circular-loading-80 1.08s linear forwards 1.8s;
}
.circular-progress-percentage-85 {
animation: circular-loading-85 1.26s linear forwards 1.8s;
}
.circular-progress-percentage-90 {
animation: circular-loading-90 1.44s linear forwards 1.8s;
}
.circular-progress-percentage-95 {
animation: circular-loading-95 1.62s linear forwards 1.8s;
}
.circular-progress-percentage-100 {
animation: circular-loading-100 1.8s linear forwards 1.8s;
}
@keyframes circular-loading-50 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(0deg);
}
}
@keyframes circular-loading-55 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(18deg);
}
}
@keyframes circular-loading-60 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(36deg);
}
}
@keyframes circular-loading-65 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(54deg);
}
}
@keyframes circular-loading-70 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(72deg);
}
}
@keyframes circular-loading-75 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(90deg);
}
}
@keyframes circular-loading-80 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(108deg);
}
}
@keyframes circular-loading-85 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(126deg);
}
}
@keyframes circular-loading-90 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(144deg);
}
}
@keyframes circular-loading-95 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(162deg);
}
}
@keyframes circular-loading-100 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(180deg);
}
}
@keyframes circular-loading-1 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(180deg);
}
}
@keyframes circular-loading-2 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(144deg);
}
}
@keyframes circular-loading-3 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(90deg);
}
}
@keyframes circular-loading-4 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(36deg);
}
}
@keyframes circular-loading-5 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(126deg);
}
}
} }
@include media('<=large') { @include media('<=large') {

View file

@ -2,13 +2,13 @@
@include section-title-adjustment(); @include section-title-adjustment();
.card { .card {
background: #fff; background: $bg-card;
border-top: 2px solid #248aaa; border-top: 2px solid $accent-color;
height: 100%; height: 100%;
&:hover, &:hover,
&:focus { &:focus {
border-top: 2px solid #248aaa; border-top: 2px solid $hover-over-accent-color;
} }
.card-header { .card-header {
@ -16,7 +16,7 @@
border: none; border: none;
.sub-title { .sub-title {
color: #8392a5; color: $muted-text-color;
margin-top: 0.4rem; margin-top: 0.4rem;
} }
} }
@ -28,7 +28,7 @@
} }
.card-footer { .card-footer {
background: #fff; background: $bg-card;
border: none; border: none;
padding: 0; padding: 0;
padding-left: 0.7rem; padding-left: 0.7rem;

View file

@ -12,17 +12,17 @@
margin-left: 7px; margin-left: 7px;
margin-right: 7px; margin-right: 7px;
z-index: 1; z-index: 1;
background-color: #e5e9f2; background-color: $bg-secondary;
background-size: cover; background-size: cover;
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center;
position: relative; position: relative;
overflow: hidden; overflow: hidden;
transition: all 0.3s ease-out; @include transition();
.title { .title {
color: #e5e9f2; color: $inverse-text-color;
background-color: rgba(0, 0, 0, 0.7); background-color: rgba($bg-primary-inverse, 0.7);
opacity: 0; opacity: 0;
padding: 5px; padding: 5px;
position: absolute; position: absolute;
@ -35,19 +35,19 @@
&:hover { &:hover {
cursor: pointer; cursor: pointer;
transform: scale(1.1); transform: scale(1.1);
transition: all 0.3s ease-out; @include transition();
z-index: 20000; z-index: 20000;
.svg-inline--fa { .svg-inline--fa {
opacity: 1; opacity: 1;
font-size: 1rem; font-size: 1rem;
transition: all 0.3s ease-out; @include transition();
} }
.title { .title {
opacity: 1; opacity: 1;
bottom: 0px; bottom: 0px;
transition: bottom 0.3s ease-out; @include transition();
} }
} }
} }
@ -85,28 +85,28 @@
} }
.svg-inline--fa { .svg-inline--fa {
color: #8392a5; color: $muted-text-color;
background-color: rgba(0, 0, 0, 0.7); background-color: rgba($bg-primary-inverse, 0.7);
padding: 10px; padding: 10px;
font-size: 0rem; font-size: 0rem;
opacity: 0; opacity: 0;
} }
.caption { .caption {
background-color: rgba(0, 0, 0, 0.7); background-color: rgba($bg-primary-inverse, 0.7);
bottom: 1rem; bottom: 1rem;
left: 1rem; left: 1rem;
color: #e5e9f2; color: $inverse-text-color;
padding: 15px; padding: 15px;
position: absolute; position: absolute;
transition: all 0.3s ease-out; @include transition();
h4 { h4 {
color: #e5e9f2; color: $inverse-text-color;
} }
p { p {
font-size: 16px; font-size: 16px;
font-weight: 300; font-weight: 300;
color: #e5e9f2; color: $inverse-text-color;
} }
} }

View file

@ -4,7 +4,7 @@
.card { .card {
&:hover, &:hover,
&:focus { &:focus {
border-left: 2px solid #248aaa; border-left: 2px solid $accent-color;
} }
} }
@ -23,19 +23,19 @@
position: absolute; position: absolute;
left: 1rem; left: 1rem;
top: 0; top: 0;
background-color: #248aaa; background-color: $accent-color;
height: 100%; height: 100%;
width: 2px; width: 2px;
} }
.icon-holder { .icon-holder {
background-color: #248aaa; background-color: $accent-color;
border-radius: 50%; border-radius: 50%;
height: 2rem; height: 2rem;
width: 2rem; width: 2rem;
padding: 0.2rem; padding: 0.2rem;
text-align: center; text-align: center;
color: #e5e9f2; color: $text-over-accent-color;
position: relative; position: relative;
} }
} }
@ -71,9 +71,8 @@
div { div {
height: 2px; height: 2px;
/* width: 100%; */
margin-right: -1px; margin-right: -1px;
background-color: #248aaa; background-color: $accent-color;
} }
} }
@ -82,10 +81,10 @@
padding: 1rem; padding: 1rem;
margin-top: 0.5rem; margin-top: 0.5rem;
margin-bottom: 0.5rem; margin-bottom: 0.5rem;
border-left: 2px solid #248aaa; border-left: 2px solid $accent-color;
border-top: 1px solid #c0ccda; border-top: 1px solid $bg-primary;
border-bottom: 1px solid #c0ccda; border-bottom: 1px solid $bg-primary;
border-right: 1px solid #c0ccda; border-right: 1px solid $bg-primary;
border-radius: 5px; border-radius: 5px;
h5 { h5 {
@ -93,7 +92,7 @@
} }
.timeframe { .timeframe {
color: #8392a5; color: $muted-text-color;
text-align: right; text-align: right;
} }
@ -101,7 +100,7 @@
table { table {
margin-left: 1rem; margin-left: 1rem;
width: 100%; width: 100%;
transition: all 0.3s ease-out; @include transition();
background: none; background: none;
border: none; border: none;
@ -110,7 +109,7 @@
th { th {
background: none; background: none;
border: none; border: none;
color: #212529; color: $text-color;
} }
tr { tr {
@ -123,7 +122,7 @@
} }
.hidden-course { .hidden-course {
display: none; display: none;
transition: all 1s ease-out; @include transition();
} }
ul { ul {
margin-bottom: 0; margin-bottom: 0;
@ -168,5 +167,5 @@
} }
.education-alt .degree-info { .education-alt .degree-info {
border-right: 2px solid #248aaa; border-right: 2px solid $accent-color;
} }

View file

@ -7,7 +7,7 @@
padding-left: 1rem; padding-left: 1rem;
& > li { & > li {
margin-left: 0; margin-left: 0;
color: #3c4858; color: $text-color;
} }
} }
@ -18,8 +18,8 @@
.circle { .circle {
padding: 13px 20px; padding: 13px 20px;
border-radius: 50%; border-radius: 50%;
background-color: #248aaa; background-color: $accent-color;
color: #f9fafc; color: $text-over-accent-color;
max-height: 50px; max-height: 50px;
z-index: 2; z-index: 2;
} }
@ -33,7 +33,7 @@
&::after { &::after {
content: ''; content: '';
position: absolute; position: absolute;
border-left: 3px solid #248aaa; border-left: 3px solid $accent-color;
z-index: 1; z-index: 1;
height: 100%; height: 100%;
left: 50%; left: 50%;
@ -48,7 +48,7 @@
height: 40px; height: 40px;
} }
hr { hr {
border-top: 3px solid #248aaa; border-top: 3px solid $accent-color;
margin: 0; margin: 0;
top: 17px; top: 17px;
position: relative; position: relative;
@ -58,7 +58,7 @@
overflow: hidden; overflow: hidden;
} }
.corner { .corner {
border: 3px solid #248aaa; border: 3px solid $accent-color;
width: 100%; width: 100%;
position: relative; position: relative;
border-radius: 15px; border-radius: 15px;

View file

@ -1,19 +1,20 @@
.footer { .footer {
color: #8392a5 !important; color: $muted-text-color !important;
background-color: #1c2d41; background-color: $bg-primary-inverse;
position: relative; position: relative;
z-index: 9999; z-index: 9999;
h5 { h5 {
color: #c0ccda; color: $inverse-text-color;
} }
a { a {
color: #8392a5; color: $muted-text-color;
transition: all 0.3s ease-out; @include transition();
&:hover { &:hover {
margin-left: 5px; margin-left: 5px;
transition: all 0.3s ease-out; text-decoration: $muted-text-color underline;
@include transition();
} }
} }
@ -27,37 +28,42 @@
} }
hr { hr {
background-color: #8392a5; background-color: $muted-text-color;
} }
p:first-child { p:first-child {
color: #c0ccda; color: $inverse-text-color;
} }
input { input {
background-color: #c0ccda; background-color: $inverse-text-color;
&:focus { &:focus {
background-color: #e5e9f2; background-color: $bg-secondary;
} }
} }
#disclaimer { #disclaimer {
color: #8392a5 !important; color: $muted-text-color !important;
text-align: justify; text-align: justify;
& > strong { & > strong {
color: #c0ccda !important; color: $inverse-text-color !important;
} }
} }
#theme { #theme {
color: #c0ccda; color: $inverse-text-color;
img { img {
width: 32px; width: 32px;
display: inline-block;
} }
} }
#hugo {
#hugo:hover { &:hover {
margin-right: 5px; margin-right: 5px;
transition: all 0.3s ease-out; @include transition();
}
img {
display: inline-block;
}
} }
} }

View file

@ -2,7 +2,7 @@
height: 100vh; height: 100vh;
padding: 0; padding: 0;
margin: 0; margin: 0;
color: #f9fafc; color: $text-over-accent-color;
overflow: hidden; overflow: hidden;
.background { .background {
@ -16,12 +16,12 @@
filter: blur(3px); filter: blur(3px);
background-size: cover; background-size: cover;
} }
.arrow-center { .arrow-center {
display: flex; display: flex;
justify-content: center; justify-content: center;
} }
/* /*
Resolves https://github.com/hugo-toha/toha/issues/70 Resolves https://github.com/hugo-toha/toha/issues/70
@ -34,45 +34,46 @@
background-attachment: scroll; background-attachment: scroll;
} }
} }
.content { .content {
position: relative; position: relative;
top: -65%; top: -65%;
height: 60%; height: 60%;
} }
img { img {
width: 148px; width: 148px;
height: 148px; height: 148px;
background-color: #e7e7ef; background-color: $bg-secondary;
padding: 5px; padding: 5px;
margin-bottom: 10px; margin-bottom: 10px;
} }
.greeting, .greeting-subtitle { .greeting,
color: #f9fafc; .greeting-subtitle {
color: $text-over-accent-color;
} }
.typing-carousel { .typing-carousel {
font-size: 14pt; font-size: 14pt;
color: #f0f0f0; color: $text-over-accent-color;
} }
#typing-carousel-data { #typing-carousel-data {
display: none; display: none;
} }
.arrow { .arrow {
position: absolute; position: absolute;
color: #f9fafc; color: $text-over-accent-color;
font-size: 1.5rem; font-size: 1.5rem;
bottom: 0; bottom: 0;
} }
.bounce { .bounce {
animation: bounce 2s infinite; animation: bounce 2s infinite;
} }
@keyframes bounce { @keyframes bounce {
0%, 0%,
20%, 20%,
@ -88,64 +89,22 @@
transform: translateY(-15px); transform: translateY(-15px);
} }
} }
/* ============= Device specific fixes ======= */ @include media('<=small') {
/* Large screens such as TV */
@media only screen and (min-width: 1824px) {
}
/* Extra large devices (large desktops, 1200px and up) */
@media (max-width: 1400px) {
}
@media (max-width: 1200px) {
}
/* IPad Pro */
@media (max-width: 1024px) {
}
/* Large devices (desktops, 992px and up) */
@media (max-width: 992px) {
}
/* Medium devices (tablets, 768px and up) */
@media only screen and (max-width: 768px) {
}
/* Small devices (landscape phones, 576px and up) */
@media only screen and (max-width: 576px) {
.content { .content {
position: relative; position: relative;
top: -75%; top: -75%;
height: 65%; height: 65%;
} }
img { img {
width: 140px; width: 140px;
max-width: 50%; max-width: 50%;
height: auto; height: auto;
} }
.greeting { .greeting {
font-size: 24pt; font-size: 24pt;
} }
} }
}
/* iPhoneX, iPhone 6,7,8 */
@media only screen and (max-width: 375px) {
}
/* Galaxy S5, Moto G4 */
@media only screen and (max-width: 360px) {
}
/* iPhone 5 or before */
@media only screen and (max-width: 320px) {
}
}

View file

@ -1,7 +1,7 @@
.projects-section { .projects-section {
.card { .card {
.card-header { .card-header {
background-color: #f9fafc; background-color: $bg-card;
padding: 0.7rem; padding: 0.7rem;
padding-bottom: 0rem; padding-bottom: 0rem;
text-decoration: none; text-decoration: none;
@ -10,7 +10,7 @@
margin-right: 0.5rem; margin-right: 0.5rem;
} }
.sub-title { .sub-title {
color: #8392a5; color: $muted-text-color;
margin-top: 0.4rem; margin-top: 0.4rem;
span { span {

View file

@ -2,12 +2,12 @@
@include section-title-adjustment(); @include section-title-adjustment();
.card { .card {
background: #fff; background: $bg-card;
border-top: 2px solid #248aaa; border-top: 2px solid $accent-color;
&:hover, &:hover,
&:focus { &:focus {
border-top: 2px solid #248aaa; border-top: 2px solid $accent-color;
} }
.card-header { .card-header {
@ -17,7 +17,7 @@
flex-direction: column; flex-direction: column;
.sub-title { .sub-title {
color: #8392a5; color: $muted-text-color;
margin-top: 0.4rem; margin-top: 0.4rem;
span:nth-child(2) { span:nth-child(2) {
@ -33,7 +33,7 @@
} }
.card-footer { .card-footer {
background: #fff; background: $bg-card;
border: none; border: none;
padding: 0; padding: 0;
padding-left: 1rem; padding-left: 1rem;

View file

@ -16,7 +16,7 @@
width: 98%; width: 98%;
} }
} }
@include media('>=medium','<large') { @include media('>=medium', '<large') {
.container { .container {
max-width: 100%; max-width: 100%;
} }

View file

@ -5,12 +5,12 @@
height: 100%; height: 100%;
.card-head { .card-head {
background-color: #f9fafc; background-color: $bg-primary !important;
height: -moz-fit-content; height: -moz-fit-content;
height: fit-content; height: fit-content;
padding: 0.7rem; padding: 0.7rem;
padding-bottom: 0rem; padding-bottom: 0rem;
border-bottom: 0.0625rem solid rgba(0, 0, 0, 0.125); border-bottom: 0.0625rem solid rgba($accent-color, 0.4);
.card-img-xs { .card-img-xs {
margin-right: 0.5rem; margin-right: 0.5rem;

View file

@ -10,6 +10,36 @@ $breakpoints: (
ultra-large: 2560px, ultra-large: 2560px,
); );
// Color are chosen from TailwindCSS color scheme
// https://tailwindcss.com/docs/customizing-colors
// accent-color
$accent-color: #0891b2; // cyan 600
$hover-over-accent-color: #06b6d4; // cyan 500
$text-over-accent-color: #e4e4e7; // zinc 200
// background-color
$bg-primary: #f8fafc; // slate 50
$bg-primary-inverse: #0f172a; // slate 900
$bg-secondary: #e2e8f0; // slate 200
$bg-card: #fff;
// text-color
$heading-color: #1e293b; // slate 800
$text-color: #334155; // slate 700
$inverse-text-color: #cbd5e1; // slate 300
$muted-text-color: #64748b; // slate 500
$inline-code-color: #dc2626; // red 600
$highlight-color: #fde68a; // amber 200
// transitions
$transition-duration: 0.3s;
$transition-type: ease-out;
// borders and shadows
$border-color: rgba($accent-color, 0.1);
$box-shadow: 0px 8px 56px rgba(15, 80, 100, 0.16);
$brand-colors: ( $brand-colors: (
'facebook': #3b5998, 'facebook': #3b5998,
'twitter': #1da1f2, 'twitter': #1da1f2,
@ -20,25 +50,3 @@ $brand-colors: (
'diaspora': #1e1e1e, 'diaspora': #1e1e1e,
'whatsapp': #25d366, 'whatsapp': #25d366,
); );
@mixin reset-list {
margin: 0;
padding: 0;
list-style: none;
}
@mixin section-title-adjustment() {
h1 > span {
margin-top: -55px; /* Size of fixed header */
padding-bottom: 55px;
display: block;
}
}
@mixin brand-background() {
@each $brand, $color in $brand-colors {
.bg-#{$brand} {
background-color: $color;
}
}
}

View file

@ -15,7 +15,7 @@
</head> </head>
<body class="type-{{ .Page.Type }} kind-{{ .Page.Kind }}" data-spy="scroll" data-target="#TableOfContents" data-offset="80"> <body class="type-{{ .Page.Type }} kind-{{ .Page.Kind }}" data-spy="scroll" data-target="#TableOfContents" data-offset="80">
<div class="container-fluid bg-dimmed wrapper"> <div class="container-fluid bg-secondary wrapper">
<!----- ADD NAVBAR ---------------> <!----- ADD NAVBAR --------------->
{{ block "navbar" . }} {{ end }} {{ block "navbar" . }} {{ end }}

View file

@ -39,7 +39,7 @@
<div class="author-profile ml-auto align-self-lg-center"> <div class="author-profile ml-auto align-self-lg-center">
<img class="rounded-circle" src='{{ partial "helpers/get-author-image.html" . }}' alt="Author Image"> <img class="rounded-circle" src='{{ partial "helpers/get-author-image.html" . }}' alt="Author Image">
<h5 class="author-name">{{ partial "helpers/get-author-name.html" . }}</h5> <h5 class="author-name">{{ partial "helpers/get-author-name.html" . }}</h5>
<p>{{ .Page.Date | time.Format ":date_full" }}{{ if site.Params.features.readingTime }} | {{ .ReadingTime }} minute{{ if (ne .ReadingTime 1) }}s{{ end }}{{ end }}</p> <p class="text-muted">{{ .Page.Date | time.Format ":date_full" }}{{ if site.Params.features.readingTime }} | {{ .ReadingTime }} minute{{ if (ne .ReadingTime 1) }}s{{ end }}{{ end }}</p>
</div> </div>
<div class="title"> <div class="title">

View file

@ -33,7 +33,7 @@
{{ end }} {{ end }}
{{ if $sections }} {{ if $sections }}
{{ $background:= "bg-white"}} {{ $background:= "bg-primary"}}
{{ range sort $sections "section.weight" }} {{ range sort $sections "section.weight" }}
{{ if .section.enable }} {{ if .section.enable }}
<div class="container-fluid section-holder d-flex {{ $background }}"> <div class="container-fluid section-holder d-flex {{ $background }}">
@ -44,10 +44,10 @@
{{ end }} {{ end }}
</div> </div>
<!--- alter background color for next section ---> <!--- alter background color for next section --->
{{ if eq $background "bg-white" }} {{ if eq $background "bg-primary" }}
{{ $background = "bg-dimmed" }} {{ $background = "bg-secondary" }}
{{ else }} {{ else }}
{{ $background = "bg-white" }} {{ $background = "bg-primary" }}
{{end}} {{end}}
{{ end }} {{ end }}
{{ end }} {{ end }}

View file

@ -1,3 +1,7 @@
{{ $pageURL:= .RelPermalink }}
{{ if site.IsMultiLingual }}
{{ $pageURL = strings.TrimPrefix (path.Join "/" .Language.Lang) $pageURL }}
{{ end }}
<li class="nav-item dropdown"> <li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="languageSelector" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <a class="nav-link dropdown-toggle" href="#" id="languageSelector" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
{{ if ne site.Params.features.flags.enable false }} {{ if ne site.Params.features.flags.enable false }}
@ -8,7 +12,7 @@
</a> </a>
<div class="dropdown-menu" aria-labelledby="languageSelector"> <div class="dropdown-menu" aria-labelledby="languageSelector">
{{ range site.Home.AllTranslations }} {{ range site.Home.AllTranslations }}
<a class="dropdown-item nav-link languages-item" href="{{ .RelPermalink }}"> <a class="dropdown-item nav-link languages-item" href="{{ path.Join "/" (cond (eq .Language.Lang "en") "" .Language.Lang) $pageURL }}">
{{ if ne site.Params.features.flags.enable false }} {{ if ne site.Params.features.flags.enable false }}
{{ $countryCode := partial "helpers/country-code.html" . }} {{ $countryCode := partial "helpers/country-code.html" . }}
<span class="flag-icon flag-icon-{{$countryCode}}"></span> <span class="flag-icon flag-icon-{{$countryCode}}"></span>

View file

@ -112,7 +112,7 @@
{{- end }} {{- end }}
{{ $shouldAddSeparator:= partial "helpers/add-navbar-separator.html" . }} {{ $shouldAddSeparator:= partial "helpers/add-navbar-separator.html" . }}
{{ if $shouldAddSeparator }} {{ if $shouldAddSeparator }}
<div class="dropdown-divider" id="top-navbar-divider"></div> <div id="top-navbar-divider"></div>
{{ end }} {{ end }}
{{ if $blogEnabled }} {{ if $blogEnabled }}
<li class="nav-item"> <li class="nav-item">

View file

@ -43,11 +43,11 @@
</div> </div>
<h6>{{ .name }}</h6> <h6>{{ .name }}</h6>
{{ if .grade }} {{ if .grade }}
<h6><span>{{ .grade.scale }}: </span><span>{{ .grade.achieved }}</span> {{ i18n "out_of" }} <span>{{ .grade.outOf }}</span></h6> <h6 class="text-heading"><span>{{ .grade.scale }}: </span><span>{{ .grade.achieved }}</span> {{ i18n "out_of" }} <span>{{ .grade.outOf }}</span></h6>
{{ end }} {{ end }}
{{ if .publications }} {{ if .publications }}
<div class="publications"> <div class="publications">
<h6 class="text-muted">{{i18n "publications"}}</h6> <h6 class="text-heeading">{{i18n "publications"}}:</h6>
<ul> <ul>
{{ range .publications }} {{ range .publications }}
{{ if .url }} {{ if .url }}
@ -62,7 +62,7 @@
{{ if .takenCourses }} {{ if .takenCourses }}
{{ $collapseAfter := .takenCourses.collapseAfter | default 2 }} {{ $collapseAfter := .takenCourses.collapseAfter | default 2 }}
<div class="taken-courses"> <div class="taken-courses">
<h6 class="text-muted">{{ i18n "taken_courses" }}</h6> <h6 class="text-heading">{{ i18n "taken_courses" }}:</h6>
{{ if .takenCourses.showGrades }} {{ if .takenCourses.showGrades }}
{{ $hideScale := .takenCourses.hideScale }} {{ $hideScale := .takenCourses.hideScale }}
<table> <table>
@ -98,7 +98,7 @@
{{ end }} {{ end }}
{{ if .extracurricularActivities }} {{ if .extracurricularActivities }}
<div class="extracurricular-activities"> <div class="extracurricular-activities">
<h6 class="text-muted">{{ i18n "extracurricular_activities" }}</h6> <h6 class="text-heading">{{ i18n "extracurricular_activities" }}:</h6>
<ul> <ul>
{{ range .extracurricularActivities }} {{ range .extracurricularActivities }}
<li>{{ . | markdownify }}</li> <li>{{ . | markdownify }}</li>

View file

@ -43,11 +43,11 @@
</div> </div>
<h6>{{ .name }}</h6> <h6>{{ .name }}</h6>
{{ if .grade }} {{ if .grade }}
<h6><span class="text-muted">{{ .grade.scale }}: </span><span>{{ .grade.achieved }}</span> {{ i18n "out_of"}} <span>{{ .grade.outOf }}</span></h6> <h6><span class="text-heading">{{ .grade.scale }}: </span><span>{{ .grade.achieved }}</span> {{ i18n "out_of"}} <span>{{ .grade.outOf }}</span></h6>
{{ end }} {{ end }}
{{ if .publications }} {{ if .publications }}
<div class="publications"> <div class="publications">
<h6 class="text-muted">{{ i18n "publications"}}</h6> <h6 class="text-heading">{{ i18n "publications"}}:</h6>
<ul> <ul>
{{ range .publications }} {{ range .publications }}
{{ if .url }} {{ if .url }}
@ -62,7 +62,7 @@
{{ if .takenCourses }} {{ if .takenCourses }}
{{ $collapseAfter := .takenCourses.collapseAfter | default 2 }} {{ $collapseAfter := .takenCourses.collapseAfter | default 2 }}
<div class="taken-courses"> <div class="taken-courses">
<h6 class="text-muted">{{ i18n "taken_courses"}}</h6> <h6 class="text-heading">{{ i18n "taken_courses"}}:</h6>
{{ if .takenCourses.showGrades }} {{ if .takenCourses.showGrades }}
{{ $hideScale := .takenCourses.hideScale }} {{ $hideScale := .takenCourses.hideScale }}
<table> <table>
@ -98,7 +98,7 @@
{{ end }} {{ end }}
{{ if .extracurricularActivities }} {{ if .extracurricularActivities }}
<div class="extracurricular-activities"> <div class="extracurricular-activities">
<h6 class="text-muted">{{ i18n "extracurricular_activities"}}</h6> <h6 class="text-heading">{{ i18n "extracurricular_activities"}}:</h6>
<ul> <ul>
{{ range .extracurricularActivities }} {{ range .extracurricularActivities }}
<li>{{ . | markdownify }}</li> <li>{{ . | markdownify }}</li>

View file

@ -13,7 +13,7 @@
<p>{{ .company.overview | markdownify }}</p> <p>{{ .company.overview | markdownify }}</p>
<!-- Add the responsibilities handled at this position --> <!-- Add the responsibilities handled at this position -->
{{ if $position.responsibilities }} {{ if $position.responsibilities }}
<h6 class="text-muted">{{ i18n "responsibilities" }}</h6> <h6 class="text-heading">{{ i18n "responsibilities" }}</h6>
<ul class="justify-content-around"> <ul class="justify-content-around">
{{ range $position.responsibilities }} {{ range $position.responsibilities }}
<li>{{ . | markdownify }}</li> <li>{{ . | markdownify }}</li>