This commit is contained in:
s-lnk
2026-04-30 21:58:39 +03:00
commit aabe5fe2b7
2923 changed files with 366740 additions and 0 deletions
@@ -0,0 +1,308 @@
//
// Navbar dropdown
//
.navbar {
.dropdown-menu {
min-width: $navbar-dropdown-menu-width;
padding: $navbar-dropdown-padding-y $navbar-dropdown-padding-x;
background-color: $navbar-dropdown-bg;
border: $navbar-dropdown-border-width solid $navbar-dropdown-border-color;
@include border-radius($navbar-dropdown-border-radius);
@include box-shadow($navbar-dropdown-box-shadow);
// List group
.list-group {
// For items wrapped in divs
.list-group-item {
background: transparent;
padding-left: 0;
padding-right: 0;
&:hover {
.heading {
color: $navbar-dropdown-link-hover-color;
}
}
}
}
}
// Dropdown items
.dropdown-header {
padding: 0;
color: $navbar-dropdown-heading-color;
}
.dropdown-item {
padding: $navbar-dropdown-item-padding-y $navbar-dropdown-item-padding-x;
color: $navbar-dropdown-link-color;
font-size: $navbar-dropdown-link-font-size;
font-weight: $navbar-dropdown-link-font-weight;
&:first-child {
@include border-top-radius($navbar-dropdown-border-radius);
}
&:last-child {
@include border-bottom-radius($navbar-dropdown-border-radius);
}
@include hover-focus {
color: $navbar-dropdown-link-hover-color;
text-decoration: none;
background: transparent;
}
&.active,
&:active {
color: $navbar-dropdown-link-active-color;
text-decoration: none;
@include gradient-bg($navbar-dropdown-link-active-bg);
}
}
// Dropdowm xl elements
.dropdown-img-left {
display: flex;
height: 100%;
flex-direction: column;
justify-content: center;
align-items: center;
padding: 1.625rem 1.75rem;
background: no-repeat center center/cover;
@include border-left-radius($dropdown-border-radius);
&:before {
content: "";
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: rgba(theme-color("primary"), .8);
border-radius: inherit;
}
}
.dropdown-menu-xl,
.dropdown-menu-lg {
padding: 2rem 2.5rem;
.dropdown-header {
padding-top: $navbar-dropdown-heading-padding-y;
padding-bottom: $navbar-dropdown-heading-padding-y;
color: theme-color("primary");
}
}
}
// Generate series of `.navbar-expand-*` responsive classes for configuring
// where your navbar collapses.
.navbar-expand {
@each $breakpoint in map-keys($grid-breakpoints) {
$next: breakpoint-next($breakpoint, $grid-breakpoints);
$infix: breakpoint-infix($next, $grid-breakpoints);
&#{$infix} {
@include media-breakpoint-down($breakpoint) {
.navbar-collapse {
.dropdown-menu {
padding-left: 0;
padding-right: 0;
background: transparent;
@include border-radius(0);
&.show {
border-bottom: 1px solid $navbar-dropdown-divider-bg;
}
}
.dropdown-menu-single {
padding-left: 1rem;
padding-top: 0;
padding-bottom: 0;
border-left: 3px solid theme-color("primary");
}
.dropdown-item {
position: relative;
font-size: $navbar-nav-link-font-size;
font-weight: $navbar-nav-link-font-weight;
}
.dropdown-img-left {
@include border-radius($dropdown-border-radius);
}
.dropdown-submenu {
&.show {
.dropdown-toggle:after {
transform: rotate(90deg);
@include transition($transition-base);
}
}
}
.delimiter {
border-top: 1px solid $border-color;
padding-top: 2.5rem;
}
.navbar-btn {
width: 100%;
margin-top: 1rem;
padding: 1rem 1.75rem;
background-color: transparent;
color: theme-color("primary");
border: 0;
border-top: 1px solid $border-color;
@include border-top-radius(0);
}
.nav-item.dropdown {
.dropdown-toggle {
&.nav-link {
&:after {
transform: rotate(-90deg);
@include transition($transition-base);
}
}
&:after {
font-size: .75rem;
float: right;
}
}
&.show {
.dropdown-toggle {
&.nav-link {
&:after {
transform: rotate(0);
}
}
}
}
}
}
}
@include media-breakpoint-up($next) {
.dropdown:not(.dropdown-submenu):not(.dropdown-fluid) {
> .dropdown-menu:not(.dropdown-menu-right) {
margin-left: -1.25rem;
}
> .dropdown-menu-right {
margin-right: -1.25rem;
}
}
// Dropdown menu
.dropdown-menu {
.list-group-emphasized > li {
.list-group-item {
transform: scale(1);
@include transition($transition-base);
}
.media-body * {
@include transition($transition-base);
}
&:hover {
.list-group-item {
z-index: 11;
transform: scale(1.05);
background-color: $navbar-dropdown-link-hover-bg;
@include box-shadow($box-shadow);
@include border-radius($navbar-dropdown-border-radius);
}
}
}
}
// List group
.list-group {
.list-group-item {
&:first-child {
@include border-top-radius($navbar-dropdown-border-radius);
}
&:last-child {
@include border-bottom-radius($navbar-dropdown-border-radius);
}
}
// For items wrapped in list items
> li {
&:first-child {
.list-group-item {
@include border-top-radius($navbar-dropdown-border-radius);
}
}
&:last-child {
.list-group-item {
@include border-bottom-radius($navbar-dropdown-border-radius);
}
}
}
}
// Additional dropdown background
.bg-dropdown-secondary {
background-color: darken($navbar-dropdown-bg, 2%);
}
.dropdown-body-left {
@include border-left-radius($dropdown-border-radius);
}
.dropdown-body-right {
@include border-right-radius($dropdown-border-radius);
}
// Dropdown submenu
.dropdown-submenu {
.dropdown-menu {
min-width: 16rem;
margin-left: 1rem;
&:before {
content: '';
border-left: 1.5rem solid transparent;
position: absolute;
left: -1rem;
top: 0;
height: 100%;
}
}
.dropdown-item {
&:after {
right: $navbar-dropdown-item-padding-x;
}
}
}
// Inner elements
.dropdown-body {
padding: 2rem 2.5rem;
}
.delimiter {
border-right: 1px solid $border-color;
}
}
}
}
}
@@ -0,0 +1,430 @@
//
// Navbar
//
.navbar {
position: relative;
z-index: 101;
// Container
.container {
position: relative;
margin: 0 auto;
padding-left: $grid-gutter-width / 2;
padding-right: $grid-gutter-width / 2;
}
}
.navbar-nav {
.nav-link {
font-size: $navbar-nav-link-font-size;
font-weight: $navbar-nav-link-font-weight;
text-transform: $navbar-nav-link-text-transform;
letter-spacing: $navbar-nav-link-letter-spacing;
@include transition($navbar-transition);
i, svg, img {
margin-right: .5rem;
}
}
.media-pill {
.avatar {
width: 36px;
height: 36px;
}
}
}
.nav-link {
> img,
> svg {
height: 14px;
margin-right: .5rem;
position: relative;
top: -1px;
}
.icon-flag {
width: 19px;
}
}
.navbar-text {
font-size: $navbar-nav-link-font-size;
}
.navbar-user {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-around;
}
.navbar-img-brand {
font-size: initial;
}
// Modifiers
.navbar-shadow {
@include box-shadow($navbar-box-shadow);
}
// Transition to main navbar to topbar
.header,
.navbar,
.navbar-top {
@include transition($transition-base);
}
// Borders
.navbar-border {
&.navbar-dark {
border-bottom: 1px solid rgba($white, .1) !important;
.border-bottom {
border-bottom: 1px solid rgba($white, .1) !important;
}
}
&.navbar-light {
border-bottom: 1px solid rgba($black, .04) !important;
.border-bottom {
border-bottom: 1px solid rgba($black, .1) !important;
}
}
}
.navbar-dark {
.border-bottom {
border-bottom: 1px solid rgba($white, .1) !important;
}
}
.navbar-light {
.border-bottom {
border-bottom: 1px solid rgba($black, .1) !important;
}
}
// Transparent navbar
.header-transparent {
width: 100%;
position: absolute;
top: 0;
left: 0;
z-index: $zindex-fixed;
.navbar-main {
.container:not(.border-0) {
&::after {
content: "";
position: absolute;
right: 0;
bottom: -$navbar-padding-y;
left: 0;
border-top: 1px solid rgba(255, 255, 255, .2);
}
}
}
.navbar-top {
background-color: transparent !important;
border: 0;
padding-left: 1rem;
padding-right: 1rem;
}
.navbar:not(.sticky) {
background-color: transparent !important;
border: 0;
box-shadow: none;
}
+ main section:first-child:not([data-spotlight]) {
.container {
padding-top: 5rem;
}
}
}
// Header
// class used to create a fullscreen container for the main navs
.header-collapse-show {
min-height: 100%;
width: 100%;
// position: fixed;
top: 0;
z-index: 1000;
}
// Sticky navbar
.navbar-sticky {
position: -webkit-sticky;
&.sticky {
position: fixed;
width: 100%;
left: 0;
top: -100px;
transform: translateY(100px);
z-index: $zindex-fixed;
border-top: 0;
@include box-shadow($box-shadow-lg);
@include transition($transition-base);
}
}
// Top navbar
.navbar-top {
position: relative;
display: flex;
align-items: center;
.navbar-nav {
flex-direction: row;
.nav-item:last-child {
margin-right: 0;
}
.nav-link {
padding: .5rem .5rem;
}
}
}
// Generate series of `.navbar-expand-*` responsive classes for configuring
// where your navbar collapses.
.navbar-expand {
@each $breakpoint in map-keys($grid-breakpoints) {
$next: breakpoint-next($breakpoint, $grid-breakpoints);
$infix: breakpoint-infix($next, $grid-breakpoints);
&#{$infix} {
@include media-breakpoint-down($breakpoint) {
// Brand
.navbar-brand {
img {
height: $navbar-brand-size;
}
&.dropdown-toggle {
&:after {
float: none;
font-size: 1rem;
opacity: .6;
}
&:hover {
&:after {
opacity: 1;
}
}
}
}
// Navbar nav
.navbar-nav {
&:not(.flex-row) {
.nav-link {
padding: .625rem 0;
}
.dropdown-menu {
box-shadow: none;
min-width: auto;
.media {
svg {
width: 30px;
}
}
}
}
&.flex-row {
.nav-link {
padding-left: .675rem;
padding-right: .675rem;
}
.dropdown {
position: static;
}
.dropdown-menu {
width: calc(100% - #{$grid-gutter-width});
position: absolute;
top: 60px;
left: $grid-gutter-width / 2;
right: auto;
}
}
.dropdown:not(.dropdown-submenu) {
> .dropdown-menu {
display: block !important;
}
}
}
// Navbar collapse
.navbar-collapse {
background: $navbar-collapse-bg;
.navbar-nav {
.nav-item {
.nav-link {
color: $navbar-collapse-nav-link-color;
}
}
.nav-item-spaced {
margin-bottom: 1.5rem;
}
.dropdown-item {
color: $navbar-collapse-dropdown-item-color;
}
}
.navbar-toggler {
position: absolute;
top: 0;
right: .5rem;
color: $navbar-collapse-nav-link-color;
z-index: 100;
}
}
// Fading collapse
.navbar-collapse-fade {
z-index: 1050;
height: auto !important;
opacity: 0;
&.collapsing,
&.show {
animation: show-navbar-collapse .2s ease forwards;
animation-delay: .15s;
}
&.collapsing-out {
opacity: 0;
transition: opacity .3s linear;
animation-delay: 0;
animation: none;
}
}
// Overlayed collapse
.navbar-collapse-overlay {
position: fixed;
top: 1rem;
right: 1rem;
left: 1rem;
max-height: calc(100vh - 2rem) !important;
z-index: 100;
padding: 1rem 0;
overflow-y: scroll;
-webkit-overflow-scrolling: touch;
transform: translateY(-100%);
opacity: 0;
transition-property: opacity,transform;
transform-origin: top center;
@include transition(all $transition-base-duration ease-in-out);
@include box-shadow($box-shadow-lg);
@include border-radius($border-radius);
&.show {
opacity: 1;
transform: translateY(0);
@include transition(all $transition-base-duration ease-in-out);
}
.nav-item {
padding: 0 1.5rem;
}
}
}
@include media-breakpoint-up($next) {
// Brand
.navbar-brand {
img {
height: $navbar-brand-size;
}
&.dropdown-toggle {
&:after {
display: none;
}
}
}
// Navbar nav
.navbar-nav {
.nav-link {
padding-top: $navbar-nav-link-padding-y;
padding-bottom: $navbar-nav-link-padding-y;
border-radius: $navbar-nav-link-border-radius;
}
.nav-link-icon {
padding-left: .75rem;
padding-right: .75rem;
border-radius: $navbar-nav-link-border-radius;
i {
margin-right: 0;
}
}
}
// Navbar collapse
.navbar-collapse {
.collapse-header {
display: none;
}
}
}
}
}
}
// Navabr toggler
.navbar-toggler-icon {
width: $navbar-toggler-icon-width;
height: $navbar-toggler-icon-height;
}
// Keyframes
@keyframes show-navbar-collapse {
0% {
opacity: 0;
transform: translateX(30px);
}
100% {
opacity: 1;
transform: translateX(0);
}
}