]> git.ipfire.org Git - ipfire.org.git/blame - src/scss/style.scss
location: Add a "How to use" page
[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";
54e768a2 20@import "../bootstrap/scss/custom-forms";
bc5b7100
MT
21@import "../bootstrap/scss/nav";
22@import "../bootstrap/scss/navbar";
8e1ad516
MT
23@import "../bootstrap/scss/card";
24@import "../bootstrap/scss/pagination";
6ac7e934 25@import "../bootstrap/scss/breadcrumb";
bc5b7100 26@import "../bootstrap/scss/badge";
8e1ad516 27@import "../bootstrap/scss/alert";
bc5b7100
MT
28@import "../bootstrap/scss/progress";
29@import "../bootstrap/scss/media";
30@import "../bootstrap/scss/list-group";
8e1ad516 31@import "../bootstrap/scss/close";
95b30f84 32@import "../bootstrap/scss/modal";
2901b734 33@import "../bootstrap/scss/spinners";
bc5b7100 34@import "../bootstrap/scss/utilities";
8e1ad516 35@import "../bootstrap/scss/print";
1423222c 36
616bd6a5 37// Include fonts
20cd8624 38@import "_fonts.scss";
616bd6a5 39
5236a99a 40// Custom stuff
95483f04 41@import "icons";
c4657f62 42@import "code-highlighting";
5236a99a 43
60ad7705
MT
44// Makes everything white with dark text on it
45.inverse {
46 background-color: $body-color;
47 color: $body-bg;
48}
49
d5389cd7 50body {
13ddfd7a 51 display: flex;
a2b09808 52 min-height: 100vh;
13ddfd7a 53 flex-flow: column;
cc59f0e1
MT
54}
55
41f3d31d
MT
56// Buttons
57.btn {
58 text-transform: uppercase;
59}
60
dd06f761 61@each $color, $value in $theme-colors {
3e486013 62 .btn-glow-#{$color} {
dcaed004 63 color: white;
dd06f761
MT
64 background-color: rgba($value, .15);
65 }
66}
67
5ff649e9
MT
68code {
69 background-color: $dark;
70 border-radius: $border-radius;
71 padding: 0.1rem 0.2rem;
72}
73
74pre {
75 background-color: $dark;
76 border-radius: $border-radius;
77 padding: 0.5rem;
78
79 code {
80 background-color: inherit;
81 padding: 0;
82 }
55eea098
MT
83
84 &.pre-light {
85 background-color: $white;
86 color: $body-bg;
87 }
5ff649e9
MT
88}
89
25346297 90.card {
60ad7705 91 @extend .inverse;
f0c48740
MT
92
93 // Reset padding for sections
94 section {
95 padding: 0;
96 }
25346297
MT
97}
98
f4672785
MT
99.list-group {
100 .list-group-item {
d8f64b59 101 color: $body-bg;
f4672785
MT
102 }
103}
104
9f043320
MT
105.nav {
106 .nav-link {
25346297 107 color: $white;
9f043320
MT
108
109 &.active {
110 color: $link-color;
111 border-left: 2px solid $link-color;
112 }
113 }
114}
115
56fdd02c 116.navbar {
c56cbe8c
MT
117 background-color: rgba($gray-400, .06);
118
7dadc6f7
MT
119 // Webkit is being stupid and cannot figure out the height
120 // of the navbar by itself
121 min-height: $navbar-height;
122
a9a5d02b
MT
123 .navbar-brand {
124 color: inherit;
56fdd02c 125 }
dce6f905
MT
126
127 .navbar-nav {
128 .nav-link {
a9a5d02b 129 color: inherit;
dce6f905
MT
130
131 &.active {
132 border-bottom: 2px solid $link-color;
133 }
134 }
135 }
56fdd02c
MT
136}
137
a2b09808
MT
138header {
139 &.cover {
140 position: relative;
141 width: 100%;
142 height: auto;
143 min-height: 35rem;
144
145 @include media-breakpoint-up(lg) {
146 height: calc(100vh - #{$navbar-height});
147 }
148 }
149}
150
b6d6d80f
MT
151.icon-large {
152 font-size: 8em;
153
154 @include media-breakpoint-up(md) {
155 font-size: 6em;
156 }
157
158 @include media-breakpoint-up(lg) {
159 font-size: 8em;
160 }
161
162 @include media-breakpoint-up(xl) {
163 font-size: 10em;
164 }
165}
166
c2cbe16d 167footer {
13ddfd7a 168 margin-top: auto;
252d95b6 169
c819ecf2 170 .footer {
0509f6fd 171 margin-top: $spacer * 3;
2597b512 172
0509f6fd
MT
173 .footer-info {
174 padding: 2rem 0 0 0;
252d95b6 175
0509f6fd
MT
176 color: $white;
177 background-color: rgba($gray-400, .04);
2597b512 178
0509f6fd
MT
179 @include media-breakpoint-down(md) {
180 padding-top: 31px;
181 }
c819ecf2 182
0509f6fd 183 a, .btn-link {
c819ecf2 184 color: inherit;
0509f6fd
MT
185
186 &:hover {
187 color: inherit;
188 }
c819ecf2 189 }
252d95b6 190
0509f6fd
MT
191 ul {
192 li {
193 margin-bottom: $spacer / 4;
194 }
c819ecf2 195 }
252d95b6 196 }
252d95b6 197
0509f6fd
MT
198 .copyright {
199 background-color: rgba($gray-400, .06);
200 padding: $spacer 0;
252d95b6 201
0509f6fd 202 font-size: $small-font-size;
252d95b6 203
0509f6fd
MT
204 a {
205 color: $text-muted;
206 }
252d95b6
MT
207 }
208 }
c2cbe16d
S
209}
210
c2cbe16d 211// Sections
319dd276 212
00026d8b 213section {
8ad3de4a 214 padding: 3rem 1rem;
00026d8b 215
8ad3de4a 216 @include media-breakpoint-up(md) {
bbaf0fc1 217 padding: 5rem 0;
8ad3de4a
MT
218 }
219
220 @include media-breakpoint-up(md) {
221 // Reset large headlines to normal size on mobile devices
222 h1 {
223 font-size: $display1-size;
224 font-weight: $display1-weight;
225 line-height: $display-line-height;
226 }
00026d8b 227 }
319dd276
MT
228}
229
321c58c3
MT
230.blog-post {
231 .blog-header {
53a70dd6
MT
232 h4 {
233 margin-bottom: 0;
234
4b2975d2 235 a {
9632ca8b 236 color: $dark;
4b2975d2 237 }
60e77f07
MT
238 }
239 }
8ebc98d4 240
321c58c3 241 .blog-content {
fb37ac29 242 h1, h2, h3, h4, h5, h6 {
2ee63634 243 font-size: 1.375rem;
fb37ac29 244 font-weight: $headings-font-weight;
2ee63634 245 line-height: $headings-line-height;
fb37ac29
MT
246 margin-bottom: 0.25rem;
247 }
c5cfd0d5
MT
248
249 img {
250 @include img-fluid;
c738f6d3
MT
251
252 // Center all images
253 display: block;
254 margin-left: auto;
255 margin-right: auto;
256
257 // Add some extra margin to the top & bottom
258 padding: ($spacer * 2) 0 ($spacer * 2) 0;
c5cfd0d5 259 }
fb37ac29
MT
260 }
261
8ebc98d4 262 &.lightning-wire-labs {
321c58c3 263 .blog-header {
4b2975d2
MT
264 h5 {
265 a {
266 color: $lwl;
267 }
268 }
269
270 a {
271 color: $lwl;
272 }
273 }
274
321c58c3 275 .blog-content {
4b2975d2
MT
276 a {
277 color: $lwl;
278 }
8ebc98d4
MT
279 }
280 }
12e5de7e
MT
281}
282
9bc17e85
MT
283.wiki-content {
284 h1, h2, h3, h4, h5, h6 {
285 font-weight: $headings-font-weight;
286 line-height: $headings-line-height;
457ead31 287 margin-bottom: 0.5rem;
9bc17e85
MT
288 }
289
290 h1 {
291 font-size: $h4-font-size;
292 }
293
294 h2 {
295 font-size: $h5-font-size;
296 }
297
298 h3, h4, h5, h6 {
299 font-size: $h6-font-size;
300 }
301
fa8c5edd
MT
302 figure {
303 // Center images
304 display: table;
9bc17e85 305 margin-right: auto;
fa8c5edd 306 margin-left: auto;
9bc17e85
MT
307
308 // Add some extra margin to the top & bottom
309 padding: ($spacer * 2) 0 ($spacer * 2) 0;
310 }
612e0574 311
86bcb973
MT
312 blockquote {
313 @extend .blockquote;
314 }
315
612e0574
MT
316 table {
317 @extend .table;
318 @extend .table-sm;
9d3de77d 319 @extend .table-striped;
c3772a5e
MT
320
321 // Apply CSS classes for alignment
322 thead {
323 th[align="left"], td[align="left"] {
324 @extend .text-left;
325 }
326
327 th[align="center"], td[align="center"] {
328 @extend .text-center;
329 }
330
331 th[align="right"], td[align="right"] {
332 @extend .text-right;
333 }
334 }
612e0574 335 }
9bc17e85
MT
336}
337
2901b734
MT
338#preview {
339 // Hide the spinner by default
340 #spinner {
341 display: none;
342 }
343
344 #preview-content {
345 @include transition(opacity .5s linear);
346 }
347
348 &.updating {
349 // Show the spinner during updates
350 #spinner {
351 display: block;
352 }
353
354 // While updating, we face out the content
355 #preview-content {
356 opacity: 0.5;
357 }
358 }
359}
360
ecea28b2
MT
361hr.divider {
362 border-color: rgba($dark, .15);
363 margin-top: 2rem;
364 margin-bottom: 3rem;
365}
9f043320 366
c2cbe16d
S
367.circle {
368 position: relative;
f8c4f791 369 p.fireinfo_per {
25346297 370 color: $gray-800;
c2cbe16d 371 position: absolute;
d56f505e 372 top: calc(50% - 18px);
c2cbe16d
S
373 width: 100%;
374 }
20df8773 375}
8cb0bea4
MT
376
377.pdf-viewer {
378 width: 100%;
379 min-height: 32rem;
380}