/var/www/flurhymez/resources/scss
Edit: /var/www/flurhymez/resources/scss/_components.scss (15616B)
//
// Theme Components
// --------------------------------------------------
// Accordion
.accordion {
.accordion-item {
border: 1px solid $border-color;
background-color: transparent;
margin-bottom: 15px;
border-radius: 0.475rem;
.accordion-button {
background-color: transparent;
&:not(.collapsed) {
background-color: transparent;
box-shadow: 0 0 0;
}
&:after {
transition: background-image 0.15s ease-in-out,
transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
}
&:hover {
color: $primary;
&:after {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23008ede'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
}
}
&:first-of-type {
.accordion-button {
border-radius: 0.475rem;
}
}
.accordion-body {
padding-top: 0;
}
}
}
// Alerts
.alert {
border: 0;
&.alert {
@each $color, $value in $theme-colors {
&-color {
h4,
i {
color: $value;
}
}
}
}
h4 {
font-size: 1.2em;
}
i {
font-size: 1.8em;
position: relative;
top: -4px;
}
p {
margin-bottom: 0;
}
}
// Badge
.badge {
font-size: 0.95em;
font-weight: 600;
color: #fff;
&.bg-light {
color: #000;
}
}
// Buttons
.btn {
padding: calc(0.5rem - 1px) calc(1rem - 1px);
font-size: 0.87rem;
font-weight: 500;
border-width: 2px;
> i {
font-size: 1.2em;
line-height: 0;
position: relative;
top: 5px;
display: inline-block;
margin: -2px 4px 0 0;
}
&.btn-icon {
width: 46px;
height: 46px;
text-align: center;
padding: 0;
line-height: 47px;
}
@each $color, $value in $theme-colors {
&.btn-#{$color} {
&:hover,
&:focus {
background-color: shade-color($value, 10%);
border-color: shade-color($value, 10%);
}
&:not(:disabled):not(.disabled):active {
background-color: shade-color($value, 15%);
border-color: shade-color($value, 15%);
}
}
&.btn-light-#{$color} {
background-color: tint-color($value, 80%);
border-color: tint-color($value, 80%);
color: $value;
&:hover,
&:focus {
background-color: $value;
border-color: $value;
color: #fff;
}
&:not(:disabled):not(.disabled):active {
background-color: shade-color($value, 15%);
border-color: shade-color($value, 15%);
color: #fff;
}
}
}
}
// Link
.link {
@include font-size(1.8rem);
> i {
font-size: 1.4em;
margin-top: -13px;
position: relative;
bottom: -10px;
transform: none #{"/*rtl:rotate(270deg)*/"};
}
&:hover,
&:focus {
color: $secondary;
}
}
.dark-theme {
.link {
color: $secondary;
&:hover,
&:focus {
color: #fff;
}
}
}
button.link {
background-color: transparent;
border: 0;
color: $primary;
transition: all 300ms ease-in-out;
&:hover,
&:focus {
color: $secondary;
}
}
.dark-theme {
button.link {
color: $secondary;
&:hover,
&:focus {
color: #fff;
}
}
}
// Dropdown
.dropdown-menu {
font-size: 0.87rem;
border: 0;
box-shadow: 0px 0px 6px rgba(#000, 0.04);
border-radius: 20px;
.dropdown-item {
color: $body-color;
&:hover,
&:focus,
&:active {
background-color: transparent;
color: $primary;
}
}
}
.dark-theme {
.dropdown-menu {
background-color: $dark;
.dropdown-item {
color: $body-color;
&:hover,
&:focus,
&:active {
color: $secondary;
}
}
}
}
// Forms
.form-control,
.form-select {
border-color: $light;
&:focus {
border-color: $light;
}
}
.form-label {
color: $text-color;
}
.input-icon {
position: relative;
> i {
position: absolute;
right: 10px;
top: 50%;
transform: translateY(-50%);
font-size: 1.3em;
color: $text-color;
}
.form-control {
padding-right: 35px;
}
&.icon-start {
> i {
position: absolute;
right: auto;
left: 10px;
}
.form-control {
padding-right: 0.75rem;
padding-left: 35px;
}
}
}
// Cards
.card {
border: 0;
border-radius: 20px;
box-shadow: 0px 0px 6px rgba(#000, 0.04);
}
.input-card {
.form-control {
height: 52px;
background-color: #fff;
border-radius: 20px;
}
}
// Table
.table-cards {
border-collapse: separate;
border-spacing: 0 10px;
tr {
box-shadow: 0px 0px 6px rgba(#000, 0.04);
border-radius: 20px;
td {
vertical-align: middle;
border: 0;
padding: 1.2rem 0.8rem;
background-color: #fff;
&.actions {
.dropdown {
> a {
font-size: 1.8em;
line-height: 0;
display: block;
color: $text-color;
&:hover,
&:focus {
color: $primary;
}
}
}
}
&:first-child {
border-radius: 20px 0 0 20px;
}
&:last-child {
border-radius: 0 20px 20px 0;
}
> span {
font-size: 0.9em;
margin-bottom: 5px;
display: block;
color: $text-color;
}
h4 {
font-size: 1em;
margin: 0;
}
}
}
}
// Pagination
.custom-pagination {
display: flex;
align-items: center;
justify-content: space-between;
.page-item {
.page-link {
border: 0;
margin: 0 10px;
border-radius: 10px;
font-size: 1.1em;
padding: 0.55rem 1rem;
box-shadow: 0px 0px 6px rgba(#000, 0.04);
color: $body-color;
}
&.active {
.page-link {
color: #fff;
}
}
}
}
// Tabs
.nav-tabs {
border: 0;
.nav-item {
.nav-link {
height: 52px;
border: 0;
color: $text-color;
border-radius: 0;
&.active {
background-color: $primary;
border: 0;
color: #fff;
&:hover {
color: #fff;
}
}
&:hover {
color: $primary;
}
}
&.show {
.nav-link {
background-color: $primary;
border: 0;
color: #fff;
&:hover {
color: #fff;
}
}
}
&:first-child {
.nav-link {
border-radius: 20px 0 0 20px;
}
}
&:last-child {
.nav-link {
border-radius: 0 20px 20px 0;
}
}
}
}
// Read More
.text-readmore {
.text {
position: relative;
overflow: hidden;
transition: all 300ms;
> p {
margin: 0;
}
.text-truncate {
max-width: 400px;
display: inline-block;
vertical-align: middle;
}
.readmore-btn,
.readless-btn {
display: inline-block;
vertical-align: middle;
}
.readless-btn {
display: none;
}
&.open {
.text-truncate {
max-width: unset;
overflow: unset;
text-overflow: unset;
white-space: unset;
}
.readless-btn {
display: inline-block;
}
.readmore-btn {
display: none;
}
}
}
}
// Modal
.modal {
.modal-content {
border-radius: 20px;
border: 0;
.modal-header {
border: 0;
}
.modal-footer {
border: 0;
}
}
}
// Social Media
.social-media {
list-style-type: none;
margin: 0;
padding: 0;
display: flex;
align-items: center;
li {
a {
@include font-size(2.6em);
@include margin-right(20px);
color: $body-color;
svg {
fill: $body-color;
}
&:hover {
color: $secondary;
svg {
fill: $secondary;
}
}
}
svg {
height: 29px;
width: auto;
position: relative;
top: -2px;
transition: all 300ms;
}
}
}
.dark-theme {
.social-media {
li {
a {
color: $secondary;
svg {
fill: $secondary;
}
&:hover {
color: $body-color;
svg {
fill: $body-color;
}
}
}
}
}
}
// List
.list {
list-style-type: none;
margin: 0;
padding: 0;
li {
a {
color: inherit;
margin-bottom: 5px;
display: inline-block;
font-weight: 500;
&:hover,
&:focus {
color: $primary;
}
}
}
}
// Page Head
.page-head {
padding-top: 10vh;
position: relative;
&::before {
content: "";
position: absolute;
right: -120px;
top: 24vh;
width: 240px;
height: 240px;
border-radius: 50%;
background-color: $secondary;
}
p {
@include font-size(2rem);
margin-bottom: 10px;
display: block;
}
h1 {
@include font-size(4.7rem);
font-weight: bold;
max-width: 60vw;
}
.page-head-img {
position: relative;
overflow: hidden;
height: 60vh;
border-radius: 0 1000px 1000px 0;
margin-top: 10vh;
img {
width: 100%;
height: 100%;
object-fit: cover;
}
}
}
@media (max-width: 992px) {
.page-head {
padding-top: 5vh;
&::before {
right: -50px;
top: 36vh;
width: 100px;
height: 100px;
display: none;
}
h1 {
@include font-size(7rem);
max-width: 100%;
}
.page-head-img {
height: 40vh;
margin-right: var(--bs-gutter-x, 0.75rem) !important;
}
}
}
// Slider
.swiper-container {
.swiper {
padding-bottom: 10vh;
}
.swiper-scrollbar {
width: 200px;
}
.swiper-button-next,
.swiper-button-prev {
transition: all 300ms;
&:hover {
transform: scale(1.3);
}
}
.swiper-button-next:after,
.swiper-button-prev:after {
color: $secondary;
margin: 0 20px;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
left: 30px;
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
right: 30px;
}
.swiper-pagination {
text-align: center;
padding: 0 40px 0;
bottom: 0;
display: flex;
align-items: center;
justify-content: center;
min-height: 30px;
.swiper-pagination-bullet {
background-color: $border-color;
opacity: 1;
border-radius: 30px;
height: 20px;
text-align: center;
width: 6px;
transition: all 300ms;
&:hover,
&:focus {
background-color: $secondary;
opacity: 1;
}
&.swiper-pagination-bullet-active {
background-color: $secondary;
height: 30px;
opacity: 1;
}
}
}
}
// Popover
.popover-container {
position: relative;
.popover-item {
display: inline-block;
}
.popover-content {
font-size: 1.2rem;
z-index: 111;
opacity: 0;
visibility: hidden;
transition: opacity 300ms, visibility 100ms;
&[data-show] {
opacity: 1;
visibility: visible;
}
> img {
height: 200px;
width: 200px;
border-radius: 50%;
object-fit: cover;
}
}
h3.popover-content {
@include font-size(2.2rem);
font-weight: bold;
display: initial;
line-height: 1.6;
max-width: 300px;
> span {
background-color: $secondary;
color: $body-color;
}
}
}
@media (max-width: 992px) {
.popover-container {
.popover-item {
display: inherit;
}
.popover-content {
opacity: 1;
visibility: visible;
width: auto;
}
}
}
#magicMouseCursor {
border: 0 !important;
background: rgba($primary, 0.4) !important;
}
#magicPointer {
background: $primary !important;
z-index: 99999 !important;
height: 12px !important;
width: 12px !important;
&.is-hover {
background: $secondary !important;
}
&.pointer-blur {
border: 1px solid rgba($secondary, 0.4) !important;
background: rgba($secondary, 0.4) !important;
box-shadow: 0px 0px 15px -5px rgba($secondary, 0.4) !important;
}
&.pointer-overlay {
box-shadow: 0px 0px 15px -5px rgba($secondary, 0.4) !important;
}
}
// Pagination
.pagination {
display: block;
hr.container {
margin: 5vh auto;
display: block;
}
.container {
display: flex;
align-items: center;
justify-content: center;
a {
@include font-size(1.8rem);
@include margin-right(1.8rem);
@include margin-left(1.8rem);
color: $body-color;
&.active,
&:hover,
&:focus {
color: $primary;
}
}
.next,
.prev {
> i {
font-size: 2.7rem;
margin-top: -10px;
position: relative;
top: 12px;
transform: none #{"/*rtl:rotate(180deg)*/"};
}
}
.pages {
> a {
color: $text-color;
&.active,
&:hover,
&:focus {
color: $body-color;
}
}
}
}
}
@media (max-width: 992px) {
.pagination {
.container {
justify-content: space-between;
.next,
.prev {
> i {
font-size: 2rem;
margin-top: -6px;
top: 8px;
}
}
.pages {
display: none;
}
}
}
}
// Loader
.loader {
position: fixed;
left: 0;
right: 0;
bottom: 0;
top: auto;
height: 100%;
width: 100%;
display: block;
background-color: $dark;
z-index: 9999;
display: flex;
align-items: center;
justify-content: center;
> img {
height: 170px;
}
}
.dark-theme {
.loader {
background-color: $dark;
}
}
// Change Page
.change-page {
position: fixed;
top: 100%;
left: 0;
height: 100%;
width: 100%;
background-color: $dark;
display: flex;
justify-content: center;
align-items: center;
color: #fff;
z-index: 9999;
> h1 {
opacity: 0;
position: relative;
top: 50px;
}
}
.dark-theme {
.change-page {
background-color: $dark;
> h1 {
color: $secondary;
}
}
}
.fade-leave,
.fade-enter-to {
opacity: 1;
}
.fade-leave-active,
.fade-enter-active {
transition: opacity 4s linear;
}
.fade-leave-to,
.fade-enter {
opacity: 0;
}
// Theme Button
header .navbar-nav .nav-item .nav-link.theme-toggle {
font-size: 1.5em;
height: 34px;
width: 34px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
}
.light-theme {
header .navbar-nav .nav-item .nav-link.theme-toggle {
background-color: $darken;
color: #fff !important;
}
}
.dark-theme {
header .navbar-nav .nav-item .nav-link.theme-toggle {
background-color: $secondary;
color: $body-color !important;
}
}