From e72982a7f8189b19d48876419d1b1f6f2d2cb50d Mon Sep 17 00:00:00 2001 From: checktheroads Date: Thu, 15 Jul 2021 00:32:28 -0700 Subject: [PATCH] #6372: Fix nav menu scrolling and styling --- netbox/project-static/dist/config.js | Bin 163767 -> 164286 bytes netbox/project-static/dist/config.js.map | Bin 468036 -> 469557 bytes netbox/project-static/dist/jobs.js | Bin 164903 -> 165422 bytes netbox/project-static/dist/jobs.js.map | Bin 471066 -> 472587 bytes netbox/project-static/dist/lldp.js | Bin 166290 -> 166809 bytes netbox/project-static/dist/lldp.js.map | Bin 472302 -> 473823 bytes netbox/project-static/dist/netbox-dark.css | Bin 713685 -> 713823 bytes .../project-static/dist/netbox-dark.css.map | 2 +- netbox/project-static/dist/netbox-light.css | Bin 423658 -> 423762 bytes .../project-static/dist/netbox-light.css.map | 2 +- netbox/project-static/dist/netbox.js | Bin 693601 -> 694120 bytes netbox/project-static/dist/netbox.js.map | Bin 1635226 -> 1636847 bytes .../dist/rack_elevation.css.map | 2 +- netbox/project-static/dist/status.js | Bin 187213 -> 187732 bytes netbox/project-static/dist/status.js.map | Bin 520253 -> 521774 bytes netbox/project-static/src/bs.ts | 30 +++++++++++++++++- netbox/project-static/styles/netbox.scss | 10 ++++-- netbox/project-static/styles/theme-base.scss | 1 + netbox/templates/base/layout.html | 2 +- 19 files changed, 42 insertions(+), 7 deletions(-) diff --git a/netbox/project-static/dist/config.js b/netbox/project-static/dist/config.js index 167a653b2237aa0fb215467840600045405647cc..4c8d3110546ac89dc905491ef9b2e14dc9862069 100644 GIT binary patch delta 506 zcmZWmu}Z{15GCs&oHjO!ip7~~7vf@V2x1{v*ohyI+f2^j-i~f2kux4D`VT4Z3+#mJ z1pmYzu+;Y4<4%oO4Kr_M-g`6SN&Dqt>F&{cW*^2Y$Df9^m%XxneeyQic|X?L7hzey zU9t6g@0xA8meXtYZ1u>^D=ojNNo3$TL|(4YwIf!5q_cLwn>Pt;b+`RsNacgxu;Glw!wmQyne$*3twE(t~3Au delta 85 zcmV-b0IL7Kg9^9*34nwFv;y^R0cN-MZUPAl0b-ZItpOPcb8TU4Y$7Q;Vwd1|0vMM% rdIA~&Vz*U#0<8fSW^ZyRc42ZLbUiREWj$MCEORVuEM&JIegdBZOrITZ diff --git a/netbox/project-static/dist/config.js.map b/netbox/project-static/dist/config.js.map index 8b0cb2453600aa5e304896ca3389596a61b210b4..3f94f6421550f70a9d4ef659d681cca0bc4b3e15 100644 GIT binary patch delta 1393 zcmZ`%O=}ZT6vfvx6>%ft2Yy~b%|xb2v9%UUt8XT0v>({omMVTR$-GIPPUeNoG_8tM zL2)G_A`f>iT)R@b6GRv8+z9Smi$6lW@4d8*1&7QqxpVHh=bZaKe>w2}+kppX9BpP4+T_Zo!SL@EQYtK?T zYhR#l0UwmwMM`H(jXRWb*B)?aF|T3zqi2^4ws6NmuzOcMO&`Tis)}TxoViY{@nD^k z8PpVY8w!9Ui?noE6({U@O6Tp1lwPzKXfe@zoy9A3`nDry%H-(E1ijL)+5^?j<_xDE zUs5$~V9f7!m^13{+StmTftKJt+{0l|LE#DTM4p56VcGX5-Mv!atzyXPD0S4z%KDo6|r>=_xE z%7oOJKj8-$VFgz$5X5x4d++q#yL-H=Ki$`_Z=GlIuAFS~p-64Z$;y|x)2t=qKuVW+ zS^0WN8fAY<_AKROO6E>k%t));kz`}w@+1yn80a<+gg_m}sCu!1vE7VPC5-LcK!N3% z<*2Uq18SIO^dyf^Q_T~~ybe|6gCV;E#j`-B;9_(5M&2-4Z@1wLMC&nHqN}<*q&CP_L+A`lD}`4YqX8L9lyYJxw3QPpXP!k(^#6 z)_Azd$qZ_Wx(x-uksdAIP{qsk9Hn#iG^Nw_JoQq|*IB$tuill0s$Mp0 z2=(l;s%iBb7AR7&I~vUup?dddsNYfS6s$w8 z9Lnny6ootJ**YV~zNQS#Q@5za`}i?(X5@?8q`!NLvWxQSBEF$=Pt}fhk2tH2{3Xbl zAsjr1snHeP*rvuPsIi0j4qil^rLq<~I!fKN^yEr|;N69HH{Lz#R~nh#w`=n?7K2}@ zh-Sb=3`@&tD&hqECWA`ED|cC7gC7Lo<6l2XAQh0-7&H(NryY$vW%UBg)_4N=TTWQ8 z5W@)wMN{Jw9x#ag7O(oLnu9ccqY>RZj>Jo1bs(wvfmneRrAF~5tfFzqB^oT2A9}OB zxfvu`@|$!+ZDQrmLQC)f9^f#jpzsuUDu4E8j>^wn*`Bo$Z+Q``qtx?OuAoF&cdbHsmU$IyqSt^=+W93&gvjS6v66A z9@exjz>9}qsUq}^jiEuqxXGXp#Ufm1b<*6f?eP*kUKBOIs-P)(=$mKhtHKhU` zVy}eGnQ;oU+ delta 175 zcmeBvBQxuPOhXIf7N+hL<}zQ?$%-5Fr|(T+5@X8noPITh$(+f;W3pqW*>qbMCh_U_ zQ<=E7+qg4LWo9b#*#0Mj=>;2KzEh5~POzh6sE((jv-dP_Cei5)Axx~(EsB^#^xPdC z!*yI89UUQrKZxZC;W`(%0tH>%!7|p?j?RWo?F~gtK+FupEI`bowsH61y`c}~<+D$P>Kk5e->2SQJsrhT`XtQl z{2DcFcY^lamD35DdTV*CTPCsxHE-8$NmT3kG!+BhcWoLo26`Ysb%fy~_d${=W?bFk zn3H1hR0TSUu_2++<01i#HBB)I+gRCGgLZm~=CRCp2<<51hd`N()AU%RhH5^7oMT_4 z9k}GmC*7)QU^tW&)!t{wzx_vCG$8u1g_oX;^R(gy;M{3?m2o{j;gT~0`bbLbSF-gp zW5Dr$Gr%f?iGV6h2pxdpAt~0)GL7{f(e@dWf?fDQ1q&SVo6 ziGtw4iz3oz|A7Z#PyPbIn;zAp9`xqTgVo)6jKN`g=&AndtFON5Uq4QL{e9~3(~fuK zx!*Z_ZRFL!+k$-WlRh#sEkF6>5*eC)MfpWJQ6wkiS4NJs$IIk(CyA!pe`@4=&z-un z<=P9BF4$AlE#ik#yF}>?6XOo0+_f(_v{cYAedyU`gDu{75bQosUz11iNJWt>l=G{^ znhN$fnL*7`x1j)7vP8?bRPdU;MCp<}PwBk9OiPL8O9yY$>+ABxU6S3tJ*;vAmCF_l zp{`w4F|B^L1&UPco*pY>K3$k4-Z3ULB708&UVdGc12!a#T_ayso1%$i_VrKzYB8t zFcw}y*XXAF*dl$s=;!bi)Kx5NabsinUwk&#AhZr6&oz2Jx3`yTECR1m5lx?q z2-Y@|L_{%oO$L>aSJs(tgXjC;;jb6RkO)X>3>pZCl2js3SUnGmH68=L8!_`&A~+9$ zXli`SeFl-&;#DtEb&$quG{XDmka$gO4aPOk7n`uD)F}R#RWuH{M1w{0$;nJ_b^%G& zye8dM8(XNz{z6*}Np{c3v57WT2xs%N3#D|=CnL(Wxn*;z$2aUEG0$qocL8qqDwKdqWWu5HkZY3lOtzZzy8Bwtf0PUG{t1KkKo- G;RXPxST*MW diff --git a/netbox/project-static/dist/netbox-dark.css b/netbox/project-static/dist/netbox-dark.css index e676fd974a9ee5793f1d5b7906dd40518eb3ee18..fb7258c4017565a01dc486d108c9b6f5137e768d 100644 GIT binary patch delta 188 zcmcb5T>JhB?S>Y{7N!>F7M2#)7Pc1l7LFFqEnE)0+|~t&DJhwG=~e~`lN)DfPXFJ< z#Xeo3mrK}EFSA%TzaTZQIw`+Gw>Tp)CBNJ%Gp{(cM8QBo*T}S>Lcz!YNI;lH=}Czi z209?9H(l^0t2)G>2Yp;>(|f+M3M^mP%f-TIGF?!JQ3GxV>-4{qxcH_&naE`ilsXu} XCOUopVovVq8(O&7w|h_G>Iwt^B=SL4 delta 99 zcmV-p0G$8d$Sc*yD}aOngaU*Egam{Iga(8Mgb0KQv :last-child {\n margin-bottom: 0;\n }\n}\n\n.blockquote-footer {\n margin-top: -$blockquote-margin-y;\n margin-bottom: $blockquote-margin-y;\n @include font-size($blockquote-footer-font-size);\n color: $blockquote-footer-color;\n\n &::before {\n content: \"\\2014\\00A0\"; // em dash, nbsp\n }\n}\n","// Dark Mode Theme Variables and Overrides.\n\n@use 'sass:map';\n@import './theme-base.scss';\n\n$primary: $blue-300;\n$secondary: $gray-400;\n$success: $green-300;\n$info: $cyan-300;\n$warning: $yellow-300;\n$danger: $red-300;\n$light: $gray-300;\n$dark: $gray-400;\n\n$theme-colors: (\n 'primary': $primary,\n 'secondary': $secondary,\n 'success': $success,\n 'info': $info,\n 'warning': $warning,\n 'danger': $danger,\n 'light': $light,\n 'dark': $dark,\n);\n\n$theme-color-addons-dark: (\n 'alt': #13293d,\n 'darker': #010101,\n);\n\n$theme-colors: map-merge($theme-colors, $theme-color-addons);\n$theme-color-addons: map-merge($theme-color-addons, $theme-color-addons-dark);\n\n// On import, any variables marked `!default` will be overridden by the above.\n@import 'bootstrap/scss/variables';\n\n// Customize the light and dark text colors for use in our color contrast function.\n\n// Gradient\n$gradient: linear-gradient(180deg, rgba($white, 0.15), rgba($white, 0));\n\n// Body\n$body-bg: $gray-900;\n$body-color: $white;\n$body-text-align: null;\n$border-color: $gray-700;\n$box-shadow: 0 0.5rem 1rem rgba($black, 0.15);\n$box-shadow-sm: 0 0.125rem 0.25rem rgba($black, 0.075);\n$box-shadow-lg: 0 1rem 3rem rgba($black, 0.175);\n$box-shadow-inset: inset 0 1px 2px rgba($black, 0.075);\n$text-muted: $gray-400;\n$blockquote-footer-color: $gray-600;\n$mark-bg: #fcf8e3;\n$link-color: $primary;\n$link-hover-color: $blue-200;\n\n// Tables\n$table-color: $gray-100;\n$table-border-color: $border-color;\n$table-striped-color: $table-color;\n$table-striped-bg: rgba($white, $table-striped-bg-factor);\n$table-active-color: $table-color;\n$table-active-bg: rgba($white, $table-active-bg-factor);\n$table-hover-color: $table-color;\n$table-hover-bg: rgba($white, $table-hover-bg-factor);\n$table-flush-header-bg: $gray-700;\n\n// Buttons\n$btn-box-shadow: inset 0 1px 0 rgba($black, 0.15), 0 1px 1px rgba($white, 0.075);\n$btn-active-box-shadow: inset 0 3px 5px rgba($white, 0.125);\n$btn-link-disabled-color: $gray-300;\n\n// Forms\n$form-text-color: $text-muted;\n$input-bg: $gray-800;\n$input-disabled-bg: $gray-700;\n$input-color: $gray-100;\n$input-border-color: $gray-700;\n$input-focus-bg: $input-bg;\n$input-focus-border-color: tint-color($component-active-bg, 10%);\n$input-focus-color: $input-color;\n$input-placeholder-color: $gray-300;\n$input-plaintext-color: $body-color;\n\n$form-check-input-active-filter: brightness(90%);\n$form-check-input-bg: $input-bg;\n$form-check-input-border: 1px solid rgba(255, 255, 255, 0.25);\n$form-check-input-checked-color: $component-active-color;\n$form-check-input-checked-bg-color: $component-active-bg;\n$form-check-input-checked-border-color: $form-check-input-checked-bg-color;\n$form-check-input-indeterminate-color: $component-active-color;\n$form-check-input-indeterminate-bg-color: $component-active-bg;\n$form-check-input-indeterminate-border-color: $form-check-input-indeterminate-bg-color;\n\n$form-switch-color: rgba(255, 255, 255, 0.25);\n$form-switch-focus-color: $input-focus-border-color;\n$form-switch-checked-color: $component-active-color;\n\n$input-group-addon-color: $input-color;\n$input-group-addon-bg: $gray-700;\n$input-group-addon-border-color: $input-border-color;\n\n$form-select-color: $input-color;\n$form-select-disabled-color: $gray-400;\n$form-select-bg: $input-bg;\n$form-select-disabled-bg: $input-disabled-bg;\n$form-select-indicator-color: $form-select-color;\n$form-select-indicator: url(\"data:image/svg+xml,\");\n\n$form-select-border-color: $input-border-color;\n$form-range-track-bg: $gray-300;\n\n$form-range-thumb-bg: $component-active-bg;\n$form-range-thumb-box-shadow: 0 0.1rem 0.25rem rgba($black, 0.1);\n$form-range-thumb-focus-box-shadow: 0 0 0 1px $body-bg, $input-focus-box-shadow;\n$form-range-thumb-active-bg: tint-color($component-active-bg, 70%);\n$form-range-thumb-disabled-bg: $gray-500;\n\n$form-file-button-color: $input-color;\n$form-file-button-bg: $input-group-addon-bg;\n$form-file-button-hover-bg: shade-color($form-file-button-bg, 5%);\n\n// Navs\n$nav-link-color: $body-color;\n$nav-link-hover-color: null;\n$nav-link-disabled-color: $gray-800;\n$nav-tabs-border-color: $border-color;\n$nav-tabs-link-hover-border-color: rgba($gray-800, 0.5) rgba($gray-800, 0.5) $nav-tabs-border-color;\n$nav-tabs-link-active-color: $gray-50;\n$nav-tabs-link-active-bg: $body-bg;\n$nav-tabs-link-active-border-color: $gray-800 $gray-800 $nav-tabs-link-active-bg;\n$nav-pills-link-active-color: $component-active-color;\n$nav-pills-link-active-bg: $component-active-bg;\n\n$navbar-light-color: $gray-500;\n$navbar-light-toggler-icon-bg: url(\"data:image/svg+xml,\");\n$navbar-light-toggler-border-color: $gray-700;\n\n// Dropdowns\n$dropdown-color: $body-color;\n$dropdown-bg: $gray-900;\n$dropdown-border-color: rgba($white, 0.15);\n$dropdown-link-color: $gray-100;\n$dropdown-link-hover-color: shade-color($gray-50, 10%);\n$dropdown-link-hover-bg: $gray-500;\n$dropdown-link-disabled-color: $gray-800;\n$dropdown-header-color: $gray-300;\n\n// Pagination\n$pagination-color: $link-color;\n$pagination-bg: $gray-800;\n$pagination-border-color: $gray-600;\n$pagination-focus-color: $link-hover-color;\n$pagination-focus-bg: $gray-400;\n$pagination-hover-color: $link-hover-color;\n$pagination-hover-bg: $gray-400;\n$pagination-hover-border-color: $gray-500;\n$pagination-active-color: $component-active-color;\n$pagination-active-bg: $component-active-bg;\n$pagination-active-border-color: $pagination-active-bg;\n$pagination-disabled-color: $gray-600;\n$pagination-disabled-bg: $gray-800;\n$pagination-disabled-border-color: $gray-600;\n\n// Cards\n$card-border-color: rgba($white, 0.125);\n$card-inner-border-radius: subtract($card-border-radius, $card-border-width);\n\n$card-cap-color: null;\n$card-height: null;\n$card-color: null;\n$card-bg: $gray-800;\n\n// Accordion\n$accordion-color: $body-color;\n$accordion-bg: transparent;\n$accordion-border-color: $border-color;\n$accordion-button-color: $accordion-color;\n$accordion-button-bg: $accordion-bg;\n$accordion-body-active-bg: rgba($blue-300, 0.1);\n$accordion-button-active-bg: rgba($blue-300, 0.15);\n$accordion-button-active-color: $gray-300;\n$accordion-button-focus-border-color: $input-focus-border-color;\n$accordion-icon-color: $accordion-color;\n$accordion-icon-active-color: $accordion-button-active-color;\n\n$accordion-button-icon: url(\"data:image/svg+xml,\");\n$accordion-button-active-icon: url(\"data:image/svg+xml,\");\n\n// Tooltips\n$tooltip-color: $body-color;\n$tooltip-bg: $gray-700;\n$tooltip-arrow-color: $tooltip-bg;\n$form-feedback-tooltip-opacity: $tooltip-opacity;\n\n// Popovers\n$popover-bg: $gray-700;\n$popover-border-color: rgba($white, 0.2);\n$popover-header-bg: shade-color($popover-bg, 6%);\n$popover-header-color: $headings-color;\n$popover-body-color: $body-color;\n$popover-arrow-color: $popover-bg;\n$popover-arrow-outer-color: fade-in($popover-border-color, 0.05);\n\n// Toasts\n$toast-color: null;\n$toast-background-color: rgba($white, 0.85);\n$toast-border-color: rgba(0, 0, 0, 0.1);\n$toast-header-color: $gray-600;\n$toast-header-background-color: rgba($white, 0.85);\n$toast-header-border-color: rgba(0, 0, 0, 0.05);\n\n// Badges\n$badge-color: $white;\n\n// Modals\n$modal-content-color: null;\n$modal-content-bg: $gray-800;\n$modal-content-border-color: rgba($white, 0.2);\n$modal-backdrop-bg: $black;\n$modal-header-border-color: $border-color;\n$modal-footer-border-color: $modal-header-border-color;\n\n// Progress bars\n$progress-bg: $gray-600;\n$progress-bar-color: $white;\n$progress-bar-bg: $primary;\n\n// List group\n$list-group-color: null;\n$list-group-bg: $card-bg;\n$list-group-border-color: rgba($white, 0.125);\n$list-group-hover-bg: rgba($gray-50, 0.15);\n$list-group-active-color: $component-active-color;\n$list-group-active-bg: $component-active-bg;\n$list-group-active-border-color: $list-group-active-bg;\n$list-group-disabled-bg: $list-group-bg;\n$list-group-action-color: $gray-300;\n$list-group-action-hover-color: $body-color;\n$list-group-action-active-color: $body-color;\n$list-group-action-active-bg: rgba($gray-300, 0.125);\n\n// Image thumbnails\n$thumbnail-bg: $body-bg;\n$thumbnail-border-color: $gray-300;\n\n// Figures\n$figure-caption-color: $gray-600;\n\n// Breadcrumbs\n$breadcrumb-divider-color: $gray-100;\n$breadcrumb-active-color: $body-color;\n$breadcrumb-divider-flipped: $breadcrumb-divider;\n$breadcrumb-divider: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M2.5 0L1 1.5 3.5 4 1 6.5 2.5 8l4-4-4-4z' fill='#{$breadcrumb-divider-color}'/%3E%3C/svg%3E\");\n\n// Carousel\n$carousel-control-color: $white;\n$carousel-indicator-active-bg: $white;\n$carousel-caption-color: $white;\n$carousel-dark-indicator-active-bg: $black;\n$carousel-dark-caption-color: $black;\n$carousel-dark-control-icon-filter: invert(1) grayscale(100);\n\n// Close\n$btn-close-color: $white;\n$btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);\n\n$btn-close-bg: url(\"data:image/svg+xml,\");\n\n@each $color, $value in $theme-colors {\n .bg-#{$color} button.btn-close {\n background: url(\"data:image/svg+xml,\");\n }\n}\n\n// Code\n$code-color: $gray-200;\n$kbd-color: $white;\n$kbd-bg: $gray-300;\n$pre-color: null;\n",":root {\n // Custom variable values only support SassScript inside `#{}`.\n @each $color, $value in $colors {\n --#{$variable-prefix}#{$color}: #{$value};\n }\n\n @each $color, $value in $theme-colors {\n --#{$variable-prefix}#{$color}: #{$value};\n }\n\n // Use `inspect` for lists so that quoted items keep the quotes.\n // See https://github.com/sass/sass/issues/2383#issuecomment-336349172\n --#{$variable-prefix}font-sans-serif: #{inspect($font-family-sans-serif)};\n --#{$variable-prefix}font-monospace: #{inspect($font-family-monospace)};\n --#{$variable-prefix}gradient: #{$gradient};\n}\n","// stylelint-disable declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix\n\n\n// Reboot\n//\n// Normalization of HTML elements, manually forked from Normalize.css to remove\n// styles targeting irrelevant browsers while applying new styles.\n//\n// Normalize is licensed MIT. https://github.com/necolas/normalize.css\n\n\n// Document\n//\n// Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n\n// Root\n//\n// Ability to the value of the root font sizes, affecting the value of `rem`.\n// null by default, thus nothing is generated.\n\n:root {\n font-size: $font-size-root;\n\n @if $enable-smooth-scroll {\n @media (prefers-reduced-motion: no-preference) {\n scroll-behavior: smooth;\n }\n }\n}\n\n\n// Body\n//\n// 1. Remove the margin in all browsers.\n// 2. As a best practice, apply a default `background-color`.\n// 3. Prevent adjustments of font size after orientation changes in iOS.\n// 4. Change the default tap highlight to be completely transparent in iOS.\n\nbody {\n margin: 0; // 1\n font-family: $font-family-base;\n @include font-size($font-size-base);\n font-weight: $font-weight-base;\n line-height: $line-height-base;\n color: $body-color;\n text-align: $body-text-align;\n background-color: $body-bg; // 2\n -webkit-text-size-adjust: 100%; // 3\n -webkit-tap-highlight-color: rgba($black, 0); // 4\n}\n\n\n// Content grouping\n//\n// 1. Reset Firefox's gray color\n// 2. Set correct height and prevent the `size` attribute to make the `hr` look like an input field\n\nhr {\n margin: $hr-margin-y 0;\n color: $hr-color; // 1\n background-color: currentColor;\n border: 0;\n opacity: $hr-opacity;\n}\n\nhr:not([size]) {\n height: $hr-height; // 2\n}\n\n\n// Typography\n//\n// 1. Remove top margins from headings\n// By default, `

