smartmenus
Version:
Website/web app navbars with collapsible navs or dropdowns made easy yet highly configurable.
1 lines • 30.2 kB
Source Map (JSON)
{"version":3,"sourceRoot":"","sources":["../../../src/css/variables/_layout.scss","../../../src/css/layout/components/_navbar.scss","../../../src/css/layout/components/_container.scss","../../../src/css/layout/components/_brand.scss","../../../src/css/layout/components/_toggler.scss","../../../src/css/layout/components/_collapse.scss","../../../src/css/layout/components/_offcanvas.scss","../../../src/css/layout/components/_offcanvas-overlay.scss","../../../src/css/layout/components/_nav.scss","../../../src/css/layout/components/_nav-item.scss","../../../src/css/layout/components/_nav-item-separator.scss","../../../src/css/layout/components/_nav-link.scss","../../../src/css/layout/components/_sub-toggler.scss","../../../src/css/layout/components/_sub.scss","../../../src/css/layout/components/_sub-item.scss","../../../src/css/layout/components/_sub-item-separator.scss","../../../src/css/layout/components/_sub-link.scss","../../../src/css/layout/utility/_animations.scss","../../../src/css/layout/utility/_utility.scss"],"names":[],"mappings":"AA8EA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AC5FF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAEE;EACA;EAMF;EACA;;;AAEF;AAAA;AAAA;EAGE;;;AAOF;EACE;;;AAIF;EACE;IACE;;;AAMF;EACE;;;AAEF;EACE;IACE;;;AAOJ;EACE;EACA;;;AAEF;EACE;IACE;IACA;;;AAOJ;EACE;EACA;;;AAEF;EACE;EACA;;;AAMF;AAAA;EAEE;EACA;EACA;EACA;;;AAEF;EACE;EACA;;;AAMF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;;;AAEF;EACE;IACE;;;EAEF;AAAA;IAEE;IACA;IACA;IACA;IACA;IACA;;;EAEF;IACE;IACA;;;EAEF;IACE;;;AAGJ;EACE;EACA;EACA;;;AAEF;EACE;EACA;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;IACE;IACA;IACA;;;EAEF;IACE;IACA;;;AC1JN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACRF;EACE;EACA;EACA;;;ACHF;EACE;EACA;;;AAEF;EACE;;;AAEF;EACE;IACE;;;AAKJ;EACE;;;AAIF;EACE;EACA;;;AAEF;EACE;;;AAEF;AAAA;EAEE;;;AAEF;AAAA;EAEE;;;AAIF;EACE;EACA;EACA;EACA;;;AAIF;EACE;;;AAEF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;EACA;;;AAIF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AAIF;EACE;;;AAMA;EACE;;;AAEF;EACE;IACE;;;AAKJ;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAEF;EACE;IACE;;;AAOJ;EACE;;;AAEF;EACE;IACE;;;AC7HN;EACE;EACA;;;AAEF;AAAA;EAEE;;;AAEF;EACE;IACE;;;EAEF;IACE;;;AAGJ;EACE;EACA;EACA;EACA;;;AAEF;EACE;IACE;IACA;IACA;IACA;;;AAMF;AAAA;EAEE;EACA;;;AAEF;AAAA;EAEE;EACA;;;AAEF;EACE;AAAA;IAEE;IACA;;;AAOJ;EACE;IACE;;;ACvDJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;EACA;EACA;;;AAEF;AAAA;EAEE;EACA;EACA;;;AAEF;EACE;;;AAEF;AAAA;EAEE;;;AAEF;EACE;IACE;;;EAEF;IACE;;;AAGJ;EACE;IACE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;;AAGJ;EACE;;;AAEF;EACE;IACE;;;AAIJ;EACE;IACE;;EAEF;IACE;;;ACjEJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;AAAA;EAEE;;;AAEF;EACE;IACE;;;EAEF;IACE;;;ACpBN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AAEF;EACE;IACE;;;AAMF;EACE;EACA;;;AAEF;EACE;IACE;IACA;;;AAUJ;EACE;;;AAEF;EACE;IACE;;;AAOJ;EACE;;;AAEF;EACE;IACE;;;AAOJ;EACE;;;AAEF;EACE;IACE;;;AAOJ;EACE;;;AAEF;EACE;IACE;;;AAOJ;EACE;;;AAEF;EACE;IACE;;;AC3FN;EACE;EACA,eACE;EAGF;EACA;EACA;EACA;EACA;;;AAKA;EACE;;;AAEF;EACE;IACE;;;AAOJ;EACE;;;AAEF;EACE;IACE;;;AASN;EACE;;;AC1CF;EACE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;EACA;EACA;EACA;;;AAEF;EACE;IACE;IACA;IACA;IACA;;;AAMF;EACE;EACA;EACA;EACA;;;AAEF;EACE;IACE;IACA;IACA;IACA;;;ACxCN;EACE;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AAEF;EACE;IACE;;;AAGJ;EACE;;;AAKA;EACE;;;AAEF;EACE;IACE;;;AAWN;EACE;EACA;;;AAIF;EACE;EACA;EAEE;EAKF;EACA;EACA;EACA;EACA;;;ACzDF;EACE;EACA;EACA;EAEA;EACA;EAEE;EAKF;EACA;EACA;EACA;;;AAEF;EACE;;;AAIF;AAAA;EAEE;EACA;;;AC1BF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAEF;AAAA;EAEE;;;AAEF;EACE;IACE;;;EAEF;IACE;;;AAKJ;EACE;EACA;EACA;;;AAEF;EACE;IACE;IACA;IACA;;;AAGJ;EACE;IACE;;;EAEF;IACE;;;AAEF;EACE;IACE;;;EAEF;IACE;;;AASN;EACE;EACA;;;AAKA;EACE;EACA;EACA;EACA;;;AAEF;EACE;IACE;IACA;IACA;IACA;;;ACzEN;EACE;EACA,eACE;EAGF;EACA;EACA;EACA;EACA;;;ACVF;EACE;EACA;EACA;EACA;EACA;;;ACLF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AAEF;EACE;IACE;;;AAGJ;EACE;;;AASF;EACE;EACA;;;AAIF;EACE;EACA;EAEE;EAKF;EACA;EACA;EACA;EACA;;;AC7CF;EACE;IACE;IACA;;EAEF;IACE;IACA;;;AAIJ;EACE;IACE;;EAEF;IACE;;;AChBJ;EACE;IACE;;;AAIJ;EACE;IACE","file":"src/css/smartmenus-only-layout.css","sourcesContent":["//\n// SASS-only variables\n//\n\n\n// Viewport breakpoints\n$vp-large-min: 768px !default;\n$vp-small-max: $vp-large-min - 0.02 !default;\n\n\n// Features support (you may disable any feature you don't need to decrease the size of the generated CSS)\n$support-navbar-vertical: true !default;\n$support-navbar-inline: true !default;\n$support-navbar-sticky: true !default;\n$support-navbar-fixed: true !default;\n$support-navbar-offcanvas: true !default;\n$support-navbar-sidebar: true !default;\n$support-nav-left: true !default;\n$support-nav-center: true !default;\n$support-nav-right: true !default;\n$support-nav-fill: true !default;\n$support-nav-justify: true !default;\n\n\n// CSS variables prefix\n$prefix: sm !default;\n\n\n// CSS variables scope (you could change this to :root if you like)\n$var-scope: '.sm-navbar' !default;\n\n\n// RTL mode\n$rtl: false !default;\n\n\n//\n// SASS and CSS variables\n//\n\n\n// Components\n\n// Navbar\n$navbar-z-index: 9999 !default;\n\n// Sticky top navbar\n$navbar-sticky-top-offset: 0 !default;\n\n// Sticky bottom navbar\n$navbar-sticky-bottom-offset: 0 !default;\n\n// Sidebar navbar\n$navbar-sidebar-width: 300px !default;\n$navbar-sidebar-centered-layout-max-width: 1200px !default;\n\n// Container\n$container-max-width: 960px !default;\n\n// Collapse\n$collapse-max-height: calc(100vh - 70px) !default;\n$collapse-show-animation: sm-ani-collapse 0.25s ease-in !default;\n$collapse-hide-animation: sm-ani-collapse 0.25s ease-in reverse !default;\n\n// Offcanvas\n$offcanvas-width: 300px !default;\n\n// Offcanvas Overlay\n$offcanvas-overlay-bg: rgba(0, 0, 0, 0.3) !default;\n\n// Sub\n$sub-min-width: 12em !default;\n$sub-collapsible-show-animation: sm-ani-collapse 0.25s ease-in !default;\n$sub-collapsible-hide-animation: sm-ani-collapse 0.25s ease-in reverse !default;\n$sub-dropdowns-show-animation: none !default;\n$sub-dropdowns-hide-animation: sm-ani-fade 0.25s ease-in reverse !default;\n\n\n#{$var-scope} {\n --#{$prefix}-navbar-z-index: #{$navbar-z-index};\n --#{$prefix}-navbar-sticky-top-offset: #{$navbar-sticky-top-offset};\n --#{$prefix}-navbar-sticky-bottom-offset: #{$navbar-sticky-bottom-offset};\n --#{$prefix}-navbar-sidebar-width: #{$navbar-sidebar-width};\n --#{$prefix}-navbar-sidebar-centered-layout-max-width: #{$navbar-sidebar-centered-layout-max-width};\n --#{$prefix}-container-max-width: #{$container-max-width};\n --#{$prefix}-collapse-max-height: #{$collapse-max-height};\n --#{$prefix}-collapse-show-animation: #{$collapse-show-animation};\n --#{$prefix}-collapse-hide-animation: #{$collapse-hide-animation};\n --#{$prefix}-offcanvas-width: #{$offcanvas-width};\n --#{$prefix}-offcanvas-overlay-bg: #{$offcanvas-overlay-bg};\n --#{$prefix}-sub-min-width: #{$sub-min-width};\n --#{$prefix}-sub-collapsible-show-animation: #{$sub-collapsible-show-animation};\n --#{$prefix}-sub-collapsible-hide-animation: #{$sub-collapsible-hide-animation};\n --#{$prefix}-sub-dropdowns-show-animation: #{$sub-dropdowns-show-animation};\n --#{$prefix}-sub-dropdowns-hide-animation: #{$sub-dropdowns-hide-animation};\n}\n","// Navbar\n\n.sm-navbar {\n box-sizing: border-box;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n position: relative;\n z-index: var(--#{$prefix}-navbar-z-index);\n @if not $rtl {\n direction: ltr;\n text-align: left;\n } @else {\n direction: rtl;\n text-align: right;\n }\n\n line-height: normal;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.sm-navbar *,\n.sm-navbar *::before,\n.sm-navbar *::after {\n box-sizing: inherit;\n}\n\n\n// Navbar variants\n\n// Dropdowns only\n.sm-navbar--dropdowns-only {\n flex-wrap: nowrap;\n}\n\n// Collapsible only\n@media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--collapsible-only) {\n flex-wrap: nowrap;\n }\n}\n\n@if $support-navbar-vertical {\n // Vertical navbar (for navbars with dropdowns)\n .sm-navbar--vertical.sm-navbar--dropdowns-only:not(.sm-navbar[class*='sm-navbar--offcanvas']) {\n display: block;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar--vertical:not(.sm-navbar--offcanvas-only) {\n display: block;\n }\n }\n}\n\n@if $support-navbar-inline {\n // Inline (not full-width) navbar (for navbars with dropdowns)\n .sm-navbar--inline.sm-navbar--dropdowns-only {\n display: inline-flex;\n vertical-align: top;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar--inline {\n display: inline-flex;\n vertical-align: top;\n }\n }\n}\n\n@if $support-navbar-sticky {\n // Sticky navbar\n .sm-navbar--sticky-top {\n position: sticky;\n top: var(--#{$prefix}-navbar-sticky-top-offset);\n }\n .sm-navbar--sticky-bottom {\n position: sticky;\n bottom: var(--#{$prefix}-navbar-sticky-bottom-offset);\n }\n}\n\n@if $support-navbar-fixed {\n // Fixed navbar\n .sm-navbar--fixed-top,\n .sm-navbar--fixed-bottom {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n }\n .sm-navbar--fixed-bottom {\n top: auto;\n bottom: 0;\n }\n}\n\n@if $support-navbar-sidebar {\n // Sidebar navbar\n .sm-navbar--sidebar-only {\n display: block;\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n width: var(--#{$prefix}-navbar-sidebar-width);\n overflow-y: auto;\n }\n .sm-navbar--sidebar-only.sm-navbar--sidebar-right {\n left: auto;\n right: 0;\n }\n .sm-navbar--sidebar-only.sm-navbar--dropdowns-only {\n overflow-y: visible;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar--sidebar-only:not(.sm-navbar--collapsible-only) {\n overflow-y: visible;\n }\n .sm-navbar--sidebar-left,\n .sm-navbar--sidebar-right {\n display: block;\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n width: var(--#{$prefix}-navbar-sidebar-width);\n }\n .sm-navbar--sidebar-right {\n left: auto;\n right: 0;\n }\n .sm-navbar[class*='sm-navbar--sidebar'].sm-navbar--collapsible-only {\n overflow-y: auto;\n }\n }\n .sm-navbar--sidebar-centered {\n --#{$prefix}-navbar-sidebar-centered-padding-x: 0px;\n --#{$prefix}-navbar-sidebar-centered-spacing: max(var(--#{$prefix}-navbar-sidebar-centered-padding-x), calc((100% - (var(--#{$prefix}-navbar-sidebar-centered-layout-max-width) - (var(--#{$prefix}-navbar-sidebar-centered-padding-x) * 2))) / 2));\n --#{$prefix}-navbar-sidebar-centered-width: calc((100% - (var(--#{$prefix}-navbar-sidebar-centered-layout-max-width) - (var(--#{$prefix}-navbar-sidebar-centered-padding-x) * 2))) / 2 + var(--#{$prefix}-navbar-sidebar-width) - var(--#{$prefix}-navbar-sidebar-centered-padding-x));\n }\n .sm-navbar--sidebar-centered.sm-navbar--sidebar-only {\n padding-left: var(--#{$prefix}-navbar-sidebar-centered-spacing) !important;\n width: var(--#{$prefix}-navbar-sidebar-centered-width);\n min-width: var(--#{$prefix}-navbar-sidebar-width);\n }\n .sm-navbar--sidebar-centered.sm-navbar--sidebar-only.sm-navbar--sidebar-right {\n padding-left: var(--#{$prefix}-navbar-sidebar-centered-padding-x) !important;\n padding-right: var(--#{$prefix}-navbar-sidebar-centered-spacing) !important;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar--sidebar-centered {\n padding-left: var(--#{$prefix}-navbar-sidebar-centered-spacing) !important;\n width: var(--#{$prefix}-navbar-sidebar-centered-width);\n min-width: var(--#{$prefix}-navbar-sidebar-width);\n }\n .sm-navbar--sidebar-centered.sm-navbar--sidebar-right {\n padding-left: var(--#{$prefix}-navbar-sidebar-centered-padding-x) !important;\n padding-right: var(--#{$prefix}-navbar-sidebar-centered-spacing) !important;\n }\n }\n}\n","// Container\n\n.sm-container {\n display: inherit;\n flex-flow: inherit;\n align-items: inherit;\n justify-content: inherit;\n margin-left: auto;\n margin-right: auto;\n width: 100%;\n max-width: var(--#{$prefix}-container-max-width);\n}\n","// Nav Brand\n\n.sm-brand {\n display: block;\n margin: 0;\n padding: 0;\n}\n","// Toggler\n\n.sm-toggler {\n display: inline-block;\n position: relative;\n}\n.sm-navbar--dropdowns-only .sm-toggler {\n display: none;\n}\n@media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--collapsible-only) .sm-toggler {\n display: none;\n }\n}\n\n// State element\n.sm-toggler-state {\n display: none;\n}\n\n// Anchors\n.sm-toggler-anchor {\n display: block;\n color: currentcolor !important;\n}\n.sm-toggler-anchor--hide {\n display: none;\n}\n.sm-toggler-state.sm-show ~ .sm-toggler .sm-toggler-anchor--show,\n.sm-toggler-state:target ~ .sm-toggler .sm-toggler-anchor--show {\n display: none;\n}\n.sm-toggler-state.sm-show ~ .sm-toggler .sm-toggler-anchor--hide,\n.sm-toggler-state:target ~ .sm-toggler .sm-toggler-anchor--hide {\n display: block;\n}\n\n// Icons\n.sm-toggler-icon {\n display: block;\n position: relative;\n width: 26px;\n height: 18px;\n}\n\n// Show icon (hamburger)\n.sm-toggler-icon--show {\n border-top: 2px solid;\n}\n.sm-toggler-icon--show::before,\n.sm-toggler-icon--show::after {\n content: '';\n position: absolute;\n top: calc(50% - 2px);\n left: 0;\n right: 0;\n border-top: 2px solid;\n height: 0;\n overflow: hidden;\n}\n.sm-toggler-icon--show::after {\n top: auto;\n bottom: 0;\n}\n\n// Hide icon (x)\n.sm-toggler-icon--hide::before,\n.sm-toggler-icon--hide::after {\n content: '';\n position: absolute;\n top: calc(50% - 1px);\n left: 0;\n right: 0;\n border-top: 2px solid;\n height: 0;\n overflow: hidden;\n transform: rotate(-45deg);\n}\n.sm-toggler-icon--hide::after {\n transform: rotate(45deg);\n}\n\n// Show the collapse when needed\n.sm-toggler-state:target ~ .sm-collapse {\n display: block;\n}\n\n@if $support-navbar-offcanvas {\n // Offcanvas navbar\n // Show the toggler when needed\n .sm-navbar[class*='sm-navbar--offcanvas'] .sm-toggler {\n display: inline-block;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar[class*='sm-navbar--offcanvas']:not(.sm-navbar--offcanvas-only) .sm-toggler {\n display: none;\n }\n }\n\n // Always show any hide anchors nested in an offcanvas\n .sm-offcanvas .sm-toggler-anchor--hide {\n display: block;\n }\n\n // Show the offcanvas when needed\n .sm-toggler-state:target ~ .sm-offcanvas {\n display: block;\n }\n\n // Show the overlay when needed\n .sm-toggler-state:target ~ .sm-offcanvas-overlay {\n display: block;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--offcanvas-only) .sm-offcanvas-overlay {\n display: none;\n }\n }\n}\n\n@if $support-navbar-sidebar {\n // Sidebar navbar\n .sm-navbar--sidebar-only .sm-toggler {\n display: none;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar[class*='sm-navbar--sidebar'] .sm-toggler {\n display: none;\n }\n }\n}\n","// Collapse\n\n.sm-collapse {\n display: none;\n flex-basis: 100%;\n}\n.sm-collapse.sm-show,\n.sm-collapse.sm-hiding {\n display: block;\n}\n@media (prefers-reduced-motion: no-preference) {\n .sm-collapse.sm-showing {\n animation: var(--#{$prefix}-collapse-show-animation);\n }\n .sm-collapse.sm-hiding {\n animation: var(--#{$prefix}-collapse-hide-animation);\n }\n}\n.sm-navbar--dropdowns-only .sm-collapse {\n display: inherit;\n flex-flow: inherit;\n align-items: inherit;\n justify-content: inherit;\n}\n@media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--collapsible-only) .sm-collapse {\n display: inherit;\n flex-flow: inherit;\n align-items: inherit;\n justify-content: inherit;\n }\n}\n\n@if $support-navbar-sticky or $support-navbar-fixed {\n // Sticky/Fixed navbar\n .sm-navbar[class*='sm-navbar--sticky'] .sm-collapse,\n .sm-navbar[class*='sm-navbar--fixed'] .sm-collapse {\n max-height: var(--#{$prefix}-collapse-max-height);\n overflow-y: auto;\n }\n .sm-navbar[class*='sm-navbar--sticky'].sm-navbar--dropdowns-only .sm-collapse,\n .sm-navbar[class*='sm-navbar--fixed'].sm-navbar--dropdowns-only .sm-collapse {\n max-height: none;\n overflow-y: visible;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar[class*='sm-navbar--sticky']:not(.sm-navbar--collapsible-only) .sm-collapse,\n .sm-navbar[class*='sm-navbar--fixed']:not(.sm-navbar--collapsible-only) .sm-collapse {\n max-height: none;\n overflow-y: visible;\n }\n }\n}\n\n@if $support-navbar-sidebar {\n // Sidebar navbar\n @media (min-width: $vp-large-min) {\n .sm-navbar[class*='sm-navbar--sidebar'] .sm-collapse {\n display: block;\n }\n }\n}\n","@if $support-navbar-offcanvas {\n // Offcanvas\n\n .sm-offcanvas {\n display: none;\n flex-basis: 100%;\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n width: var(--#{$prefix}-offcanvas-width);\n overflow-y: auto;\n --#{$prefix}-offcanvas-transform-from: translateX(-100%);\n }\n .sm-navbar--offcanvas-right .sm-offcanvas {\n left: auto;\n right: 0;\n --#{$prefix}-offcanvas-transform-from: translateX(100%);\n }\n .sm-navbar--offcanvas-top .sm-offcanvas,\n .sm-navbar--offcanvas-bottom .sm-offcanvas {\n right: 0;\n width: auto;\n --#{$prefix}-offcanvas-transform-from: translateY(-100%);\n }\n .sm-navbar--offcanvas-bottom .sm-offcanvas {\n --#{$prefix}-offcanvas-transform-from: translateY(100%);\n }\n .sm-offcanvas.sm-show,\n .sm-offcanvas.sm-hiding {\n display: block;\n }\n @media (prefers-reduced-motion: no-preference) {\n .sm-offcanvas.sm-showing {\n animation: sm-offcanvas-toggle 0.25s;\n }\n .sm-offcanvas.sm-hiding {\n animation: sm-offcanvas-toggle 0.25s reverse;\n }\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--offcanvas-only) .sm-offcanvas {\n display: inherit;\n flex-flow: inherit;\n align-items: inherit;\n justify-content: inherit;\n position: static;\n width: auto;\n padding: 0 !important;\n background: transparent !important;\n overflow-y: visible;\n transform: none;\n }\n }\n .sm-navbar--dropdowns-only .sm-offcanvas {\n overflow-y: visible;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--collapsible-only) .sm-offcanvas {\n overflow-y: visible;\n }\n }\n\n @keyframes sm-offcanvas-toggle {\n from {\n transform: var(--#{$prefix}-offcanvas-transform-from);\n }\n to {\n transform: none;\n }\n }\n}\n","@if $support-navbar-offcanvas {\n // Offcanvas Overlay\n\n .sm-offcanvas-overlay {\n display: none;\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background: var(--#{$prefix}-offcanvas-overlay-bg);\n cursor: default;\n }\n .sm-offcanvas-overlay.sm-show,\n .sm-offcanvas-overlay.sm-hiding {\n display: block;\n }\n @media (prefers-reduced-motion: no-preference) {\n .sm-offcanvas-overlay.sm-showing {\n animation: sm-ani-fade 0.25s;\n }\n .sm-offcanvas-overlay.sm-hiding {\n animation: sm-ani-fade 0.25s reverse;\n }\n }\n}\n","// Nav\n\n.sm-nav {\n display: flex;\n flex-flow: column nowrap;\n flex-basis: 100%;\n list-style: none;\n margin: 0;\n padding: 0;\n max-width: 100%;\n line-height: inherit;\n}\n.sm-navbar--dropdowns-only .sm-nav {\n flex-flow: row wrap;\n}\n@media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--collapsible-only) .sm-nav {\n flex-flow: row wrap;\n }\n}\n\n@if $support-navbar-vertical {\n // Vertical navbar\n .sm-navbar--vertical.sm-navbar--dropdowns-only .sm-nav {\n flex-flow: column nowrap;\n align-items: normal;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar--vertical:not(.sm-navbar--collapsible-only) .sm-nav {\n flex-flow: column nowrap;\n align-items: normal;\n }\n }\n}\n\n\n// Nav variants (for navbars with dropdowns)\n\n@if $support-nav-left {\n // Left-aligned nav\n .sm-navbar--dropdowns-only .sm-nav--left {\n justify-content: flex-start;\n }\n @media (min-width: $vp-large-min) {\n .sm-nav--left {\n justify-content: flex-start;\n }\n }\n}\n\n@if $support-nav-center {\n // Center-aligned nav\n .sm-navbar--dropdowns-only .sm-nav--center {\n justify-content: center;\n }\n @media (min-width: $vp-large-min) {\n .sm-nav--center {\n justify-content: center;\n }\n }\n}\n\n@if $support-nav-right {\n // Right-aligned nav\n .sm-navbar--dropdowns-only .sm-nav--right {\n justify-content: flex-end;\n }\n @media (min-width: $vp-large-min) {\n .sm-nav--right {\n justify-content: flex-end;\n }\n }\n}\n\n@if $support-nav-fill {\n // Full-width nav with proportional-width items that fill all the space\n .sm-navbar--dropdowns-only .sm-nav--fill {\n flex: 1 1 auto;\n }\n @media (min-width: $vp-large-min) {\n .sm-nav--fill {\n flex: 1 1 auto;\n }\n }\n}\n\n@if $support-nav-justify {\n // Full-width nav with equal-width items that fill all the space\n .sm-navbar--dropdowns-only .sm-nav--justify {\n flex: 1 1 0;\n }\n @media (min-width: $vp-large-min) {\n .sm-nav--justify {\n flex: 1 1 0;\n }\n }\n}\n","// Nav Item\n\n.sm-nav-item {\n display: grid;\n grid-template:\n 'link link-split-toggler' auto\n 'sub sub' auto\n / 1fr auto;\n position: relative;\n list-style: none;\n margin: 0;\n padding: 0;\n line-height: inherit;\n}\n\n@if $support-nav-fill {\n // Full-width nav with proportional-width items that fill all the space\n .sm-navbar--dropdowns-only .sm-nav--fill > .sm-nav-item {\n flex: 1 1 auto;\n }\n @media (min-width: $vp-large-min) {\n .sm-nav--fill > .sm-nav-item {\n flex: 1 1 auto;\n }\n }\n}\n\n@if $support-nav-justify {\n // Full-width nav with equal-width items that fill all the space\n .sm-navbar--dropdowns-only .sm-nav--justify > .sm-nav-item {\n flex: 1 1 0;\n }\n @media (min-width: $vp-large-min) {\n .sm-nav--justify > .sm-nav-item {\n flex: 1 1 0;\n }\n }\n}\n\n\n// Nav Item variants\n\n// Nav item with a mega sub\n.sm-nav-item--has-mega {\n position: static;\n}\n","// Nav Item Separator\n\n.sm-nav-item-separator {\n --#{$prefix}-nav-item-separator-border: 1px solid;\n --#{$prefix}-nav-item-separator-spacing: 0.5rem;\n --#{$prefix}-nav-item-separator-fullsize-offset: 6px;\n\n margin: var(--#{$prefix}-nav-item-separator-spacing) var(--#{$prefix}-nav-item-separator-fullsize-offset);\n border: 0;\n border-top: var(--#{$prefix}-nav-item-separator-border);\n height: 0;\n color: currentcolor;\n overflow: hidden;\n}\n.sm-navbar--dropdowns-only .sm-nav-item-separator {\n margin: var(--#{$prefix}-nav-item-separator-fullsize-offset) var(--#{$prefix}-nav-item-separator-spacing);\n border: 0;\n border-left: var(--#{$prefix}-nav-item-separator-border);\n height: auto;\n}\n@media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--collapsible-only) .sm-nav-item-separator {\n margin: var(--#{$prefix}-nav-item-separator-fullsize-offset) var(--#{$prefix}-nav-item-separator-spacing);\n border: 0;\n border-left: var(--#{$prefix}-nav-item-separator-border);\n height: auto;\n }\n}\n\n@if $support-navbar-vertical {\n // Vertical navbar\n .sm-navbar--vertical.sm-navbar--dropdowns-only .sm-nav-item-separator {\n margin: var(--#{$prefix}-nav-item-separator-spacing) var(--#{$prefix}-nav-item-separator-fullsize-offset);\n border: 0;\n border-top: var(--#{$prefix}-nav-item-separator-border);\n height: 0;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar--vertical:not(.sm-navbar--collapsible-only) .sm-nav-item-separator {\n margin: var(--#{$prefix}-nav-item-separator-spacing) var(--#{$prefix}-nav-item-separator-fullsize-offset);\n border: 0;\n border-top: var(--#{$prefix}-nav-item-separator-border);\n height: 0;\n }\n }\n}\n","// Nav Link\n\n.sm-nav-link {\n grid-area: link;\n display: flex;\n align-items: center;\n justify-content: space-between;\n position: relative;\n line-height: inherit;\n}\n.sm-navbar--dropdowns-only .sm-nav-link {\n white-space: nowrap;\n}\n@media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--collapsible-only) .sm-nav-link {\n white-space: nowrap;\n }\n}\n.sm-nav-link.sm-disabled {\n cursor: default;\n}\n\n@if $support-navbar-vertical {\n // Vertical navbar (for navbars with dropdowns)\n .sm-navbar--vertical.sm-navbar--dropdowns-only .sm-nav-link {\n white-space: normal;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar--vertical:not(.sm-navbar--collapsible-only) .sm-nav-link {\n white-space: normal;\n }\n }\n}\n\n\n// Nav Link variants\n\n// Split nav link\n\n// Toggler\n.sm-nav-link--split + .sm-nav-link--split {\n grid-area: link-split-toggler;\n cursor: pointer;\n}\n\n// Separator\n.sm-nav-link--split + .sm-nav-link--split::before {\n content: '';\n position: absolute;\n @if not $rtl {\n left: 0;\n } @else {\n right: 0;\n }\n\n top: 0;\n bottom: 0;\n margin: 6px 0;\n border-left: 1px solid;\n overflow: hidden;\n}\n","// Sub Toggler\n\n.sm-sub-toggler::after {\n --#{$prefix}-sub-toggler-icon-size: 0.7rem;\n --#{$prefix}-sub-toggler-icon-spacing: 0.4rem;\n --#{$prefix}-sub-toggler-split-icon-spacing: 0px;\n\n content: '+';\n display: inline-block;\n @if not $rtl {\n margin-left: var(--#{$prefix}-sub-toggler-icon-spacing);\n } @else {\n margin-right: var(--#{$prefix}-sub-toggler-icon-spacing);\n }\n\n width: var(--#{$prefix}-sub-toggler-icon-size);\n height: var(--#{$prefix}-sub-toggler-icon-size);\n line-height: var(--#{$prefix}-sub-toggler-icon-size);\n text-align: center;\n}\n.sm-expanded.sm-sub-toggler::after {\n content: '-';\n}\n\n// Split nav/sub link\n.sm-nav-link--split.sm-sub-toggler::after,\n.sm-sub-link--split.sm-sub-toggler::after {\n margin-left: var(--#{$prefix}-sub-toggler-split-icon-spacing);\n margin-right: var(--#{$prefix}-sub-toggler-split-icon-spacing);\n}\n","// Sub\n\n.sm-sub {\n grid-area: sub;\n display: none;\n list-style: none;\n margin: 0;\n padding: 0;\n line-height: inherit;\n}\n.sm-sub.sm-show,\n.sm-sub.sm-hiding {\n display: block;\n}\n@media (prefers-reduced-motion: no-preference) {\n .sm-sub.sm-showing {\n animation: var(--#{$prefix}-sub-collapsible-show-animation);\n }\n .sm-sub.sm-hiding {\n animation: var(--#{$prefix}-sub-collapsible-hide-animation);\n }\n}\n\n// Dropdown subs\n.sm-navbar--dropdowns-only .sm-sub {\n grid-area: none;\n position: absolute;\n min-width: var(--#{$prefix}-sub-min-width);\n}\n@media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--collapsible-only) .sm-sub {\n grid-area: none;\n position: absolute;\n min-width: var(--#{$prefix}-sub-min-width);\n }\n}\n@media (prefers-reduced-motion: no-preference) {\n .sm-navbar--dropdowns-only .sm-sub.sm-showing {\n animation: var(--#{$prefix}-sub-dropdowns-show-animation);\n }\n .sm-navbar--dropdowns-only .sm-sub.sm-hiding {\n animation: var(--#{$prefix}-sub-dropdowns-hide-animation);\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--collapsible-only) .sm-sub.sm-showing {\n animation: var(--#{$prefix}-sub-dropdowns-show-animation);\n }\n .sm-navbar:not(.sm-navbar--collapsible-only) .sm-sub.sm-hiding {\n animation: var(--#{$prefix}-sub-dropdowns-hide-animation);\n }\n }\n}\n\n\n// Sub variants\n\n// Mega sub\n.sm-sub--mega {\n left: 0;\n right: 0;\n}\n\n@if $support-navbar-vertical {\n // Vertical navbar (for navbars with dropdowns)\n .sm-navbar--vertical.sm-navbar--dropdowns-only .sm-sub--mega {\n left: auto;\n right: auto;\n top: 0;\n bottom: 0;\n }\n @media (min-width: $vp-large-min) {\n .sm-navbar--vertical .sm-sub--mega {\n left: auto;\n right: auto;\n top: 0;\n bottom: 0;\n }\n }\n}\n","// Sub Item\n\n.sm-sub-item {\n display: grid;\n grid-template:\n 'link link-split-toggler' auto\n 'sub sub' auto\n / 1fr auto;\n position: relative;\n list-style: none;\n margin: 0;\n padding: 0;\n line-height: inherit;\n}\n","// Sub Item Separator\n\n.sm-sub-item-separator {\n margin: 0.5rem 6px;\n border: 0;\n border-top: 1px solid;\n height: 0;\n overflow: hidden;\n}\n","// Sub Link\n\n.sm-sub-link {\n grid-area: link;\n display: flex;\n align-items: center;\n justify-content: space-between;\n position: relative;\n line-height: inherit;\n}\n.sm-navbar--dropdowns-only .sm-sub-link {\n white-space: nowrap;\n}\n@media (min-width: $vp-large-min) {\n .sm-navbar:not(.sm-navbar--collapsible-only) .sm-sub-link {\n white-space: nowrap;\n }\n}\n.sm-sub-link.sm-disabled {\n cursor: default;\n}\n\n\n// Sub Link variants\n\n// Split sub link\n\n// Toggler\n.sm-sub-link--split + .sm-sub-link--split {\n grid-area: link-split-toggler;\n cursor: pointer;\n}\n\n// Separator\n.sm-sub-link--split + .sm-sub-link--split::before {\n content: '';\n position: absolute;\n @if not $rtl {\n left: 0;\n } @else {\n right: 0;\n }\n\n top: 0;\n bottom: 0;\n margin: 6px 0;\n border-left: 1px solid;\n overflow: hidden;\n}\n","// Animations\n\n@keyframes sm-ani-collapse {\n from {\n max-height: 0;\n overflow: hidden;\n }\n to {\n max-height: var(--#{$prefix}-height, 100vh);\n overflow: hidden;\n }\n}\n\n@keyframes sm-ani-fade {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n","// Utility\n\n@media (max-width: $vp-small-max) {\n .sm-hide-small {\n display: none !important;\n }\n}\n\n@media (min-width: $vp-large-min) {\n .sm-hide-large {\n display: none !important;\n }\n}\n"]}