]> git.ipfire.org Git - ipfire.org.git/blame - src/scss/style.scss
CSS: Make footer sticky but with variable height
[ipfire.org.git] / src / scss / style.scss
CommitLineData
bc5b7100 1@import "variables";
91e44d91 2
8e1ad516 3// Use all Bootstrap modules that we want
bc5b7100
MT
4@import "../bootstrap/scss/functions";
5@import "../bootstrap/scss/variables";
6@import "../bootstrap/scss/mixins";
8e1ad516 7@import "../bootstrap/scss/root";
bc5b7100 8@import "../bootstrap/scss/reboot";
bc5b7100 9@import "../bootstrap/scss/type";
8e1ad516
MT
10@import "../bootstrap/scss/images";
11@import "../bootstrap/scss/code";
bc5b7100
MT
12@import "../bootstrap/scss/grid";
13@import "../bootstrap/scss/tables";
14@import "../bootstrap/scss/forms";
15@import "../bootstrap/scss/buttons";
bc5b7100 16@import "../bootstrap/scss/transitions";
8e1ad516 17@import "../bootstrap/scss/dropdown";
bc5b7100 18@import "../bootstrap/scss/button-group";
8e1ad516 19@import "../bootstrap/scss/input-group";
bc5b7100
MT
20@import "../bootstrap/scss/nav";
21@import "../bootstrap/scss/navbar";
8e1ad516
MT
22@import "../bootstrap/scss/card";
23@import "../bootstrap/scss/pagination";
bc5b7100 24@import "../bootstrap/scss/badge";
8e1ad516 25@import "../bootstrap/scss/alert";
bc5b7100
MT
26@import "../bootstrap/scss/progress";
27@import "../bootstrap/scss/media";
28@import "../bootstrap/scss/list-group";
8e1ad516 29@import "../bootstrap/scss/close";
95b30f84 30@import "../bootstrap/scss/modal";
bc5b7100 31@import "../bootstrap/scss/utilities";
8e1ad516 32@import "../bootstrap/scss/print";
1423222c 33
616bd6a5
MT
34// Include fonts
35@import "fonts";
36
5236a99a 37// Custom stuff
7ca46dd8 38@import '_icons';
5236a99a 39
60ad7705
MT
40// Makes everything white with dark text on it
41.inverse {
42 background-color: $body-color;
43 color: $body-bg;
44}
45
13ddfd7a
MT
46html, body {
47 height: 100%;
d5389cd7 48}
9f043320 49
d5389cd7 50body {
13ddfd7a
MT
51 display: flex;
52 flex-flow: column;
cc59f0e1
MT
53}
54
41f3d31d
MT
55// Buttons
56.btn {
57 text-transform: uppercase;
58}
59
dd06f761 60@each $color, $value in $theme-colors {
3e486013 61 .btn-glow-#{$color} {
dcaed004 62 color: white;
dd06f761
MT
63 background-color: rgba($value, .15);
64 }
65}
66
25346297 67.card {
60ad7705 68 @extend .inverse;
25346297
MT
69}
70
9f043320
MT
71.nav {
72 .nav-link {
25346297 73 color: $white;
9f043320
MT
74
75 &.active {
76 color: $link-color;
77 border-left: 2px solid $link-color;
78 }
79 }
80}
81
56fdd02c 82.navbar {
c56cbe8c
MT
83 background-color: rgba($gray-400, .06);
84
a9a5d02b
MT
85 .navbar-brand {
86 color: inherit;
56fdd02c 87 }
dce6f905
MT
88
89 .navbar-nav {
90 .nav-link {
a9a5d02b 91 color: inherit;
dce6f905
MT
92
93 &.active {
94 border-bottom: 2px solid $link-color;
95 }
96 }
97 }
56fdd02c
MT
98}
99
c2cbe16d 100footer {
13ddfd7a 101 margin-top: auto;
252d95b6
MT
102 padding: 3rem 0 0 0;
103
104 @include media-breakpoint-down(md) {
105 padding-top: 31px;
106 }
107
108 h4 {
109 margin-bottom: 1.25rem;
110 color: rgba($gray-400, .6);
111 font-size: 20px;
112 line-height: 28px;
113 }
114
115 ul {
116 li {
117 font-size: 14px;
118 margin-bottom: .75rem;
119
120 a {
121 color: rgba($gray-400, .6);
122 text-decoration: none;
123 &:hover {
124 color: $gray-400;
125 text-decoration: underline;
126 }
127 }
128 }
129 }
130
131 .btn-lg {
132 margin-bottom: 2.75rem;
133 }
134
135 .copyright {
136 background-color: rgba($gray-400, .06);
137 padding: $spacer 0;
138
139 font-size: $small-font-size;
140
141 a {
142 color: $text-muted;
143 }
144 }
c2cbe16d
S
145}
146
c2cbe16d 147// Sections
319dd276 148
cc59f0e1 149.main {
30b0d61a
MT
150 .intro {
151 min-height: 100%;
152 min-height: 100vh;
153
154 margin-top: -6rem;
155
35c610f8
MT
156 @include media-breakpoint-down(sm) {
157 padding-top: 6rem;
158 }
159
30b0d61a
MT
160 display: flex;
161 align-items: center;
162 }
163
cc59f0e1
MT
164 section {
165 padding: 3rem 0;
319dd276 166
cc59f0e1
MT
167 @include media-breakpoint-up(sm) {
168 padding: 72px 0;
169 }
319dd276 170 }
319dd276
MT
171}
172
12e5de7e 173.blog-post {
4b2975d2
MT
174 .blog-header {
175 h5 {
176 a {
9632ca8b 177 color: $dark;
4b2975d2 178 }
60e77f07
MT
179 }
180 }
8ebc98d4 181
fb37ac29
MT
182 .blog-content {
183 h1, h2, h3, h4, h5, h6 {
2ee63634 184 font-size: 1.375rem;
fb37ac29 185 font-weight: $headings-font-weight;
2ee63634 186 line-height: $headings-line-height;
fb37ac29
MT
187 margin-bottom: 0.25rem;
188 }
c5cfd0d5
MT
189
190 img {
191 @include img-fluid;
192 }
fb37ac29
MT
193 }
194
8ebc98d4 195 &.lightning-wire-labs {
4b2975d2
MT
196 .blog-header {
197 h5 {
198 a {
199 color: $lwl;
200 }
201 }
202
203 a {
204 color: $lwl;
205 }
206 }
207
208 .blog-content {
209 a {
210 color: $lwl;
211 }
8ebc98d4
MT
212 }
213 }
12e5de7e
MT
214}
215
8bc72662
MT
216// Donations
217
161b0c22 218.donation-explanation {
bddae05d
MT
219 color: $text-muted;
220 padding: 1.5rem;
161b0c22 221
bddae05d
MT
222 .faq {
223 a {
161b0c22
MT
224 color: inherit;
225 }
226 }
227}
228
9f043320
MT
229// Sidebar navigation
230
231#sidebar .nav {
232 position: fixed;
233}
234
c2cbe16d
S
235.feature_icons {
236 width: 40px;
237 height: 100%;
238 float: left;
239 margin-right: .75rem;
4b4334da
S
240}
241
61975d93
S
242.progress {
243 background-color: rgba(255, 255, 255, .2);
244}
245
c2cbe16d
S
246.circle {
247 position: relative;
f8c4f791 248 p.fireinfo_per {
25346297 249 color: $gray-800;
c2cbe16d 250 position: absolute;
d56f505e 251 top: calc(50% - 18px);
c2cbe16d
S
252 width: 100%;
253 }
20df8773
S
254}
255
bf5b46d4 256.divider {
0955047d 257 width: 128px;
bf5b46d4
S
258 height: 4px;
259 border-radius: 2px;
25346297 260 background-image: linear-gradient(to right, $red, $gray-400);
96dd6875
SH
261 margin: 40px auto 24px auto;
262 @include media-breakpoint-up(sm) {
263 margin: 56px auto 40px auto;
264 }
0955047d
S
265}
266
c2cbe16d 267// Animation
c2cbe16d 268@keyframes scroll {
61eaa9b2 269 0%, 100% { transform: translateY(30%); }
fdae1aac 270 50% { transform: translateY(50%); }
7c0605e8 271}