]> jfr.im git - irc/freenode/web-7.0.git/blob - static/css/style.css
Merge pull request #21 from freenode/design-margins
[irc/freenode/web-7.0.git] / static / css / style.css
1 /* vars */
2 :root {
3 --navbar-bg: #292f2f;
4 --jumbotron-bg: #3a4346;
5 --copyright-bg: #292f2f;
6 --link-color: 66,139,202;
7 --footer-link-color: #ddd;
8 --nlink-col: #000;
9 --text-color: #333;
10 --footer-text-color: #eee;
11 --copyright-text-color: #ccc;
12 --jumbotron-text-color: #eee;
13 --border-color: #292f2f;
14 --box-hover-color: #ddd;
15 --box-round: 10px;
16 }
17
18 /* reset css for browser compat */
19 * {
20 margin: 0;
21 padding: 0;
22 box-sizing: border-box;
23 }
24
25 /* global */
26 body {
27 font-family: 'Open Sans';
28 color: var(--text-color);
29 font-size: 14px;
30 min-height: 100vh;
31 height: auto;
32 }
33
34 a {
35 color: rgb(var(--link-color));
36 text-decoration: none;
37 }
38
39 /* navbar */
40 .navbar {
41 width: 100%;
42 height: 50px;
43 background-color: var(--navbar-bg);
44 box-shadow: 0 3px 4px rgba(0, 0, 0, 0.5);
45 position: fixed;
46 left: 0;
47 right: 0;
48 top: 0;
49 display: flex;
50 flex-wrap: nowrap;
51 justify-content: space-between;
52 align-items: center;
53 border-bottom: 1px solid var(--border-color);
54 z-index: 100;
55 }
56
57 @media all and (max-width: 600px) {
58 .navbar {
59 position: absolute;
60 }
61 }
62
63 .navbar a {
64 height: 40px;
65 }
66
67 a.nav-light {
68 background-color: #eee;
69 height: 44px;
70 padding: 2px;
71 margin-right: 3px;
72 }
73
74 .nlogo {
75 height: 40px;
76 }
77
78 .navlinks {
79 display: flex;
80 justify-content: space-around;
81 flex-wrap: nowrap;
82 }
83
84 .nlink {
85 text-decoration: none;
86 color: var(--nlink-col);
87 }
88
89 /* main */
90 .container {
91 padding: 50px 0 0;
92 width: 100%;
93 min-height: 98vh;
94 padding-bottom: 11.5rem;
95 }
96
97 .main {
98 margin: 0 .5em;
99 margin-top: 1em;
100 }
101
102 .main h1,
103 .main h2,
104 .main h3,
105 .main p + p {
106 margin-top: .5em;
107 }
108
109 /* jumbotron */
110 .jumbotron {
111 position: relative;
112 width: 100%;
113 margin-top: -16px;
114 background: #000;
115 background: var(--jumbotron-bg);
116 box-shadow: 0 1px 5px rgba(0, 0, 0, 0.6);
117 color: var(--jumbotron-text-color);
118 padding: 2em 0;
119 }
120
121 .child {
122 text-align: center;
123 margin: .5em;
124 font-size: 32px;
125 line-height: 48px;
126 }
127
128 .box-container {
129 display: flex;
130 flex-wrap: wrap;
131 justify-content: space-around;
132 align-items: stretch;
133 max-width: 800px;
134 margin: 0 auto;
135 }
136
137 .box {
138 text-align: center;
139 text-decoration: none;
140 color: var(--text-color);
141 margin-bottom: 5px;
142 padding: 5px;
143 flex-basis: 30%;
144 background-color: #fff;
145 border-radius: var(--box-round);
146 -webkit-border-radius: var(--box-round);
147 -moz-border-radius: var(--box-round);
148 }
149
150 .box span {
151 display: block;
152 }
153
154 .box:hover,.box:active {
155 background-color: var(--box-hover-color);
156 }
157
158 .box div{
159 font-size: 28px;
160 line-height: 28px;
161 padding-left: 8px;
162 font-weight: 700;
163 position: relative;
164 display: inline;
165 top: -10px;
166 }
167
168 .fa-users {
169 margin-top: 5px;
170 }
171
172 .fa-comment,.fa-question {
173 margin-bottom: 5px;
174 }
175
176 .fa-4x {
177 padding-left: 8px;
178 }
179
180 .title {
181 text-align: center;
182 }
183
184 /* articles feed */
185 h1 {
186 margin: 0;
187 }
188
189 div.art {
190 clear: right;
191 min-height: 2em;
192 flex-grow: 1;
193 }
194
195 div.artlist {
196 display: flex;
197 flex-wrap: wrap;
198 justify-content: flex-start;
199 align-items: stretch;
200 margin-top: .5em;
201 }
202
203 @media all and (min-width: 800px) {
204 div.artlist {
205 max-width: 50%;
206 margin-right: auto;
207 margin-left: auto;
208 }
209 }
210
211 div.art:not(:first-child) {
212 border-top: 1px solid var(--border-color);
213 }
214
215 b.art {
216 margin-bottom: 0;
217 font-size: 18px;
218 }
219
220 p.art {
221 margin: 0;
222 }
223
224 p.art-ingress {
225 font-style: italic;
226 margin: 0;
227 }
228
229 .art-date {
230 float: right;
231 color: #ccc;
232 margin: 0 .5em;
233 }
234
235 p.heading {
236 white-space: nowrap;
237 }
238
239 p.art-link {
240 margin-top: 0;
241 }
242
243 /* Article */
244 .art-full h1,
245 .art-full h2,
246 .art-full h3,
247 .art-full h4 {}
248
249 /* help */
250 .hmain {
251 display: flex;
252 flex-wrap: wrap;
253 justify-content: space-around;
254 align-items: stretch;
255 }
256
257 a.hchild {
258 color: var(--text-color);
259 /*height: 40px;*/
260 width: 95%;
261 text-align: center;
262 border-top: 1px solid var(--border-color);
263 border-left: 1px solid var(--border-color);
264 border-right: 1px solid var(--border-color);
265 }
266
267 a.hchild:hover,a.hchild:active {
268 background-color: var(--box-hover-color);
269 }
270
271 .hchild:first-child {
272 margin-top: 10px;
273 -webkit-border-top-left-radius: var(--box-round);
274 -webkit-border-top-right-radius: var(--box-round);
275 -moz-border-radius-topleft: var(--box-round);
276 -moz-border-radius-topright: var(--box-round);
277 border-top-left-radius: var(--box-round);
278 border-top-right-radius: var(--box-round);
279 }
280
281 .hchild:last-child {
282 margin-bottom: 10px;
283 border-bottom: 1px solid var(--border-color);
284 -webkit-border-bottom-right-radius: var(--box-round);
285 -webkit-border-bottom-left-radius: var(--box-round);
286 -moz-border-radius-bottomright: var(--box-round);
287 -moz-border-radius-bottomleft: var(--box-round);
288 border-bottom-right-radius: var(--box-round);
289 border-bottom-left-radius: var(--box-round);
290 }
291
292 /* footer */
293 .footers {
294 /*min-height: 30vh;*/
295 margin-top: -11rem;
296 min-height: 11rem;
297 }
298
299 .footer {
300 background: var(--jumbotron-bg);
301 color: var(--footer-text-color);
302 margin-top: 2vh;
303 display: flex;
304 flex-wrap: wrap;
305 justify-content: space-between;
306 align-items: flex-start;
307 box-shadow: 0 -3px 5px rgba(150,150,150,.36);
308 min-height: 9.5rem;
309 }
310
311 .footerchild {
312 margin-top: .5em;
313 flex: 1 1 1px;
314 min-width: 12rem;
315 }
316
317 .footerchild:last-child {
318 margin-bottom: 1em;
319 }
320
321 @media all and (max-width: 60rem) {
322 .footer-push {
323 margin-left: auto;
324 width: max-content;
325 }
326 }
327
328 .footer a {
329 color: var(--footer-link-color);
330 }
331
332 .footer h2 {
333 margin-bottom: .1em;
334 display: inline-block;
335 }
336
337 .footerchild ul,.footerchild ul ul {
338 margin-left: 10px;
339 margin-right: 10px;
340 list-style-type: none;
341 }
342
343 .footerchild ul ul {
344 padding-left: 30px;
345 }
346
347 @media all and (max-width: 600px) {
348 .footer {
349 flex-direction: column;
350 }
351
352 .footerchild {
353 width: 100%;
354 }
355
356 .footer-push {
357 margin-left: 0;
358 }
359
360 .footerchild ul li:last-child {
361 margin-bottom: .5em;
362 }
363
364 .hdn {
365 display: none;
366 }
367
368 .box {
369 text-align: center;
370 }
371
372 .child {
373 font-size: 20px;
374 line-height: 30px;
375 padding: 10px 0 5px;
376 }
377
378 .fa-4x {
379 padding: 0;
380 margin: 0;
381 }
382
383 .box-container {
384 flex-direction: column;
385 margin: 0 .5em;
386 }
387
388 .box div {
389 position: relative;
390 top: initial;
391 font-size: 16px;
392 font-weight: normal;
393 line-height: 16px;
394 padding: 10px 0;
395 display: block;
396 }
397 }
398
399 .footer h2,.footer h3 {
400 margin-left: 10px;
401 margin-right: 10px;
402 }
403
404 .copyright {
405 display: flex;
406 flex-wrap: wrap;
407 justify-content: space-between;
408 align-items: center;
409 background: var(--copyright-bg);
410 min-height: 1.5rem;
411 color: var(--copyright-text-color);
412 }
413
414 a.copyright {
415 background: var(--copyright-bg);
416 margin-bottom: 0;
417 margin-top: 0;
418 margin-left: .5em;
419 margin-right: .5em;
420 width: auto;
421 height: auto;
422 }
423
424 .copyright a img {
425 height: 1.5rem;
426 width: auto;
427 }
428
429 .copyright p {
430 margin-bottom: 0;
431 margin-top: 0;
432 margin-left: .5em;
433 margin-right: .5em;
434 text-align: right;
435 }