`-`

` all receive top and bottom margins. We nuke the top\n// margin for easier control within type scales as it avoids margin collapsing.\n\n%heading {\n margin-top: 0; // 1\n margin-bottom: $headings-margin-bottom;\n font-family: $headings-font-family;\n font-style: $headings-font-style;\n font-weight: $headings-font-weight;\n line-height: $headings-line-height;\n color: $headings-color;\n}\n\nh1 {\n @extend %heading;\n @include font-size($h1-font-size);\n}\n\nh2 {\n @extend %heading;\n @include font-size($h2-font-size);\n}\n\nh3 {\n @extend %heading;\n @include font-size($h3-font-size);\n}\n\nh4 {\n @extend %heading;\n @include font-size($h4-font-size);\n}\n\nh5 {\n @extend %heading;\n @include font-size($h5-font-size);\n}\n\nh6 {\n @extend %heading;\n @include font-size($h6-font-size);\n}\n\n\n// Reset margins on paragraphs\n//\n// Similarly, the top margin on `

`s get reset. However, we also reset the\n// bottom margin to use `rem` units instead of `em`.\n\np {\n margin-top: 0;\n margin-bottom: $paragraph-margin-bottom;\n}\n\n\n// Abbreviations\n//\n// 1. Duplicate behavior to the data-bs-* attribute for our tooltip plugin\n// 2. Add the correct text decoration in Chrome, Edge, Opera, and Safari.\n// 3. Add explicit cursor to indicate changed behavior.\n// 4. Prevent the text-decoration to be skipped.\n\nabbr[title],\nabbr[data-bs-original-title] { // 1\n text-decoration: underline dotted; // 2\n cursor: help; // 3\n text-decoration-skip-ink: none; // 4\n}\n\n\n// Address\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\n\n// Lists\n\nol,\nul {\n padding-left: 2rem;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: $dt-font-weight;\n}\n\n// 1. Undo browser default\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0; // 1\n}\n\n\n// Blockquote\n\nblockquote {\n margin: 0 0 1rem;\n}\n\n\n// Strong\n//\n// Add the correct font weight in Chrome, Edge, and Safari\n\nb,\nstrong {\n font-weight: $font-weight-bolder;\n}\n\n\n// Small\n//\n// Add the correct font size in all browsers\n\nsmall {\n @include font-size($small-font-size);\n}\n\n\n// Mark\n\nmark {\n padding: $mark-padding;\n background-color: $mark-bg;\n}\n\n\n// Sub and Sup\n//\n// Prevent `sub` and `sup` elements from affecting the line height in\n// all browsers.\n\nsub,\nsup {\n position: relative;\n @include font-size($sub-sup-font-size);\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub { bottom: -.25em; }\nsup { top: -.5em; }\n\n\n// Links\n\na {\n color: $link-color;\n text-decoration: $link-decoration;\n\n &:hover {\n color: $link-hover-color;\n text-decoration: $link-hover-decoration;\n }\n}\n\n// And undo these styles for placeholder links/named anchors (without href).\n// It would be more straightforward to just use a[href] in previous block, but that\n// causes specificity issues in many other styles that are too complex to fix.\n// See https://github.com/twbs/bootstrap/issues/19402\n\na:not([href]):not([class]) {\n &,\n &:hover {\n color: inherit;\n text-decoration: none;\n }\n}\n\n\n// Code\n\npre,\ncode,\nkbd,\nsamp {\n font-family: $font-family-code;\n @include font-size(1em); // Correct the odd `em` font sizing in all browsers.\n direction: ltr #{\"/* rtl:ignore */\"};\n unicode-bidi: bidi-override;\n}\n\n// 1. Remove browser default top margin\n// 2. Reset browser default of `1em` to use `rem`s\n// 3. Don't allow content to break outside\n\npre {\n display: block;\n margin-top: 0; // 1\n margin-bottom: 1rem; // 2\n overflow: auto; // 3\n @include font-size($code-font-size);\n color: $pre-color;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n @include font-size(inherit);\n color: inherit;\n word-break: normal;\n }\n}\n\ncode {\n @include font-size($code-font-size);\n color: $code-color;\n word-wrap: break-word;\n\n // Streamline the style when inside anchors to avoid broken underline and more\n a > & {\n color: inherit;\n }\n}\n\nkbd {\n padding: $kbd-padding-y $kbd-padding-x;\n @include font-size($kbd-font-size);\n color: $kbd-color;\n background-color: $kbd-bg;\n @include border-radius($border-radius-sm);\n\n kbd {\n padding: 0;\n @include font-size(1em);\n font-weight: $nested-kbd-font-weight;\n }\n}\n\n\n// Figures\n//\n// Apply a consistent margin strategy (matches our type styles).\n\nfigure {\n margin: 0 0 1rem;\n}\n\n\n// Images and content\n\nimg,\nsvg {\n vertical-align: middle;\n}\n\n\n// Tables\n//\n// Prevent double borders\n\ntable {\n caption-side: bottom;\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: $table-cell-padding-y;\n padding-bottom: $table-cell-padding-y;\n color: $table-caption-color;\n text-align: left;\n}\n\n// 1. Removes font-weight bold by inheriting\n// 2. Matches default `` alignment by inheriting `text-align`.\n// 3. Fix alignment for Safari\n\nth {\n font-weight: $table-th-font-weight; // 1\n text-align: inherit; // 2\n text-align: -webkit-match-parent; // 3\n}\n\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n}\n\n\n// Forms\n//\n// 1. Allow labels to use `margin` for spacing.\n\nlabel {\n display: inline-block; // 1\n}\n\n// Remove the default `border-radius` that macOS Chrome adds.\n// See https://github.com/twbs/bootstrap/issues/24093\n\nbutton {\n // stylelint-disable-next-line property-disallowed-list\n border-radius: 0;\n}\n\n// Explicitly remove focus outline in Chromium when it shouldn't be\n// visible (e.g. as result of mouse click or touch tap). It already\n// should be doing this automatically, but seems to currently be\n// confused and applies its very visible two-tone outline anyway.\n\nbutton:focus:not(:focus-visible) {\n outline: 0;\n}\n\n// 1. Remove the margin in Firefox and Safari\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0; // 1\n font-family: inherit;\n @include font-size(inherit);\n line-height: inherit;\n}\n\n// Remove the inheritance of text transform in Firefox\nbutton,\nselect {\n text-transform: none;\n}\n// Set the cursor for non-`