.
9 |
10 | .list-group {
11 | // No need to set list-style: none; since .list-group-item is block level
12 | padding-left: 0; // reset padding because ul and ol
13 | margin-bottom: 20px;
14 | }
15 |
16 |
17 | // Individual list items
18 | //
19 | // Use on `li`s or `div`s within the `.list-group` parent.
20 |
21 | .list-group-item {
22 | position: relative;
23 | display: block;
24 | padding: 10px 15px;
25 | // Place the border on the list items and negative margin up for better styling
26 | margin-bottom: -1px;
27 | background-color: $list-group-bg;
28 | border: 1px solid $list-group-border;
29 |
30 | // Round the first and last items
31 | &:first-child {
32 | @include border-top-radius($list-group-border-radius);
33 | }
34 | &:last-child {
35 | margin-bottom: 0;
36 | @include border-bottom-radius($list-group-border-radius);
37 | }
38 |
39 | // Disabled state
40 | &.disabled,
41 | &.disabled:hover,
42 | &.disabled:focus {
43 | color: $list-group-disabled-color;
44 | cursor: $cursor-disabled;
45 | background-color: $list-group-disabled-bg;
46 |
47 | // Force color to inherit for custom content
48 | .list-group-item-heading {
49 | color: inherit;
50 | }
51 | .list-group-item-text {
52 | color: $list-group-disabled-text-color;
53 | }
54 | }
55 |
56 | // Active class on item itself, not parent
57 | &.active,
58 | &.active:hover,
59 | &.active:focus {
60 | z-index: 2; // Place active items above their siblings for proper border styling
61 | color: $list-group-active-color;
62 | background-color: $list-group-active-bg;
63 | border-color: $list-group-active-border;
64 |
65 | // Force color to inherit for custom content
66 | .list-group-item-heading,
67 | .list-group-item-heading > small,
68 | .list-group-item-heading > .small {
69 | color: inherit;
70 | }
71 | .list-group-item-text {
72 | color: $list-group-active-text-color;
73 | }
74 | }
75 | }
76 |
77 |
78 | // Interactive list items
79 | //
80 | // Use anchor or button elements instead of `li`s or `div`s to create interactive items.
81 | // Includes an extra `.active` modifier class for showing selected items.
82 |
83 | a.list-group-item,
84 | button.list-group-item {
85 | color: $list-group-link-color;
86 |
87 | .list-group-item-heading {
88 | color: $list-group-link-heading-color;
89 | }
90 |
91 | // Hover state
92 | &:hover,
93 | &:focus {
94 | color: $list-group-link-hover-color;
95 | text-decoration: none;
96 | background-color: $list-group-hover-bg;
97 | }
98 | }
99 |
100 | button.list-group-item {
101 | width: 100%;
102 | text-align: left;
103 | }
104 |
105 |
106 | // Contextual variants
107 | //
108 | // Add modifier classes to change text and background color on individual items.
109 | // Organizationally, this must come after the `:hover` states.
110 |
111 | @include list-group-item-variant(success, $state-success-bg, $state-success-text);
112 | @include list-group-item-variant(info, $state-info-bg, $state-info-text);
113 | @include list-group-item-variant(warning, $state-warning-bg, $state-warning-text);
114 | @include list-group-item-variant(danger, $state-danger-bg, $state-danger-text);
115 |
116 |
117 | // Custom content options
118 | //
119 | // Extra classes for creating well-formatted content within `.list-group-item`s.
120 |
121 | .list-group-item-heading {
122 | margin-top: 0;
123 | margin-bottom: 5px;
124 | }
125 | .list-group-item-text {
126 | margin-bottom: 0;
127 | line-height: 1.3;
128 | }
129 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_media.scss:
--------------------------------------------------------------------------------
1 | .media {
2 | // Proper spacing between instances of .media
3 | margin-top: 15px;
4 |
5 | &:first-child {
6 | margin-top: 0;
7 | }
8 | }
9 |
10 | .media,
11 | .media-body {
12 | overflow: hidden;
13 | zoom: 1;
14 | }
15 |
16 | .media-body {
17 | width: 10000px;
18 | }
19 |
20 | .media-object {
21 | display: block;
22 |
23 | // Fix collapse in webkit from max-width: 100% and display: table-cell.
24 | &.img-thumbnail {
25 | max-width: none;
26 | }
27 | }
28 |
29 | .media-right,
30 | .media > .pull-right {
31 | padding-left: 10px;
32 | }
33 |
34 | .media-left,
35 | .media > .pull-left {
36 | padding-right: 10px;
37 | }
38 |
39 | .media-left,
40 | .media-right,
41 | .media-body {
42 | display: table-cell;
43 | vertical-align: top;
44 | }
45 |
46 | .media-middle {
47 | vertical-align: middle;
48 | }
49 |
50 | .media-bottom {
51 | vertical-align: bottom;
52 | }
53 |
54 | // Reset margins on headings for tighter default spacing
55 | .media-heading {
56 | margin-top: 0;
57 | margin-bottom: 5px;
58 | }
59 |
60 | // Media list variation
61 | //
62 | // Undo default ul/ol styles
63 | .media-list {
64 | padding-left: 0;
65 | list-style: none;
66 | }
67 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_mixins.scss:
--------------------------------------------------------------------------------
1 | // Mixins
2 | // --------------------------------------------------
3 |
4 | // Utilities
5 | @import "mixins/hide-text";
6 | @import "mixins/opacity";
7 | @import "mixins/image";
8 | @import "mixins/labels";
9 | @import "mixins/reset-filter";
10 | @import "mixins/resize";
11 | @import "mixins/responsive-visibility";
12 | @import "mixins/size";
13 | @import "mixins/tab-focus";
14 | @import "mixins/reset-text";
15 | @import "mixins/text-emphasis";
16 | @import "mixins/text-overflow";
17 | @import "mixins/vendor-prefixes";
18 |
19 | // Components
20 | @import "mixins/alerts";
21 | @import "mixins/buttons";
22 | @import "mixins/panels";
23 | @import "mixins/pagination";
24 | @import "mixins/list-group";
25 | @import "mixins/nav-divider";
26 | @import "mixins/forms";
27 | @import "mixins/progress-bar";
28 | @import "mixins/table-row";
29 |
30 | // Skins
31 | @import "mixins/background-variant";
32 | @import "mixins/border-radius";
33 | @import "mixins/gradients";
34 |
35 | // Layout
36 | @import "mixins/clearfix";
37 | @import "mixins/center-block";
38 | @import "mixins/nav-vertical-align";
39 | @import "mixins/grid-framework";
40 | @import "mixins/grid";
41 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_pager.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Pager pagination
3 | // --------------------------------------------------
4 |
5 |
6 | .pager {
7 | padding-left: 0;
8 | margin: $line-height-computed 0;
9 | text-align: center;
10 | list-style: none;
11 | @include clearfix;
12 | li {
13 | display: inline;
14 | > a,
15 | > span {
16 | display: inline-block;
17 | padding: 5px 14px;
18 | background-color: $pager-bg;
19 | border: 1px solid $pager-border;
20 | border-radius: $pager-border-radius;
21 | }
22 |
23 | > a:hover,
24 | > a:focus {
25 | text-decoration: none;
26 | background-color: $pager-hover-bg;
27 | }
28 | }
29 |
30 | .next {
31 | > a,
32 | > span {
33 | float: right;
34 | }
35 | }
36 |
37 | .previous {
38 | > a,
39 | > span {
40 | float: left;
41 | }
42 | }
43 |
44 | .disabled {
45 | > a,
46 | > a:hover,
47 | > a:focus,
48 | > span {
49 | color: $pager-disabled-color;
50 | cursor: $cursor-disabled;
51 | background-color: $pager-bg;
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_pagination.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Pagination (multiple pages)
3 | // --------------------------------------------------
4 | .pagination {
5 | display: inline-block;
6 | padding-left: 0;
7 | margin: $line-height-computed 0;
8 | border-radius: $border-radius-base;
9 |
10 | > li {
11 | display: inline; // Remove list-style and block-level defaults
12 | > a,
13 | > span {
14 | position: relative;
15 | float: left; // Collapse white-space
16 | padding: $padding-base-vertical $padding-base-horizontal;
17 | margin-left: -1px;
18 | line-height: $line-height-base;
19 | color: $pagination-color;
20 | text-decoration: none;
21 | background-color: $pagination-bg;
22 | border: 1px solid $pagination-border;
23 |
24 | &:hover,
25 | &:focus {
26 | z-index: 2;
27 | color: $pagination-hover-color;
28 | background-color: $pagination-hover-bg;
29 | border-color: $pagination-hover-border;
30 | }
31 | }
32 | &:first-child {
33 | > a,
34 | > span {
35 | margin-left: 0;
36 | @include border-left-radius($border-radius-base);
37 | }
38 | }
39 | &:last-child {
40 | > a,
41 | > span {
42 | @include border-right-radius($border-radius-base);
43 | }
44 | }
45 | }
46 |
47 | > .active > a,
48 | > .active > span {
49 | &,
50 | &:hover,
51 | &:focus {
52 | z-index: 3;
53 | color: $pagination-active-color;
54 | cursor: default;
55 | background-color: $pagination-active-bg;
56 | border-color: $pagination-active-border;
57 | }
58 | }
59 |
60 | > .disabled {
61 | > span,
62 | > span:hover,
63 | > span:focus,
64 | > a,
65 | > a:hover,
66 | > a:focus {
67 | color: $pagination-disabled-color;
68 | cursor: $cursor-disabled;
69 | background-color: $pagination-disabled-bg;
70 | border-color: $pagination-disabled-border;
71 | }
72 | }
73 | }
74 |
75 | // Sizing
76 | // --------------------------------------------------
77 |
78 | // Large
79 | .pagination-lg {
80 | @include pagination-size($padding-large-vertical, $padding-large-horizontal, $font-size-large, $line-height-large, $border-radius-large);
81 | }
82 |
83 | // Small
84 | .pagination-sm {
85 | @include pagination-size($padding-small-vertical, $padding-small-horizontal, $font-size-small, $line-height-small, $border-radius-small);
86 | }
87 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_popovers.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Popovers
3 | // --------------------------------------------------
4 |
5 |
6 | .popover {
7 | position: absolute;
8 | top: 0;
9 | left: 0;
10 | z-index: $zindex-popover;
11 | display: none;
12 | max-width: $popover-max-width;
13 | padding: 1px;
14 | // Our parent element can be arbitrary since popovers are by default inserted as a sibling of their target element.
15 | // So reset our font and text properties to avoid inheriting weird values.
16 | @include reset-text;
17 | font-size: $font-size-base;
18 | background-color: $popover-bg;
19 | background-clip: padding-box;
20 | border: 1px solid $popover-fallback-border-color;
21 | border: 1px solid $popover-border-color;
22 | border-radius: $border-radius-large;
23 | @include box-shadow(0 5px 10px rgba(0, 0, 0, .2));
24 |
25 | // Offset the popover to account for the popover arrow
26 | &.top { margin-top: -$popover-arrow-width; }
27 | &.right { margin-left: $popover-arrow-width; }
28 | &.bottom { margin-top: $popover-arrow-width; }
29 | &.left { margin-left: -$popover-arrow-width; }
30 |
31 | // Arrows
32 | // .arrow is outer, .arrow:after is inner
33 | > .arrow {
34 | border-width: $popover-arrow-outer-width;
35 |
36 | &,
37 | &:after {
38 | position: absolute;
39 | display: block;
40 | width: 0;
41 | height: 0;
42 | border-color: transparent;
43 | border-style: solid;
44 | }
45 |
46 | &:after {
47 | content: "";
48 | border-width: $popover-arrow-width;
49 | }
50 | }
51 |
52 | &.top > .arrow {
53 | bottom: -$popover-arrow-outer-width;
54 | left: 50%;
55 | margin-left: -$popover-arrow-outer-width;
56 | border-top-color: $popover-arrow-outer-fallback-color; // IE8 fallback
57 | border-top-color: $popover-arrow-outer-color;
58 | border-bottom-width: 0;
59 | &:after {
60 | bottom: 1px;
61 | margin-left: -$popover-arrow-width;
62 | content: " ";
63 | border-top-color: $popover-arrow-color;
64 | border-bottom-width: 0;
65 | }
66 | }
67 | &.right > .arrow {
68 | top: 50%;
69 | left: -$popover-arrow-outer-width;
70 | margin-top: -$popover-arrow-outer-width;
71 | border-right-color: $popover-arrow-outer-fallback-color; // IE8 fallback
72 | border-right-color: $popover-arrow-outer-color;
73 | border-left-width: 0;
74 | &:after {
75 | bottom: -$popover-arrow-width;
76 | left: 1px;
77 | content: " ";
78 | border-right-color: $popover-arrow-color;
79 | border-left-width: 0;
80 | }
81 | }
82 | &.bottom > .arrow {
83 | top: -$popover-arrow-outer-width;
84 | left: 50%;
85 | margin-left: -$popover-arrow-outer-width;
86 | border-top-width: 0;
87 | border-bottom-color: $popover-arrow-outer-fallback-color; // IE8 fallback
88 | border-bottom-color: $popover-arrow-outer-color;
89 | &:after {
90 | top: 1px;
91 | margin-left: -$popover-arrow-width;
92 | content: " ";
93 | border-top-width: 0;
94 | border-bottom-color: $popover-arrow-color;
95 | }
96 | }
97 |
98 | &.left > .arrow {
99 | top: 50%;
100 | right: -$popover-arrow-outer-width;
101 | margin-top: -$popover-arrow-outer-width;
102 | border-right-width: 0;
103 | border-left-color: $popover-arrow-outer-fallback-color; // IE8 fallback
104 | border-left-color: $popover-arrow-outer-color;
105 | &:after {
106 | right: 1px;
107 | bottom: -$popover-arrow-width;
108 | content: " ";
109 | border-right-width: 0;
110 | border-left-color: $popover-arrow-color;
111 | }
112 | }
113 | }
114 |
115 | .popover-title {
116 | padding: 8px 14px;
117 | margin: 0; // reset heading margin
118 | font-size: $font-size-base;
119 | background-color: $popover-title-bg;
120 | border-bottom: 1px solid darken($popover-title-bg, 5%);
121 | border-radius: ($border-radius-large - 1) ($border-radius-large - 1) 0 0;
122 | }
123 |
124 | .popover-content {
125 | padding: 9px 14px;
126 | }
127 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_print.scss:
--------------------------------------------------------------------------------
1 | /*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
2 |
3 | // ==========================================================================
4 | // Print styles.
5 | // Inlined to avoid the additional HTTP request: h5bp.com/r
6 | // ==========================================================================
7 |
8 | @media print {
9 | *,
10 | *:before,
11 | *:after {
12 | color: #000 !important; // Black prints faster: h5bp.com/s
13 | text-shadow: none !important;
14 | background: transparent !important;
15 | box-shadow: none !important;
16 | }
17 |
18 | a,
19 | a:visited {
20 | text-decoration: underline;
21 | }
22 |
23 | a[href]:after {
24 | content: " (" attr(href) ")";
25 | }
26 |
27 | abbr[title]:after {
28 | content: " (" attr(title) ")";
29 | }
30 |
31 | // Don't show links that are fragment identifiers,
32 | // or use the `javascript:` pseudo protocol
33 | a[href^="#"]:after,
34 | a[href^="javascript:"]:after {
35 | content: "";
36 | }
37 |
38 | pre,
39 | blockquote {
40 | border: 1px solid #999;
41 | page-break-inside: avoid;
42 | }
43 |
44 | thead {
45 | display: table-header-group; // h5bp.com/t
46 | }
47 |
48 | tr,
49 | img {
50 | page-break-inside: avoid;
51 | }
52 |
53 | img {
54 | max-width: 100% !important;
55 | }
56 |
57 | p,
58 | h2,
59 | h3 {
60 | orphans: 3;
61 | widows: 3;
62 | }
63 |
64 | h2,
65 | h3 {
66 | page-break-after: avoid;
67 | }
68 |
69 | // Bootstrap specific changes start
70 |
71 | // Bootstrap components
72 | .navbar {
73 | display: none;
74 | }
75 | .btn,
76 | .dropup > .btn {
77 | > .caret {
78 | border-top-color: #000 !important;
79 | }
80 | }
81 | .label {
82 | border: 1px solid #000;
83 | }
84 |
85 | .table {
86 | border-collapse: collapse !important;
87 |
88 | td,
89 | th {
90 | background-color: #fff !important;
91 | }
92 | }
93 | .table-bordered {
94 | th,
95 | td {
96 | border: 1px solid #ddd !important;
97 | }
98 | }
99 | }
100 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_progress-bars.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Progress bars
3 | // --------------------------------------------------
4 |
5 |
6 | // Bar animations
7 | // -------------------------
8 |
9 | // WebKit
10 | @-webkit-keyframes progress-bar-stripes {
11 | from { background-position: 40px 0; }
12 | to { background-position: 0 0; }
13 | }
14 |
15 | // Spec and IE10+
16 | @keyframes progress-bar-stripes {
17 | from { background-position: 40px 0; }
18 | to { background-position: 0 0; }
19 | }
20 |
21 |
22 | // Bar itself
23 | // -------------------------
24 |
25 | // Outer container
26 | .progress {
27 | height: $line-height-computed;
28 | margin-bottom: $line-height-computed;
29 | overflow: hidden;
30 | background-color: $progress-bg;
31 | border-radius: $progress-border-radius;
32 | @include box-shadow(inset 0 1px 2px rgba(0, 0, 0, .1));
33 | }
34 |
35 | // Bar of progress
36 | .progress-bar {
37 | float: left;
38 | width: 0%;
39 | height: 100%;
40 | font-size: $font-size-small;
41 | line-height: $line-height-computed;
42 | color: $progress-bar-color;
43 | text-align: center;
44 | background-color: $progress-bar-bg;
45 | @include box-shadow(inset 0 -1px 0 rgba(0, 0, 0, .15));
46 | @include transition(width .6s ease);
47 | }
48 |
49 | // Striped bars
50 | //
51 | // `.progress-striped .progress-bar` is deprecated as of v3.2.0 in favor of the
52 | // `.progress-bar-striped` class, which you just add to an existing
53 | // `.progress-bar`.
54 | .progress-striped .progress-bar,
55 | .progress-bar-striped {
56 | @include gradient-striped;
57 | background-size: 40px 40px;
58 | }
59 |
60 | // Call animation for the active one
61 | //
62 | // `.progress.active .progress-bar` is deprecated as of v3.2.0 in favor of the
63 | // `.progress-bar.active` approach.
64 | .progress.active .progress-bar,
65 | .progress-bar.active {
66 | @include animation(progress-bar-stripes 2s linear infinite);
67 | }
68 |
69 |
70 | // Variations
71 | // -------------------------
72 |
73 | .progress-bar-success {
74 | @include progress-bar-variant($progress-bar-success-bg);
75 | }
76 |
77 | .progress-bar-info {
78 | @include progress-bar-variant($progress-bar-info-bg);
79 | }
80 |
81 | .progress-bar-warning {
82 | @include progress-bar-variant($progress-bar-warning-bg);
83 | }
84 |
85 | .progress-bar-danger {
86 | @include progress-bar-variant($progress-bar-danger-bg);
87 | }
88 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_responsive-embed.scss:
--------------------------------------------------------------------------------
1 | // Embeds responsive
2 | //
3 | // Credit: Nicolas Gallagher and SUIT CSS.
4 |
5 | .embed-responsive {
6 | position: relative;
7 | display: block;
8 | height: 0;
9 | padding: 0;
10 | overflow: hidden;
11 |
12 | .embed-responsive-item,
13 | iframe,
14 | embed,
15 | object,
16 | video {
17 | position: absolute;
18 | top: 0;
19 | bottom: 0;
20 | left: 0;
21 | width: 100%;
22 | height: 100%;
23 | border: 0;
24 | }
25 | }
26 |
27 | // Modifier class for 16:9 aspect ratio
28 | .embed-responsive-16by9 {
29 | padding-bottom: 56.25%;
30 | }
31 |
32 | // Modifier class for 4:3 aspect ratio
33 | .embed-responsive-4by3 {
34 | padding-bottom: 75%;
35 | }
36 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_scaffolding.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Scaffolding
3 | // --------------------------------------------------
4 |
5 |
6 | // Reset the box-sizing
7 | //
8 | // Heads up! This reset may cause conflicts with some third-party widgets.
9 | // For recommendations on resolving such conflicts, see
10 | // https://getbootstrap.com/docs/3.4/getting-started/#third-box-sizing
11 | * {
12 | @include box-sizing(border-box);
13 | }
14 | *:before,
15 | *:after {
16 | @include box-sizing(border-box);
17 | }
18 |
19 |
20 | // Body reset
21 |
22 | html {
23 | font-size: 10px;
24 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
25 | }
26 |
27 | body {
28 | font-family: $font-family-base;
29 | font-size: $font-size-base;
30 | line-height: $line-height-base;
31 | color: $text-color;
32 | background-color: $body-bg;
33 | }
34 |
35 | // Reset fonts for relevant elements
36 | input,
37 | button,
38 | select,
39 | textarea {
40 | font-family: inherit;
41 | font-size: inherit;
42 | line-height: inherit;
43 | }
44 |
45 |
46 | // Links
47 |
48 | a {
49 | color: $link-color;
50 | text-decoration: none;
51 |
52 | &:hover,
53 | &:focus {
54 | color: $link-hover-color;
55 | text-decoration: $link-hover-decoration;
56 | }
57 |
58 | &:focus {
59 | @include tab-focus;
60 | }
61 | }
62 |
63 |
64 | // Figures
65 | //
66 | // We reset this here because previously Normalize had no `figure` margins. This
67 | // ensures we don't break anyone's use of the element.
68 |
69 | figure {
70 | margin: 0;
71 | }
72 |
73 |
74 | // Images
75 |
76 | img {
77 | vertical-align: middle;
78 | }
79 |
80 | // Responsive images (ensure images don't scale beyond their parents)
81 | .img-responsive {
82 | @include img-responsive;
83 | }
84 |
85 | // Rounded corners
86 | .img-rounded {
87 | border-radius: $border-radius-large;
88 | }
89 |
90 | // Image thumbnails
91 | //
92 | // Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.
93 | .img-thumbnail {
94 | padding: $thumbnail-padding;
95 | line-height: $line-height-base;
96 | background-color: $thumbnail-bg;
97 | border: 1px solid $thumbnail-border;
98 | border-radius: $thumbnail-border-radius;
99 | @include transition(all .2s ease-in-out);
100 |
101 | // Keep them at most 100% wide
102 | @include img-responsive(inline-block);
103 | }
104 |
105 | // Perfect circle
106 | .img-circle {
107 | border-radius: 50%; // set radius in percents
108 | }
109 |
110 |
111 | // Horizontal rules
112 |
113 | hr {
114 | margin-top: $line-height-computed;
115 | margin-bottom: $line-height-computed;
116 | border: 0;
117 | border-top: 1px solid $hr-border;
118 | }
119 |
120 |
121 | // Only display content to screen readers
122 | //
123 | // See: https://a11yproject.com/posts/how-to-hide-content
124 |
125 | .sr-only {
126 | position: absolute;
127 | width: 1px;
128 | height: 1px;
129 | padding: 0;
130 | margin: -1px;
131 | overflow: hidden;
132 | clip: rect(0, 0, 0, 0);
133 | border: 0;
134 | }
135 |
136 | // Use in conjunction with .sr-only to only display content when it's focused.
137 | // Useful for "Skip to main content" links; see https://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
138 | // Credit: HTML5 Boilerplate
139 |
140 | .sr-only-focusable {
141 | &:active,
142 | &:focus {
143 | position: static;
144 | width: auto;
145 | height: auto;
146 | margin: 0;
147 | overflow: visible;
148 | clip: auto;
149 | }
150 | }
151 |
152 |
153 | // iOS "clickable elements" fix for role="button"
154 | //
155 | // Fixes "clickability" issue (and more generally, the firing of events such as focus as well)
156 | // for traditionally non-focusable elements with role="button"
157 | // see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
158 |
159 | [role="button"] {
160 | cursor: pointer;
161 | }
162 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_thumbnails.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Thumbnails
3 | // --------------------------------------------------
4 |
5 |
6 | // Mixin and adjust the regular image class
7 | .thumbnail {
8 | display: block;
9 | padding: $thumbnail-padding;
10 | margin-bottom: $line-height-computed;
11 | line-height: $line-height-base;
12 | background-color: $thumbnail-bg;
13 | border: 1px solid $thumbnail-border;
14 | border-radius: $thumbnail-border-radius;
15 | @include transition(border .2s ease-in-out);
16 |
17 | > img,
18 | a > img {
19 | @include img-responsive;
20 | margin-right: auto;
21 | margin-left: auto;
22 | }
23 |
24 | // [converter] extracted a&:hover, a&:focus, a&.active to a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active
25 |
26 | // Image captions
27 | .caption {
28 | padding: $thumbnail-caption-padding;
29 | color: $thumbnail-caption-color;
30 | }
31 | }
32 |
33 | // Add a hover state for linked versions only
34 | a.thumbnail:hover,
35 | a.thumbnail:focus,
36 | a.thumbnail.active {
37 | border-color: $link-color;
38 | }
39 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_tooltip.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Tooltips
3 | // --------------------------------------------------
4 |
5 |
6 | // Base class
7 | .tooltip {
8 | position: absolute;
9 | z-index: $zindex-tooltip;
10 | display: block;
11 | // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
12 | // So reset our font and text properties to avoid inheriting weird values.
13 | @include reset-text;
14 | font-size: $font-size-small;
15 |
16 | @include opacity(0);
17 |
18 | &.in { @include opacity($tooltip-opacity); }
19 | &.top {
20 | padding: $tooltip-arrow-width 0;
21 | margin-top: -3px;
22 | }
23 | &.right {
24 | padding: 0 $tooltip-arrow-width;
25 | margin-left: 3px;
26 | }
27 | &.bottom {
28 | padding: $tooltip-arrow-width 0;
29 | margin-top: 3px;
30 | }
31 | &.left {
32 | padding: 0 $tooltip-arrow-width;
33 | margin-left: -3px;
34 | }
35 |
36 | // Note: Deprecated .top-left, .top-right, .bottom-left, and .bottom-right as of v3.3.1
37 | &.top .tooltip-arrow {
38 | bottom: 0;
39 | left: 50%;
40 | margin-left: -$tooltip-arrow-width;
41 | border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
42 | border-top-color: $tooltip-arrow-color;
43 | }
44 | &.top-left .tooltip-arrow {
45 | right: $tooltip-arrow-width;
46 | bottom: 0;
47 | margin-bottom: -$tooltip-arrow-width;
48 | border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
49 | border-top-color: $tooltip-arrow-color;
50 | }
51 | &.top-right .tooltip-arrow {
52 | bottom: 0;
53 | left: $tooltip-arrow-width;
54 | margin-bottom: -$tooltip-arrow-width;
55 | border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
56 | border-top-color: $tooltip-arrow-color;
57 | }
58 | &.right .tooltip-arrow {
59 | top: 50%;
60 | left: 0;
61 | margin-top: -$tooltip-arrow-width;
62 | border-width: $tooltip-arrow-width $tooltip-arrow-width $tooltip-arrow-width 0;
63 | border-right-color: $tooltip-arrow-color;
64 | }
65 | &.left .tooltip-arrow {
66 | top: 50%;
67 | right: 0;
68 | margin-top: -$tooltip-arrow-width;
69 | border-width: $tooltip-arrow-width 0 $tooltip-arrow-width $tooltip-arrow-width;
70 | border-left-color: $tooltip-arrow-color;
71 | }
72 | &.bottom .tooltip-arrow {
73 | top: 0;
74 | left: 50%;
75 | margin-left: -$tooltip-arrow-width;
76 | border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
77 | border-bottom-color: $tooltip-arrow-color;
78 | }
79 | &.bottom-left .tooltip-arrow {
80 | top: 0;
81 | right: $tooltip-arrow-width;
82 | margin-top: -$tooltip-arrow-width;
83 | border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
84 | border-bottom-color: $tooltip-arrow-color;
85 | }
86 | &.bottom-right .tooltip-arrow {
87 | top: 0;
88 | left: $tooltip-arrow-width;
89 | margin-top: -$tooltip-arrow-width;
90 | border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
91 | border-bottom-color: $tooltip-arrow-color;
92 | }
93 | }
94 |
95 | // Wrapper for the tooltip content
96 | .tooltip-inner {
97 | max-width: $tooltip-max-width;
98 | padding: 3px 8px;
99 | color: $tooltip-color;
100 | text-align: center;
101 | background-color: $tooltip-bg;
102 | border-radius: $border-radius-base;
103 | }
104 |
105 | // Arrows
106 | .tooltip-arrow {
107 | position: absolute;
108 | width: 0;
109 | height: 0;
110 | border-color: transparent;
111 | border-style: solid;
112 | }
113 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_utilities.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Utility classes
3 | // --------------------------------------------------
4 |
5 |
6 | // Floats
7 | // -------------------------
8 |
9 | .clearfix {
10 | @include clearfix;
11 | }
12 | .center-block {
13 | @include center-block;
14 | }
15 | .pull-right {
16 | float: right !important;
17 | }
18 | .pull-left {
19 | float: left !important;
20 | }
21 |
22 |
23 | // Toggling content
24 | // -------------------------
25 |
26 | // Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1
27 | .hide {
28 | display: none !important;
29 | }
30 | .show {
31 | display: block !important;
32 | }
33 | .invisible {
34 | visibility: hidden;
35 | }
36 | .text-hide {
37 | @include text-hide;
38 | }
39 |
40 |
41 | // Hide from screenreaders and browsers
42 | //
43 | // Credit: HTML5 Boilerplate
44 |
45 | .hidden {
46 | display: none !important;
47 | }
48 |
49 |
50 | // For Affix plugin
51 | // -------------------------
52 |
53 | .affix {
54 | position: fixed;
55 | }
56 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/_wells.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Wells
3 | // --------------------------------------------------
4 |
5 |
6 | // Base class
7 | .well {
8 | min-height: 20px;
9 | padding: 19px;
10 | margin-bottom: 20px;
11 | background-color: $well-bg;
12 | border: 1px solid $well-border;
13 | border-radius: $border-radius-base;
14 | @include box-shadow(inset 0 1px 1px rgba(0, 0, 0, .05));
15 | blockquote {
16 | border-color: #ddd;
17 | border-color: rgba(0, 0, 0, .15);
18 | }
19 | }
20 |
21 | // Sizes
22 | .well-lg {
23 | padding: 24px;
24 | border-radius: $border-radius-large;
25 | }
26 | .well-sm {
27 | padding: 9px;
28 | border-radius: $border-radius-small;
29 | }
30 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/mixins/_alerts.scss:
--------------------------------------------------------------------------------
1 | // Alerts
2 |
3 | @mixin alert-variant($background, $border, $text-color) {
4 | color: $text-color;
5 | background-color: $background;
6 | border-color: $border;
7 |
8 | hr {
9 | border-top-color: darken($border, 5%);
10 | }
11 |
12 | .alert-link {
13 | color: darken($text-color, 10%);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/mixins/_background-variant.scss:
--------------------------------------------------------------------------------
1 | // Contextual backgrounds
2 |
3 | // [converter] $parent hack
4 | @mixin bg-variant($parent, $color) {
5 | #{$parent} {
6 | background-color: $color;
7 | }
8 | a#{$parent}:hover,
9 | a#{$parent}:focus {
10 | background-color: darken($color, 10%);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/mixins/_border-radius.scss:
--------------------------------------------------------------------------------
1 | // Single side border-radius
2 |
3 | @mixin border-top-radius($radius) {
4 | border-top-left-radius: $radius;
5 | border-top-right-radius: $radius;
6 | }
7 | @mixin border-right-radius($radius) {
8 | border-top-right-radius: $radius;
9 | border-bottom-right-radius: $radius;
10 | }
11 | @mixin border-bottom-radius($radius) {
12 | border-bottom-right-radius: $radius;
13 | border-bottom-left-radius: $radius;
14 | }
15 | @mixin border-left-radius($radius) {
16 | border-top-left-radius: $radius;
17 | border-bottom-left-radius: $radius;
18 | }
19 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/mixins/_buttons.scss:
--------------------------------------------------------------------------------
1 | // Button variants
2 | //
3 | // Easily pump out default styles, as well as :hover, :focus, :active,
4 | // and disabled options for all buttons
5 |
6 | @mixin button-variant($color, $background, $border) {
7 | color: $color;
8 | background-color: $background;
9 | border-color: $border;
10 |
11 | &:focus,
12 | &.focus {
13 | color: $color;
14 | background-color: darken($background, 10%);
15 | border-color: darken($border, 25%);
16 | }
17 | &:hover {
18 | color: $color;
19 | background-color: darken($background, 10%);
20 | border-color: darken($border, 12%);
21 | }
22 | &:active,
23 | &.active,
24 | .open > &.dropdown-toggle {
25 | color: $color;
26 | background-color: darken($background, 10%);
27 | background-image: none;
28 | border-color: darken($border, 12%);
29 |
30 | &:hover,
31 | &:focus,
32 | &.focus {
33 | color: $color;
34 | background-color: darken($background, 17%);
35 | border-color: darken($border, 25%);
36 | }
37 | }
38 | &.disabled,
39 | &[disabled],
40 | fieldset[disabled] & {
41 | &:hover,
42 | &:focus,
43 | &.focus {
44 | background-color: $background;
45 | border-color: $border;
46 | }
47 | }
48 |
49 | .badge {
50 | color: $background;
51 | background-color: $color;
52 | }
53 | }
54 |
55 | // Button sizes
56 | @mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
57 | padding: $padding-vertical $padding-horizontal;
58 | font-size: $font-size;
59 | line-height: $line-height;
60 | border-radius: $border-radius;
61 | }
62 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/mixins/_center-block.scss:
--------------------------------------------------------------------------------
1 | // Center-align a block level element
2 |
3 | @mixin center-block() {
4 | display: block;
5 | margin-right: auto;
6 | margin-left: auto;
7 | }
8 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/mixins/_clearfix.scss:
--------------------------------------------------------------------------------
1 | // Clearfix
2 | //
3 | // For modern browsers
4 | // 1. The space content is one way to avoid an Opera bug when the
5 | // contenteditable attribute is included anywhere else in the document.
6 | // Otherwise it causes space to appear at the top and bottom of elements
7 | // that are clearfixed.
8 | // 2. The use of `table` rather than `block` is only necessary if using
9 | // `:before` to contain the top-margins of child elements.
10 | //
11 | // Source: http://nicolasgallagher.com/micro-clearfix-hack/
12 |
13 | @mixin clearfix() {
14 | &:before,
15 | &:after {
16 | display: table; // 2
17 | content: " "; // 1
18 | }
19 | &:after {
20 | clear: both;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/_scss/bootstrap/mixins/_forms.scss:
--------------------------------------------------------------------------------
1 | // Form validation states
2 | //
3 | // Used in forms.less to generate the form validation CSS for warnings, errors,
4 | // and successes.
5 |
6 | @mixin form-control-validation($text-color: #555, $border-color: #ccc, $background-color: #f5f5f5) {
7 | // Color the label and help text
8 | .help-block,
9 | .control-label,
10 | .radio,
11 | .checkbox,
12 | .radio-inline,
13 | .checkbox-inline,
14 | &.radio label,
15 | &.checkbox label,
16 | &.radio-inline label,
17 | &.checkbox-inline label {
18 | color: $text-color;
19 | }
20 | // Set the border and box shadow on specific inputs to match
21 | .form-control {
22 | border-color: $border-color;
23 | @include box-shadow(inset 0 1px 1px rgba(0, 0, 0, .075)); // Redeclare so transitions work
24 | &:focus {
25 | border-color: darken($border-color, 10%);
26 | $shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px lighten($border-color, 20%);
27 | @include box-shadow($shadow);
28 | }
29 | }
30 | // Set validation states also for addons
31 | .input-group-addon {
32 | color: $text-color;
33 | background-color: $background-color;
34 | border-color: $border-color;
35 | }
36 | // Optional feedback icon
37 | .form-control-feedback {
38 | color: $text-color;
39 | }
40 | }
41 |
42 |
43 | // Form control focus state
44 | //
45 | // Generate a customized focus state and for any input with the specified color,
46 | // which defaults to the `$input-border-focus` variable.
47 | //
48 | // We highly encourage you to not customize the default value, but instead use
49 | // this to tweak colors on an as-needed basis. This aesthetic change is based on
50 | // WebKit's default styles, but applicable to a wider range of browsers. Its
51 | // usability and accessibility should be taken into account with any change.
52 | //
53 | // Example usage: change the default blue border and shadow to white for better
54 | // contrast against a dark gray background.
55 | @mixin form-control-focus($color: $input-border-focus) {
56 | $color-rgba: rgba(red($color), green($color), blue($color), .6);
57 | &:focus {
58 | border-color: $color;
59 | outline: 0;
60 | @include box-shadow(inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px $color-rgba);
61 | }
62 | }
63 |
64 | // Form control sizing
65 | //
66 | // Relative text size, padding, and border-radii changes for form controls. For
67 | // horizontal sizing, wrap controls in the predefined grid classes. `