blob: 54aea9b317945a582e5879a410083fb704d79058 [file] [log] [blame]
Christophe Dervieux8afae132021-12-06 15:16:42 +01001@use "sass:math";
2
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02003/**
JJ Allaireefa6ad42016-01-30 13:12:05 -05004 * reveal.js
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02005 * http://revealjs.com
JJ Allaireefa6ad42016-01-30 13:12:05 -05006 * MIT licensed
7 *
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02008 * Copyright (C) Hakim El Hattab, https://hakim.se
JJ Allaireefa6ad42016-01-30 13:12:05 -05009 */
10
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020011@import 'layout';
JJ Allaireefa6ad42016-01-30 13:12:05 -050012
13/*********************************************
14 * GLOBAL STYLES
15 *********************************************/
16
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020017html.reveal-full-page {
JJ Allaireefa6ad42016-01-30 13:12:05 -050018 width: 100%;
19 height: 100%;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020020 height: 100vh;
21 height: calc( var(--vh, 1vh) * 100 );
JJ Allaireefa6ad42016-01-30 13:12:05 -050022 overflow: hidden;
23}
24
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020025.reveal-viewport {
26 height: 100%;
27 overflow: hidden;
JJ Allaireefa6ad42016-01-30 13:12:05 -050028 position: relative;
29 line-height: 1;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020030 margin: 0;
JJ Allaireefa6ad42016-01-30 13:12:05 -050031
32 background-color: #fff;
33 color: #000;
34}
35
JJ Allaireefa6ad42016-01-30 13:12:05 -050036
37/*********************************************
38 * VIEW FRAGMENTS
39 *********************************************/
40
41.reveal .slides section .fragment {
42 opacity: 0;
43 visibility: hidden;
44 transition: all .2s ease;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020045 will-change: opacity;
JJ Allaireefa6ad42016-01-30 13:12:05 -050046
47 &.visible {
48 opacity: 1;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020049 visibility: inherit;
50 }
51
52 &.disabled {
53 transition: none;
JJ Allaireefa6ad42016-01-30 13:12:05 -050054 }
55}
56
57.reveal .slides section .fragment.grow {
58 opacity: 1;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020059 visibility: inherit;
JJ Allaireefa6ad42016-01-30 13:12:05 -050060
61 &.visible {
62 transform: scale( 1.3 );
63 }
64}
65
66.reveal .slides section .fragment.shrink {
67 opacity: 1;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020068 visibility: inherit;
JJ Allaireefa6ad42016-01-30 13:12:05 -050069
70 &.visible {
71 transform: scale( 0.7 );
72 }
73}
74
75.reveal .slides section .fragment.zoom-in {
76 transform: scale( 0.1 );
77
78 &.visible {
79 transform: none;
80 }
81}
82
83.reveal .slides section .fragment.fade-out {
84 opacity: 1;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020085 visibility: inherit;
JJ Allaireefa6ad42016-01-30 13:12:05 -050086
87 &.visible {
88 opacity: 0;
89 visibility: hidden;
90 }
91}
92
93.reveal .slides section .fragment.semi-fade-out {
94 opacity: 1;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020095 visibility: inherit;
JJ Allaireefa6ad42016-01-30 13:12:05 -050096
97 &.visible {
98 opacity: 0.5;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +020099 visibility: inherit;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500100 }
101}
102
103.reveal .slides section .fragment.strike {
104 opacity: 1;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200105 visibility: inherit;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500106
107 &.visible {
108 text-decoration: line-through;
109 }
110}
111
Bruce's Thinkpad72710882016-07-14 01:12:07 +0800112.reveal .slides section .fragment.fade-up {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200113 transform: translate(0, 40px);
Bruce's Thinkpad72710882016-07-14 01:12:07 +0800114
115 &.visible {
116 transform: translate(0, 0);
117 }
118}
119
120.reveal .slides section .fragment.fade-down {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200121 transform: translate(0, -40px);
Bruce's Thinkpad72710882016-07-14 01:12:07 +0800122
123 &.visible {
124 transform: translate(0, 0);
125 }
126}
127
128.reveal .slides section .fragment.fade-right {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200129 transform: translate(-40px, 0);
Bruce's Thinkpad72710882016-07-14 01:12:07 +0800130
131 &.visible {
132 transform: translate(0, 0);
133 }
134}
135
136.reveal .slides section .fragment.fade-left {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200137 transform: translate(40px, 0);
Bruce's Thinkpad72710882016-07-14 01:12:07 +0800138
139 &.visible {
140 transform: translate(0, 0);
141 }
142}
143
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200144.reveal .slides section .fragment.fade-in-then-out,
JJ Allaireefa6ad42016-01-30 13:12:05 -0500145.reveal .slides section .fragment.current-visible {
146 opacity: 0;
147 visibility: hidden;
148
149 &.current-fragment {
150 opacity: 1;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200151 visibility: inherit;
152 }
153}
154
155.reveal .slides section .fragment.fade-in-then-semi-out {
156 opacity: 0;
157 visibility: hidden;
158
159 &.visible {
160 opacity: 0.5;
161 visibility: inherit;
162 }
163
164 &.current-fragment {
165 opacity: 1;
166 visibility: inherit;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500167 }
168}
169
170.reveal .slides section .fragment.highlight-red,
171.reveal .slides section .fragment.highlight-current-red,
172.reveal .slides section .fragment.highlight-green,
173.reveal .slides section .fragment.highlight-current-green,
174.reveal .slides section .fragment.highlight-blue,
175.reveal .slides section .fragment.highlight-current-blue {
176 opacity: 1;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200177 visibility: inherit;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500178}
179 .reveal .slides section .fragment.highlight-red.visible {
180 color: #ff2c2d
181 }
182 .reveal .slides section .fragment.highlight-green.visible {
183 color: #17ff2e;
184 }
185 .reveal .slides section .fragment.highlight-blue.visible {
186 color: #1b91ff;
187 }
188
189.reveal .slides section .fragment.highlight-current-red.current-fragment {
190 color: #ff2c2d
191}
192.reveal .slides section .fragment.highlight-current-green.current-fragment {
193 color: #17ff2e;
194}
195.reveal .slides section .fragment.highlight-current-blue.current-fragment {
196 color: #1b91ff;
197}
198
199
200/*********************************************
201 * DEFAULT ELEMENT STYLES
202 *********************************************/
203
204/* Fixes issue in Chrome where italic fonts did not appear when printing to PDF */
205.reveal:after {
206 content: '';
207 font-style: italic;
208}
209
210.reveal iframe {
211 z-index: 1;
212}
213
214/** Prevents layering issues in certain browser/transition combinations */
215.reveal a {
216 position: relative;
217}
218
JJ Allaireefa6ad42016-01-30 13:12:05 -0500219
220/*********************************************
221 * CONTROLS
222 *********************************************/
223
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200224@keyframes bounce-right {
225 0%, 10%, 25%, 40%, 50% {transform: translateX(0);}
226 20% {transform: translateX(10px);}
227 30% {transform: translateX(-5px);}
228}
229
230@keyframes bounce-left {
231 0%, 10%, 25%, 40%, 50% {transform: translateX(0);}
232 20% {transform: translateX(-10px);}
233 30% {transform: translateX(5px);}
234}
235
236@keyframes bounce-down {
237 0%, 10%, 25%, 40%, 50% {transform: translateY(0);}
238 20% {transform: translateY(10px);}
239 30% {transform: translateY(-5px);}
240}
241
242$controlArrowSize: 3.6em;
243$controlArrowSpacing: 1.4em;
244$controlArrowLength: 2.6em;
245$controlArrowThickness: 0.5em;
246$controlsArrowAngle: 45deg;
247$controlsArrowAngleHover: 40deg;
248$controlsArrowAngleActive: 36deg;
249
250@mixin controlsArrowTransform( $angle ) {
251 &:before {
Christophe Dervieux8afae132021-12-06 15:16:42 +0100252 transform: translateX(($controlArrowSize - $controlArrowLength)*0.5) translateY(($controlArrowSize - $controlArrowThickness)*0.5) rotate( $angle );
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200253 }
254
255 &:after {
Christophe Dervieux8afae132021-12-06 15:16:42 +0100256 transform: translateX(($controlArrowSize - $controlArrowLength)*0.5) translateY(($controlArrowSize - $controlArrowThickness)*0.5) rotate( -$angle );
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200257 }
258}
259
JJ Allaireefa6ad42016-01-30 13:12:05 -0500260.reveal .controls {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200261 $spacing: 12px;
262
JJ Allaireefa6ad42016-01-30 13:12:05 -0500263 display: none;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500264 position: absolute;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200265 top: auto;
266 bottom: $spacing;
267 right: $spacing;
268 left: auto;
269 z-index: 11;
270 color: #000;
271 pointer-events: none;
272 font-size: 10px;
273
274 button {
275 position: absolute;
276 padding: 0;
277 background-color: transparent;
278 border: 0;
279 outline: 0;
280 cursor: pointer;
281 color: currentColor;
282 transform: scale(.9999);
283 transition: color 0.2s ease,
284 opacity 0.2s ease,
285 transform 0.2s ease;
286 z-index: 2; // above slides
287 pointer-events: auto;
288 font-size: inherit;
289
290 visibility: hidden;
291 opacity: 0;
292
293 -webkit-appearance: none;
294 -webkit-tap-highlight-color: rgba( 0, 0, 0, 0 );
295 }
296
297 .controls-arrow:before,
298 .controls-arrow:after {
299 content: '';
300 position: absolute;
301 top: 0;
302 left: 0;
303 width: $controlArrowLength;
304 height: $controlArrowThickness;
Christophe Dervieux8afae132021-12-06 15:16:42 +0100305 border-radius: $controlArrowThickness*0.5;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200306 background-color: currentColor;
307
308 transition: all 0.15s ease, background-color 0.8s ease;
Christophe Dervieux8afae132021-12-06 15:16:42 +0100309 transform-origin: math.div(floor(($controlArrowThickness*0.5)*10), 10) 50%;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200310 will-change: transform;
311 }
312
313 .controls-arrow {
314 position: relative;
315 width: $controlArrowSize;
316 height: $controlArrowSize;
317
318 @include controlsArrowTransform( $controlsArrowAngle );
319
320 &:hover {
321 @include controlsArrowTransform( $controlsArrowAngleHover );
322 }
323
324 &:active {
325 @include controlsArrowTransform( $controlsArrowAngleActive );
326 }
327 }
328
329 .navigate-left {
330 right: $controlArrowSize + $controlArrowSpacing*2;
Christophe Dervieux8afae132021-12-06 15:16:42 +0100331 bottom: $controlArrowSpacing + $controlArrowSize*0.5;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200332 transform: translateX( -10px );
333
334 &.highlight {
335 animation: bounce-left 2s 50 both ease-out;
336 }
337 }
338
339 .navigate-right {
340 right: 0;
Christophe Dervieux8afae132021-12-06 15:16:42 +0100341 bottom: $controlArrowSpacing + $controlArrowSize*0.5;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200342 transform: translateX( 10px );
343
344 .controls-arrow {
345 transform: rotate( 180deg );
346 }
347
348 &.highlight {
349 animation: bounce-right 2s 50 both ease-out;
350 }
351 }
352
353 .navigate-up {
Christophe Dervieux8afae132021-12-06 15:16:42 +0100354 right: $controlArrowSpacing + $controlArrowSize*0.5;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200355 bottom: $controlArrowSpacing*2 + $controlArrowSize;
356 transform: translateY( -10px );
357
358 .controls-arrow {
359 transform: rotate( 90deg );
360 }
361 }
362
363 .navigate-down {
Christophe Dervieux8afae132021-12-06 15:16:42 +0100364 right: $controlArrowSpacing + $controlArrowSize*0.5;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200365 bottom: -$controlArrowSpacing;
366 padding-bottom: $controlArrowSpacing;
367 transform: translateY( 10px );
368
369 .controls-arrow {
370 transform: rotate( -90deg );
371 }
372
373 &.highlight {
374 animation: bounce-down 2s 50 both ease-out;
375 }
376 }
377
378 // Back arrow style: "faded":
379 // Deemphasize backwards navigation arrows in favor of drawing
380 // attention to forwards navigation
381 &[data-controls-back-arrows="faded"] .navigate-up.enabled {
382 opacity: 0.3;
383
384 &:hover {
385 opacity: 1;
386 }
387 }
388
389 // Back arrow style: "hidden":
390 // Never show arrows for backwards navigation
391 &[data-controls-back-arrows="hidden"] .navigate-up.enabled {
392 opacity: 0;
393 visibility: hidden;
394 }
395
396 // Any control button that can be clicked is "enabled"
397 .enabled {
398 visibility: visible;
399 opacity: 0.9;
400 cursor: pointer;
401 transform: none;
402 }
403
404 // Any control button that leads to showing or hiding
405 // a fragment
406 .enabled.fragmented {
407 opacity: 0.5;
408 }
409
410 .enabled:hover,
411 .enabled.fragmented:hover {
412 opacity: 1;
413 }
JJ Allaireefa6ad42016-01-30 13:12:05 -0500414}
415
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200416.reveal:not(.rtl) .controls {
417 // Back arrow style: "faded":
418 // Deemphasize left arrow
419 &[data-controls-back-arrows="faded"] .navigate-left.enabled {
420 opacity: 0.3;
421
422 &:hover {
423 opacity: 1;
424 }
425 }
426
427 // Back arrow style: "hidden":
428 // Never show left arrow
429 &[data-controls-back-arrows="hidden"] .navigate-left.enabled {
430 opacity: 0;
431 visibility: hidden;
432 }
JJ Allaireefa6ad42016-01-30 13:12:05 -0500433}
434
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200435.reveal.rtl .controls {
436 // Back arrow style: "faded":
437 // Deemphasize right arrow in RTL mode
438 &[data-controls-back-arrows="faded"] .navigate-right.enabled {
439 opacity: 0.3;
440
441 &:hover {
442 opacity: 1;
443 }
444 }
445
446 // Back arrow style: "hidden":
447 // Never show right arrow in RTL mode
448 &[data-controls-back-arrows="hidden"] .navigate-right.enabled {
449 opacity: 0;
450 visibility: hidden;
451 }
JJ Allaireefa6ad42016-01-30 13:12:05 -0500452}
453
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200454.reveal[data-navigation-mode="linear"].has-horizontal-slides .navigate-up,
455.reveal[data-navigation-mode="linear"].has-horizontal-slides .navigate-down {
456 display: none;
457}
JJ Allaireefa6ad42016-01-30 13:12:05 -0500458
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200459// Adjust the layout when there are no vertical slides
460.reveal[data-navigation-mode="linear"].has-horizontal-slides .navigate-left,
461.reveal:not(.has-vertical-slides) .controls .navigate-left {
462 bottom: $controlArrowSpacing;
463 right: 0.5em + $controlArrowSpacing + $controlArrowSize;
464}
465
466.reveal[data-navigation-mode="linear"].has-horizontal-slides .navigate-right,
467.reveal:not(.has-vertical-slides) .controls .navigate-right {
468 bottom: $controlArrowSpacing;
469 right: 0.5em;
470}
471
472// Adjust the layout when there are no horizontal slides
473.reveal:not(.has-horizontal-slides) .controls .navigate-up {
474 right: $controlArrowSpacing;
475 bottom: $controlArrowSpacing + $controlArrowSize;
476}
477.reveal:not(.has-horizontal-slides) .controls .navigate-down {
478 right: $controlArrowSpacing;
479 bottom: 0.5em;
480}
481
482// Invert arrows based on background color
483.reveal.has-dark-background .controls {
484 color: #fff;
485}
486.reveal.has-light-background .controls {
487 color: #000;
488}
489
490// Disable active states on touch devices
491.reveal.no-hover .controls .controls-arrow:hover,
492.reveal.no-hover .controls .controls-arrow:active {
493 @include controlsArrowTransform( $controlsArrowAngle );
494}
495
496// Edge aligned controls layout
497@media screen and (min-width: 500px) {
498
499 $spacing: 0.8em;
500
501 .reveal .controls[data-controls-layout="edges"] {
502 & {
503 top: 0;
504 right: 0;
505 bottom: 0;
506 left: 0;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500507 }
508
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200509 .navigate-left,
510 .navigate-right,
511 .navigate-up,
512 .navigate-down {
513 bottom: auto;
514 right: auto;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500515 }
516
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200517 .navigate-left {
518 top: 50%;
519 left: $spacing;
Christophe Dervieux8afae132021-12-06 15:16:42 +0100520 margin-top: -$controlArrowSize*0.5;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500521 }
522
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200523 .navigate-right {
524 top: 50%;
525 right: $spacing;
Christophe Dervieux8afae132021-12-06 15:16:42 +0100526 margin-top: -$controlArrowSize*0.5;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500527 }
528
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200529 .navigate-up {
530 top: $spacing;
531 left: 50%;
Christophe Dervieux8afae132021-12-06 15:16:42 +0100532 margin-left: -$controlArrowSize*0.5;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200533 }
534
535 .navigate-down {
536 bottom: $spacing - $controlArrowSpacing + 0.3em;
537 left: 50%;
Christophe Dervieux8afae132021-12-06 15:16:42 +0100538 margin-left: -$controlArrowSize*0.5;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200539 }
540 }
541
542}
543
JJ Allaireefa6ad42016-01-30 13:12:05 -0500544
545/*********************************************
546 * PROGRESS BAR
547 *********************************************/
548
549.reveal .progress {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200550 position: absolute;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500551 display: none;
552 height: 3px;
553 width: 100%;
554 bottom: 0;
555 left: 0;
556 z-index: 10;
557
558 background-color: rgba( 0, 0, 0, 0.2 );
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200559 color: #fff;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500560}
561 .reveal .progress:after {
562 content: '';
563 display: block;
564 position: absolute;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200565 height: 10px;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500566 width: 100%;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200567 top: -10px;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500568 }
569 .reveal .progress span {
570 display: block;
571 height: 100%;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200572 width: 100%;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500573
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200574 background-color: currentColor;
575 transition: transform 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
576 transform-origin: 0 0;
577 transform: scaleX(0);
JJ Allaireefa6ad42016-01-30 13:12:05 -0500578 }
579
580/*********************************************
581 * SLIDE NUMBER
582 *********************************************/
583
584.reveal .slide-number {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200585 position: absolute;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500586 display: block;
587 right: 8px;
588 bottom: 8px;
589 z-index: 31;
590 font-family: Helvetica, sans-serif;
591 font-size: 12px;
592 line-height: 1;
593 color: #fff;
594 background-color: rgba( 0, 0, 0, 0.4 );
595 padding: 5px;
596}
597
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200598.reveal .slide-number a {
599 color: currentColor;
600}
601
JJ Allaireefa6ad42016-01-30 13:12:05 -0500602.reveal .slide-number-delimiter {
603 margin: 0 3px;
604}
605
606/*********************************************
607 * SLIDES
608 *********************************************/
609
610.reveal {
611 position: relative;
612 width: 100%;
613 height: 100%;
614 overflow: hidden;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200615 touch-action: pinch-zoom;
616}
617
618// Swiping on an embedded deck should not block page scrolling
619.reveal.embedded {
620 touch-action: pan-y;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500621}
622
623.reveal .slides {
624 position: absolute;
625 width: 100%;
626 height: 100%;
627 top: 0;
628 right: 0;
629 bottom: 0;
630 left: 0;
631 margin: auto;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200632 pointer-events: none;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500633
634 overflow: visible;
635 z-index: 1;
636 text-align: center;
637 perspective: 600px;
638 perspective-origin: 50% 40%;
639}
640
641.reveal .slides>section {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200642 perspective: 600px;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500643}
644
645.reveal .slides>section,
646.reveal .slides>section>section {
647 display: none;
648 position: absolute;
649 width: 100%;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200650 pointer-events: auto;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500651
652 z-index: 10;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200653 transform-style: flat;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500654 transition: transform-origin 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
655 transform 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
656 visibility 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
657 opacity 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
658}
659
660/* Global transition speed settings */
661.reveal[data-transition-speed="fast"] .slides section {
662 transition-duration: 400ms;
663}
664.reveal[data-transition-speed="slow"] .slides section {
665 transition-duration: 1200ms;
666}
667
668/* Slide-specific transition speed overrides */
669.reveal .slides section[data-transition-speed="fast"] {
670 transition-duration: 400ms;
671}
672.reveal .slides section[data-transition-speed="slow"] {
673 transition-duration: 1200ms;
674}
675
676.reveal .slides>section.stack {
677 padding-top: 0;
678 padding-bottom: 0;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200679 pointer-events: none;
680 height: 100%;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500681}
682
683.reveal .slides>section.present,
684.reveal .slides>section>section.present {
685 display: block;
686 z-index: 11;
687 opacity: 1;
688}
689
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200690.reveal .slides>section:empty,
691.reveal .slides>section>section:empty,
692.reveal .slides>section[data-background-interactive],
693.reveal .slides>section>section[data-background-interactive] {
694 pointer-events: none;
695}
696
JJ Allaireefa6ad42016-01-30 13:12:05 -0500697.reveal.center,
698.reveal.center .slides,
699.reveal.center .slides section {
700 min-height: 0 !important;
701}
702
703/* Don't allow interaction with invisible slides */
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200704.reveal .slides>section:not(.present),
705.reveal .slides>section>section:not(.present) {
JJ Allaireefa6ad42016-01-30 13:12:05 -0500706 pointer-events: none;
707}
708
709.reveal.overview .slides>section,
710.reveal.overview .slides>section>section {
711 pointer-events: auto;
712}
713
714.reveal .slides>section.past,
715.reveal .slides>section.future,
716.reveal .slides>section>section.past,
717.reveal .slides>section>section.future {
718 opacity: 0;
719}
720
721
722/*********************************************
723 * Mixins for readability of transitions
724 *********************************************/
725
726@mixin transition-global($style) {
727 .reveal .slides section[data-transition=#{$style}],
728 .reveal.#{$style} .slides section:not([data-transition]) {
729 @content;
730 }
731}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200732@mixin transition-stack($style) {
733 .reveal .slides section[data-transition=#{$style}].stack,
734 .reveal.#{$style} .slides section.stack {
735 @content;
736 }
737}
JJ Allaireefa6ad42016-01-30 13:12:05 -0500738@mixin transition-horizontal-past($style) {
739 .reveal .slides>section[data-transition=#{$style}].past,
740 .reveal .slides>section[data-transition~=#{$style}-out].past,
741 .reveal.#{$style} .slides>section:not([data-transition]).past {
742 @content;
743 }
744}
745@mixin transition-horizontal-future($style) {
746 .reveal .slides>section[data-transition=#{$style}].future,
747 .reveal .slides>section[data-transition~=#{$style}-in].future,
748 .reveal.#{$style} .slides>section:not([data-transition]).future {
749 @content;
750 }
751}
752
753@mixin transition-vertical-past($style) {
754 .reveal .slides>section>section[data-transition=#{$style}].past,
755 .reveal .slides>section>section[data-transition~=#{$style}-out].past,
756 .reveal.#{$style} .slides>section>section:not([data-transition]).past {
757 @content;
758 }
759}
760@mixin transition-vertical-future($style) {
761 .reveal .slides>section>section[data-transition=#{$style}].future,
762 .reveal .slides>section>section[data-transition~=#{$style}-in].future,
763 .reveal.#{$style} .slides>section>section:not([data-transition]).future {
764 @content;
765 }
766}
767
768/*********************************************
769 * SLIDE TRANSITION
770 * Aliased 'linear' for backwards compatibility
771 *********************************************/
772
773@each $stylename in slide, linear {
JJ Allaireefa6ad42016-01-30 13:12:05 -0500774 @include transition-horizontal-past(#{$stylename}) {
775 transform: translate(-150%, 0);
776 }
777 @include transition-horizontal-future(#{$stylename}) {
778 transform: translate(150%, 0);
779 }
780 @include transition-vertical-past(#{$stylename}) {
781 transform: translate(0, -150%);
782 }
783 @include transition-vertical-future(#{$stylename}) {
784 transform: translate(0, 150%);
785 }
786}
787
788/*********************************************
789 * CONVEX TRANSITION
790 * Aliased 'default' for backwards compatibility
791 *********************************************/
792
793@each $stylename in default, convex {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200794 @include transition-stack(#{$stylename}) {
795 transform-style: preserve-3d;
796 }
797
JJ Allaireefa6ad42016-01-30 13:12:05 -0500798 @include transition-horizontal-past(#{$stylename}) {
799 transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
800 }
801 @include transition-horizontal-future(#{$stylename}) {
802 transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
803 }
804 @include transition-vertical-past(#{$stylename}) {
805 transform: translate3d(0, -300px, 0) rotateX(70deg) translate3d(0, -300px, 0);
806 }
807 @include transition-vertical-future(#{$stylename}) {
808 transform: translate3d(0, 300px, 0) rotateX(-70deg) translate3d(0, 300px, 0);
809 }
810}
811
812/*********************************************
813 * CONCAVE TRANSITION
814 *********************************************/
815
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200816@include transition-stack(concave) {
817 transform-style: preserve-3d;
818}
819
JJ Allaireefa6ad42016-01-30 13:12:05 -0500820@include transition-horizontal-past(concave) {
821 transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
822}
823@include transition-horizontal-future(concave) {
824 transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
825}
826@include transition-vertical-past(concave) {
827 transform: translate3d(0, -80%, 0) rotateX(-70deg) translate3d(0, -80%, 0);
828}
829@include transition-vertical-future(concave) {
830 transform: translate3d(0, 80%, 0) rotateX(70deg) translate3d(0, 80%, 0);
831}
832
833
834/*********************************************
835 * ZOOM TRANSITION
836 *********************************************/
837
838@include transition-global(zoom) {
839 transition-timing-function: ease;
840}
841@include transition-horizontal-past(zoom) {
842 visibility: hidden;
843 transform: scale(16);
844}
845@include transition-horizontal-future(zoom) {
846 visibility: hidden;
847 transform: scale(0.2);
848}
849@include transition-vertical-past(zoom) {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200850 transform: scale(16);
JJ Allaireefa6ad42016-01-30 13:12:05 -0500851}
852@include transition-vertical-future(zoom) {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200853 transform: scale(0.2);
JJ Allaireefa6ad42016-01-30 13:12:05 -0500854}
855
856
857/*********************************************
858 * CUBE TRANSITION
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200859 *
860 * WARNING:
861 * this is deprecated and will be removed in a
862 * future version.
JJ Allaireefa6ad42016-01-30 13:12:05 -0500863 *********************************************/
864
865.reveal.cube .slides {
866 perspective: 1300px;
867}
868
869.reveal.cube .slides section {
870 padding: 30px;
871 min-height: 700px;
872 backface-visibility: hidden;
873 box-sizing: border-box;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200874 transform-style: preserve-3d;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500875}
876 .reveal.center.cube .slides section {
877 min-height: 0;
878 }
879 .reveal.cube .slides section:not(.stack):before {
880 content: '';
881 position: absolute;
882 display: block;
883 width: 100%;
884 height: 100%;
885 left: 0;
886 top: 0;
887 background: rgba(0,0,0,0.1);
888 border-radius: 4px;
889 transform: translateZ( -20px );
890 }
891 .reveal.cube .slides section:not(.stack):after {
892 content: '';
893 position: absolute;
894 display: block;
895 width: 90%;
896 height: 30px;
897 left: 5%;
898 bottom: 0;
899 background: none;
900 z-index: 1;
901
902 border-radius: 4px;
903 box-shadow: 0px 95px 25px rgba(0,0,0,0.2);
904 transform: translateZ(-90px) rotateX( 65deg );
905 }
906
907.reveal.cube .slides>section.stack {
908 padding: 0;
909 background: none;
910}
911
912.reveal.cube .slides>section.past {
913 transform-origin: 100% 0%;
914 transform: translate3d(-100%, 0, 0) rotateY(-90deg);
915}
916
917.reveal.cube .slides>section.future {
918 transform-origin: 0% 0%;
919 transform: translate3d(100%, 0, 0) rotateY(90deg);
920}
921
922.reveal.cube .slides>section>section.past {
923 transform-origin: 0% 100%;
924 transform: translate3d(0, -100%, 0) rotateX(90deg);
925}
926
927.reveal.cube .slides>section>section.future {
928 transform-origin: 0% 0%;
929 transform: translate3d(0, 100%, 0) rotateX(-90deg);
930}
931
932
933/*********************************************
934 * PAGE TRANSITION
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200935 *
936 * WARNING:
937 * this is deprecated and will be removed in a
938 * future version.
JJ Allaireefa6ad42016-01-30 13:12:05 -0500939 *********************************************/
940
941.reveal.page .slides {
942 perspective-origin: 0% 50%;
943 perspective: 3000px;
944}
945
946.reveal.page .slides section {
947 padding: 30px;
948 min-height: 700px;
949 box-sizing: border-box;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +0200950 transform-style: preserve-3d;
JJ Allaireefa6ad42016-01-30 13:12:05 -0500951}
952 .reveal.page .slides section.past {
953 z-index: 12;
954 }
955 .reveal.page .slides section:not(.stack):before {
956 content: '';
957 position: absolute;
958 display: block;
959 width: 100%;
960 height: 100%;
961 left: 0;
962 top: 0;
963 background: rgba(0,0,0,0.1);
964 transform: translateZ( -20px );
965 }
966 .reveal.page .slides section:not(.stack):after {
967 content: '';
968 position: absolute;
969 display: block;
970 width: 90%;
971 height: 30px;
972 left: 5%;
973 bottom: 0;
974 background: none;
975 z-index: 1;
976
977 border-radius: 4px;
978 box-shadow: 0px 95px 25px rgba(0,0,0,0.2);
979
980 -webkit-transform: translateZ(-90px) rotateX( 65deg );
981 }
982
983.reveal.page .slides>section.stack {
984 padding: 0;
985 background: none;
986}
987
988.reveal.page .slides>section.past {
989 transform-origin: 0% 0%;
990 transform: translate3d(-40%, 0, 0) rotateY(-80deg);
991}
992
993.reveal.page .slides>section.future {
994 transform-origin: 100% 0%;
995 transform: translate3d(0, 0, 0);
996}
997
998.reveal.page .slides>section>section.past {
999 transform-origin: 0% 0%;
1000 transform: translate3d(0, -40%, 0) rotateX(80deg);
1001}
1002
1003.reveal.page .slides>section>section.future {
1004 transform-origin: 0% 100%;
1005 transform: translate3d(0, 0, 0);
1006}
1007
1008
1009/*********************************************
1010 * FADE TRANSITION
1011 *********************************************/
1012
1013.reveal .slides section[data-transition=fade],
1014.reveal.fade .slides section:not([data-transition]),
1015.reveal.fade .slides>section>section:not([data-transition]) {
1016 transform: none;
1017 transition: opacity 0.5s;
1018}
1019
1020
1021.reveal.fade.overview .slides section,
1022.reveal.fade.overview .slides>section>section {
1023 transition: none;
1024}
1025
1026
1027/*********************************************
1028 * NO TRANSITION
1029 *********************************************/
1030
1031@include transition-global(none) {
1032 transform: none;
1033 transition: none;
1034}
1035
1036
1037/*********************************************
1038 * PAUSED MODE
1039 *********************************************/
1040
1041.reveal .pause-overlay {
1042 position: absolute;
1043 top: 0;
1044 left: 0;
1045 width: 100%;
1046 height: 100%;
1047 background: black;
1048 visibility: hidden;
1049 opacity: 0;
1050 z-index: 100;
1051 transition: all 1s ease;
1052}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001053
1054.reveal .pause-overlay .resume-button {
1055 position: absolute;
1056 bottom: 20px;
1057 right: 20px;
1058 color: #ccc;
1059 border-radius: 2px;
1060 padding: 6px 14px;
1061 border: 2px solid #ccc;
1062 font-size: 16px;
1063 background: transparent;
1064 cursor: pointer;
1065
1066 &:hover {
1067 color: #fff;
1068 border-color: #fff;
1069 }
1070}
1071
JJ Allaireefa6ad42016-01-30 13:12:05 -05001072.reveal.paused .pause-overlay {
1073 visibility: visible;
1074 opacity: 1;
1075}
1076
1077
1078/*********************************************
1079 * FALLBACK
1080 *********************************************/
1081
JJ Allaireefa6ad42016-01-30 13:12:05 -05001082.reveal .no-transition,
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001083.reveal .no-transition *,
1084.reveal .slides.disable-slide-transitions section {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001085 transition: none !important;
1086}
1087
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001088.reveal .slides.disable-slide-transitions section {
1089 transform: none !important;
1090}
1091
JJ Allaireefa6ad42016-01-30 13:12:05 -05001092
1093/*********************************************
1094 * PER-SLIDE BACKGROUNDS
1095 *********************************************/
1096
1097.reveal .backgrounds {
1098 position: absolute;
1099 width: 100%;
1100 height: 100%;
1101 top: 0;
1102 left: 0;
1103 perspective: 600px;
1104}
1105 .reveal .slide-background {
1106 display: none;
1107 position: absolute;
1108 width: 100%;
1109 height: 100%;
1110 opacity: 0;
1111 visibility: hidden;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001112 overflow: hidden;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001113
1114 background-color: rgba( 0, 0, 0, 0 );
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001115
1116 transition: all 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
1117 }
1118
1119 .reveal .slide-background-content {
1120 position: absolute;
1121 width: 100%;
1122 height: 100%;
1123
JJ Allaireefa6ad42016-01-30 13:12:05 -05001124 background-position: 50% 50%;
1125 background-repeat: no-repeat;
1126 background-size: cover;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001127 }
1128
1129 .reveal .slide-background.stack {
1130 display: block;
1131 }
1132
1133 .reveal .slide-background.present {
1134 opacity: 1;
1135 visibility: visible;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001136 z-index: 2;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001137 }
1138
1139 .print-pdf .reveal .slide-background {
1140 opacity: 1 !important;
1141 visibility: visible !important;
1142 }
1143
1144/* Video backgrounds */
1145.reveal .slide-background video {
1146 position: absolute;
1147 width: 100%;
1148 height: 100%;
1149 max-width: none;
1150 max-height: none;
1151 top: 0;
1152 left: 0;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001153 object-fit: cover;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001154}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001155 .reveal .slide-background[data-background-size="contain"] video {
1156 object-fit: contain;
1157 }
JJ Allaireefa6ad42016-01-30 13:12:05 -05001158
1159/* Immediate transition style */
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001160.reveal[data-background-transition=none]>.backgrounds .slide-background:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001161.reveal>.backgrounds .slide-background[data-background-transition=none] {
1162 transition: none;
1163}
1164
1165/* Slide */
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001166.reveal[data-background-transition=slide]>.backgrounds .slide-background:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001167.reveal>.backgrounds .slide-background[data-background-transition=slide] {
1168 opacity: 1;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001169}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001170 .reveal[data-background-transition=slide]>.backgrounds .slide-background.past:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001171 .reveal>.backgrounds .slide-background.past[data-background-transition=slide] {
1172 transform: translate(-100%, 0);
1173 }
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001174 .reveal[data-background-transition=slide]>.backgrounds .slide-background.future:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001175 .reveal>.backgrounds .slide-background.future[data-background-transition=slide] {
1176 transform: translate(100%, 0);
1177 }
1178
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001179 .reveal[data-background-transition=slide]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001180 .reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=slide] {
1181 transform: translate(0, -100%);
1182 }
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001183 .reveal[data-background-transition=slide]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001184 .reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=slide] {
1185 transform: translate(0, 100%);
1186 }
1187
1188
1189/* Convex */
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001190.reveal[data-background-transition=convex]>.backgrounds .slide-background.past:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001191.reveal>.backgrounds .slide-background.past[data-background-transition=convex] {
1192 opacity: 0;
1193 transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
1194}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001195.reveal[data-background-transition=convex]>.backgrounds .slide-background.future:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001196.reveal>.backgrounds .slide-background.future[data-background-transition=convex] {
1197 opacity: 0;
1198 transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
1199}
1200
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001201.reveal[data-background-transition=convex]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001202.reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=convex] {
1203 opacity: 0;
1204 transform: translate3d(0, -100%, 0) rotateX(90deg) translate3d(0, -100%, 0);
1205}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001206.reveal[data-background-transition=convex]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001207.reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=convex] {
1208 opacity: 0;
1209 transform: translate3d(0, 100%, 0) rotateX(-90deg) translate3d(0, 100%, 0);
1210}
1211
1212
1213/* Concave */
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001214.reveal[data-background-transition=concave]>.backgrounds .slide-background.past:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001215.reveal>.backgrounds .slide-background.past[data-background-transition=concave] {
1216 opacity: 0;
1217 transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
1218}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001219.reveal[data-background-transition=concave]>.backgrounds .slide-background.future:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001220.reveal>.backgrounds .slide-background.future[data-background-transition=concave] {
1221 opacity: 0;
1222 transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
1223}
1224
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001225.reveal[data-background-transition=concave]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001226.reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=concave] {
1227 opacity: 0;
1228 transform: translate3d(0, -100%, 0) rotateX(-90deg) translate3d(0, -100%, 0);
1229}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001230.reveal[data-background-transition=concave]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001231.reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=concave] {
1232 opacity: 0;
1233 transform: translate3d(0, 100%, 0) rotateX(90deg) translate3d(0, 100%, 0);
1234}
1235
1236/* Zoom */
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001237.reveal[data-background-transition=zoom]>.backgrounds .slide-background:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001238.reveal>.backgrounds .slide-background[data-background-transition=zoom] {
1239 transition-timing-function: ease;
1240}
1241
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001242.reveal[data-background-transition=zoom]>.backgrounds .slide-background.past:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001243.reveal>.backgrounds .slide-background.past[data-background-transition=zoom] {
1244 opacity: 0;
1245 visibility: hidden;
1246 transform: scale(16);
1247}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001248.reveal[data-background-transition=zoom]>.backgrounds .slide-background.future:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001249.reveal>.backgrounds .slide-background.future[data-background-transition=zoom] {
1250 opacity: 0;
1251 visibility: hidden;
1252 transform: scale(0.2);
1253}
1254
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001255.reveal[data-background-transition=zoom]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001256.reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=zoom] {
1257 opacity: 0;
1258 visibility: hidden;
1259 transform: scale(16);
1260}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001261.reveal[data-background-transition=zoom]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]),
JJ Allaireefa6ad42016-01-30 13:12:05 -05001262.reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=zoom] {
1263 opacity: 0;
1264 visibility: hidden;
1265 transform: scale(0.2);
1266}
1267
1268
1269/* Global transition speed settings */
1270.reveal[data-transition-speed="fast"]>.backgrounds .slide-background {
1271 transition-duration: 400ms;
1272}
1273.reveal[data-transition-speed="slow"]>.backgrounds .slide-background {
1274 transition-duration: 1200ms;
1275}
1276
1277
1278/*********************************************
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001279 * AUTO ANIMATE
1280 *********************************************/
1281
1282.reveal [data-auto-animate-target^="unmatched"] {
1283 will-change: opacity;
1284}
1285
1286.reveal section[data-auto-animate]:not(.stack):not([data-auto-animate="running"]) [data-auto-animate-target^="unmatched"] {
1287 opacity: 0;
1288}
1289
1290
1291/*********************************************
JJ Allaireefa6ad42016-01-30 13:12:05 -05001292 * OVERVIEW
1293 *********************************************/
1294
1295.reveal.overview {
1296 perspective-origin: 50% 50%;
1297 perspective: 700px;
1298
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001299 .slides {
1300 // Fixes overview rendering errors in FF48+, not applied to
1301 // other browsers since it degrades performance
1302 -moz-transform-style: preserve-3d;
1303 }
1304
JJ Allaireefa6ad42016-01-30 13:12:05 -05001305 .slides section {
Bruce's Thinkpad72710882016-07-14 01:12:07 +08001306 height: 100%;
1307 top: 0 !important;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001308 opacity: 1 !important;
1309 overflow: hidden;
1310 visibility: visible !important;
1311 cursor: pointer;
1312 box-sizing: border-box;
1313 }
1314 .slides section:hover,
1315 .slides section.present {
1316 outline: 10px solid rgba(150,150,150,0.4);
1317 outline-offset: 10px;
1318 }
1319 .slides section .fragment {
1320 opacity: 1;
1321 transition: none;
1322 }
1323 .slides section:after,
1324 .slides section:before {
1325 display: none !important;
1326 }
1327 .slides>section.stack {
1328 padding: 0;
1329 top: 0 !important;
1330 background: none;
1331 outline: none;
1332 overflow: visible;
1333 }
1334
1335 .backgrounds {
1336 perspective: inherit;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001337
1338 // Fixes overview rendering errors in FF48+, not applied to
1339 // other browsers since it degrades performance
1340 -moz-transform-style: preserve-3d;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001341 }
1342
1343 .backgrounds .slide-background {
1344 opacity: 1;
1345 visibility: visible;
1346
1347 // This can't be applied to the slide itself in Safari
1348 outline: 10px solid rgba(150,150,150,0.1);
1349 outline-offset: 10px;
1350 }
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001351
1352 .backgrounds .slide-background.stack {
1353 overflow: visible;
1354 }
JJ Allaireefa6ad42016-01-30 13:12:05 -05001355}
1356
1357// Disable transitions transitions while we're activating
1358// or deactivating the overview mode.
1359.reveal.overview .slides section,
1360.reveal.overview-deactivating .slides section {
1361 transition: none;
1362}
1363
1364.reveal.overview .backgrounds .slide-background,
1365.reveal.overview-deactivating .backgrounds .slide-background {
1366 transition: none;
1367}
1368
JJ Allaireefa6ad42016-01-30 13:12:05 -05001369
1370/*********************************************
1371 * RTL SUPPORT
1372 *********************************************/
1373
1374.reveal.rtl .slides,
1375.reveal.rtl .slides h1,
1376.reveal.rtl .slides h2,
1377.reveal.rtl .slides h3,
1378.reveal.rtl .slides h4,
1379.reveal.rtl .slides h5,
1380.reveal.rtl .slides h6 {
1381 direction: rtl;
1382 font-family: sans-serif;
1383}
1384
1385.reveal.rtl pre,
1386.reveal.rtl code {
1387 direction: ltr;
1388}
1389
1390.reveal.rtl ol,
1391.reveal.rtl ul {
1392 text-align: right;
1393}
1394
1395.reveal.rtl .progress span {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001396 transform-origin: 100% 0;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001397}
1398
1399/*********************************************
1400 * PARALLAX BACKGROUND
1401 *********************************************/
1402
1403.reveal.has-parallax-background .backgrounds {
1404 transition: all 0.8s ease;
1405}
1406
1407/* Global transition speed settings */
1408.reveal.has-parallax-background[data-transition-speed="fast"] .backgrounds {
1409 transition-duration: 400ms;
1410}
1411.reveal.has-parallax-background[data-transition-speed="slow"] .backgrounds {
1412 transition-duration: 1200ms;
1413}
1414
1415
1416/*********************************************
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001417 * OVERLAY FOR LINK PREVIEWS AND HELP
JJ Allaireefa6ad42016-01-30 13:12:05 -05001418 *********************************************/
1419
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001420$overlayHeaderHeight: 40px;
1421$overlayHeaderPadding: 5px;
1422
1423.reveal > .overlay {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001424 position: absolute;
1425 top: 0;
1426 left: 0;
1427 width: 100%;
1428 height: 100%;
1429 z-index: 1000;
1430 background: rgba( 0, 0, 0, 0.9 );
JJ Allaireefa6ad42016-01-30 13:12:05 -05001431 transition: all 0.3s ease;
1432}
JJ Allaireefa6ad42016-01-30 13:12:05 -05001433
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001434 .reveal > .overlay .spinner {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001435 position: absolute;
1436 display: block;
1437 top: 50%;
1438 left: 50%;
1439 width: 32px;
1440 height: 32px;
1441 margin: -16px 0 0 -16px;
1442 z-index: 10;
1443 background-image: url(data:image/gif;base64,R0lGODlhIAAgAPMAAJmZmf%2F%2F%2F6%2Bvr8nJybW1tcDAwOjo6Nvb26ioqKOjo7Ozs%2FLy8vz8%2FAAAAAAAAAAAACH%2FC05FVFNDQVBFMi4wAwEAAAAh%2FhpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh%2BQQJCgAAACwAAAAAIAAgAAAE5xDISWlhperN52JLhSSdRgwVo1ICQZRUsiwHpTJT4iowNS8vyW2icCF6k8HMMBkCEDskxTBDAZwuAkkqIfxIQyhBQBFvAQSDITM5VDW6XNE4KagNh6Bgwe60smQUB3d4Rz1ZBApnFASDd0hihh12BkE9kjAJVlycXIg7CQIFA6SlnJ87paqbSKiKoqusnbMdmDC2tXQlkUhziYtyWTxIfy6BE8WJt5YJvpJivxNaGmLHT0VnOgSYf0dZXS7APdpB309RnHOG5gDqXGLDaC457D1zZ%2FV%2FnmOM82XiHRLYKhKP1oZmADdEAAAh%2BQQJCgAAACwAAAAAIAAgAAAE6hDISWlZpOrNp1lGNRSdRpDUolIGw5RUYhhHukqFu8DsrEyqnWThGvAmhVlteBvojpTDDBUEIFwMFBRAmBkSgOrBFZogCASwBDEY%2FCZSg7GSE0gSCjQBMVG023xWBhklAnoEdhQEfyNqMIcKjhRsjEdnezB%2BA4k8gTwJhFuiW4dokXiloUepBAp5qaKpp6%2BHo7aWW54wl7obvEe0kRuoplCGepwSx2jJvqHEmGt6whJpGpfJCHmOoNHKaHx61WiSR92E4lbFoq%2BB6QDtuetcaBPnW6%2BO7wDHpIiK9SaVK5GgV543tzjgGcghAgAh%2BQQJCgAAACwAAAAAIAAgAAAE7hDISSkxpOrN5zFHNWRdhSiVoVLHspRUMoyUakyEe8PTPCATW9A14E0UvuAKMNAZKYUZCiBMuBakSQKG8G2FzUWox2AUtAQFcBKlVQoLgQReZhQlCIJesQXI5B0CBnUMOxMCenoCfTCEWBsJColTMANldx15BGs8B5wlCZ9Po6OJkwmRpnqkqnuSrayqfKmqpLajoiW5HJq7FL1Gr2mMMcKUMIiJgIemy7xZtJsTmsM4xHiKv5KMCXqfyUCJEonXPN2rAOIAmsfB3uPoAK%2B%2BG%2Bw48edZPK%2BM6hLJpQg484enXIdQFSS1u6UhksENEQAAIfkECQoAAAAsAAAAACAAIAAABOcQyEmpGKLqzWcZRVUQnZYg1aBSh2GUVEIQ2aQOE%2BG%2BcD4ntpWkZQj1JIiZIogDFFyHI0UxQwFugMSOFIPJftfVAEoZLBbcLEFhlQiqGp1Vd140AUklUN3eCA51C1EWMzMCezCBBmkxVIVHBWd3HHl9JQOIJSdSnJ0TDKChCwUJjoWMPaGqDKannasMo6WnM562R5YluZRwur0wpgqZE7NKUm%2BFNRPIhjBJxKZteWuIBMN4zRMIVIhffcgojwCF117i4nlLnY5ztRLsnOk%2BaV%2BoJY7V7m76PdkS4trKcdg0Zc0tTcKkRAAAIfkECQoAAAAsAAAAACAAIAAABO4QyEkpKqjqzScpRaVkXZWQEximw1BSCUEIlDohrft6cpKCk5xid5MNJTaAIkekKGQkWyKHkvhKsR7ARmitkAYDYRIbUQRQjWBwJRzChi9CRlBcY1UN4g0%2FVNB0AlcvcAYHRyZPdEQFYV8ccwR5HWxEJ02YmRMLnJ1xCYp0Y5idpQuhopmmC2KgojKasUQDk5BNAwwMOh2RtRq5uQuPZKGIJQIGwAwGf6I0JXMpC8C7kXWDBINFMxS4DKMAWVWAGYsAdNqW5uaRxkSKJOZKaU3tPOBZ4DuK2LATgJhkPJMgTwKCdFjyPHEnKxFCDhEAACH5BAkKAAAALAAAAAAgACAAAATzEMhJaVKp6s2nIkolIJ2WkBShpkVRWqqQrhLSEu9MZJKK9y1ZrqYK9WiClmvoUaF8gIQSNeF1Er4MNFn4SRSDARWroAIETg1iVwuHjYB1kYc1mwruwXKC9gmsJXliGxc%2BXiUCby9ydh1sOSdMkpMTBpaXBzsfhoc5l58Gm5yToAaZhaOUqjkDgCWNHAULCwOLaTmzswadEqggQwgHuQsHIoZCHQMMQgQGubVEcxOPFAcMDAYUA85eWARmfSRQCdcMe0zeP1AAygwLlJtPNAAL19DARdPzBOWSm1brJBi45soRAWQAAkrQIykShQ9wVhHCwCQCACH5BAkKAAAALAAAAAAgACAAAATrEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq%2BE71SRQeyqUToLA7VxF0JDyIQh%2FMVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiRMDjI0Fd30%2FiI2UA5GSS5UDj2l6NoqgOgN4gksEBgYFf0FDqKgHnyZ9OX8HrgYHdHpcHQULXAS2qKpENRg7eAMLC7kTBaixUYFkKAzWAAnLC7FLVxLWDBLKCwaKTULgEwbLA4hJtOkSBNqITT3xEgfLpBtzE%2FjiuL04RGEBgwWhShRgQExHBAAh%2BQQJCgAAACwAAAAAIAAgAAAE7xDISWlSqerNpyJKhWRdlSAVoVLCWk6JKlAqAavhO9UkUHsqlE6CwO1cRdCQ8iEIfzFVTzLdRAmZX3I2SfZiCqGk5dTESJeaOAlClzsJsqwiJwiqnFrb2nS9kmIcgEsjQydLiIlHehhpejaIjzh9eomSjZR%2BipslWIRLAgMDOR2DOqKogTB9pCUJBagDBXR6XB0EBkIIsaRsGGMMAxoDBgYHTKJiUYEGDAzHC9EACcUGkIgFzgwZ0QsSBcXHiQvOwgDdEwfFs0sDzt4S6BK4xYjkDOzn0unFeBzOBijIm1Dgmg5YFQwsCMjp1oJ8LyIAACH5BAkKAAAALAAAAAAgACAAAATwEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq%2BE71SRQeyqUToLA7VxF0JDyIQh%2FMVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiUd6GGl6NoiPOH16iZKNlH6KmyWFOggHhEEvAwwMA0N9GBsEC6amhnVcEwavDAazGwIDaH1ipaYLBUTCGgQDA8NdHz0FpqgTBwsLqAbWAAnIA4FWKdMLGdYGEgraigbT0OITBcg5QwPT4xLrROZL6AuQAPUS7bxLpoWidY0JtxLHKhwwMJBTHgPKdEQAACH5BAkKAAAALAAAAAAgACAAAATrEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq%2BE71SRQeyqUToLA7VxF0JDyIQh%2FMVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiUd6GAULDJCRiXo1CpGXDJOUjY%2BYip9DhToJA4RBLwMLCwVDfRgbBAaqqoZ1XBMHswsHtxtFaH1iqaoGNgAIxRpbFAgfPQSqpbgGBqUD1wBXeCYp1AYZ19JJOYgH1KwA4UBvQwXUBxPqVD9L3sbp2BNk2xvvFPJd%2BMFCN6HAAIKgNggY0KtEBAAh%2BQQJCgAAACwAAAAAIAAgAAAE6BDISWlSqerNpyJKhWRdlSAVoVLCWk6JKlAqAavhO9UkUHsqlE6CwO1cRdCQ8iEIfzFVTzLdRAmZX3I2SfYIDMaAFdTESJeaEDAIMxYFqrOUaNW4E4ObYcCXaiBVEgULe0NJaxxtYksjh2NLkZISgDgJhHthkpU4mW6blRiYmZOlh4JWkDqILwUGBnE6TYEbCgevr0N1gH4At7gHiRpFaLNrrq8HNgAJA70AWxQIH1%2BvsYMDAzZQPC9VCNkDWUhGkuE5PxJNwiUK4UfLzOlD4WvzAHaoG9nxPi5d%2BjYUqfAhhykOFwJWiAAAIfkECQoAAAAsAAAAACAAIAAABPAQyElpUqnqzaciSoVkXVUMFaFSwlpOCcMYlErAavhOMnNLNo8KsZsMZItJEIDIFSkLGQoQTNhIsFehRww2CQLKF0tYGKYSg%2BygsZIuNqJksKgbfgIGepNo2cIUB3V1B3IvNiBYNQaDSTtfhhx0CwVPI0UJe0%2Bbm4g5VgcGoqOcnjmjqDSdnhgEoamcsZuXO1aWQy8KAwOAuTYYGwi7w5h%2BKr0SJ8MFihpNbx%2B4Erq7BYBuzsdiH1jCAzoSfl0rVirNbRXlBBlLX%2BBP0XJLAPGzTkAuAOqb0WT5AH7OcdCm5B8TgRwSRKIHQtaLCwg1RAAAOwAAAAAAAAAAAA%3D%3D);
1444
1445 visibility: visible;
1446 opacity: 0.6;
1447 transition: all 0.3s ease;
1448 }
1449
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001450 .reveal > .overlay header {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001451 position: absolute;
1452 left: 0;
1453 top: 0;
1454 width: 100%;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001455 padding: $overlayHeaderPadding;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001456 z-index: 2;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001457 box-sizing: border-box;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001458 }
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001459 .reveal > .overlay header a {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001460 display: inline-block;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001461 width: $overlayHeaderHeight;
1462 height: $overlayHeaderHeight;
1463 line-height: 36px;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001464 padding: 0 10px;
1465 float: right;
1466 opacity: 0.6;
1467
1468 box-sizing: border-box;
1469 }
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001470 .reveal > .overlay header a:hover {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001471 opacity: 1;
1472 }
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001473 .reveal > .overlay header a .icon {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001474 display: inline-block;
1475 width: 20px;
1476 height: 20px;
1477
1478 background-position: 50% 50%;
1479 background-size: 100%;
1480 background-repeat: no-repeat;
1481 }
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001482 .reveal > .overlay header a.close .icon {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001483 background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABkklEQVRYR8WX4VHDMAxG6wnoJrABZQPYBCaBTWAD2g1gE5gg6OOsXuxIlr40d81dfrSJ9V4c2VLK7spHuTJ/5wpM07QXuXc5X0opX2tEJcadjHuV80li/FgxTIEK/5QBCICBD6xEhSMGHgQPgBgLiYVAB1dpSqKDawxTohFw4JSEA3clzgIBPCURwE2JucBR7rhPJJv5OpJwDX+SfDjgx1wACQeJG1aChP9K/IMmdZ8DtESV1WyP3Bt4MwM6sj4NMxMYiqUWHQu4KYA/SYkIjOsm3BXYWMKFDwU2khjCQ4ELJUJ4SmClRArOCmSXGuKma0fYD5CbzHxFpCSGAhfAVSSUGDUk2BWZaff2g6GE15BsBQ9nwmpIGDiyHQddwNTMKkbZaf9fajXQca1EX44puJZUsnY0ObGmITE3GVLCbEhQUjGVt146j6oasWN+49Vph2w1pZ5EansNZqKBm1txbU57iRRcZ86RWMDdWtBJUHBHwoQPi1GV+JCbntmvok7iTX4/Up9mgyTc/FJYDTcndgH/AA5A/CHsyEkVAAAAAElFTkSuQmCC);
1484 }
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001485 .reveal > .overlay header a.external .icon {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001486 background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAcElEQVRYR+2WSQoAIQwEzf8f7XiOMkUQxUPlGkM3hVmiQfQR9GYnH1SsAQlI4DiBqkCMoNb9y2e90IAEJPAcgdznU9+engMaeJ7Azh5Y1U67gAho4DqBqmB1buAf0MB1AlVBek83ZPkmJMGc1wAR+AAqod/B97TRpQAAAABJRU5ErkJggg==);
1487 }
1488
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001489 .reveal > .overlay .viewport {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001490 position: absolute;
Bruce's Thinkpad72710882016-07-14 01:12:07 +08001491 display: flex;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001492 top: $overlayHeaderHeight + $overlayHeaderPadding*2;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001493 right: 0;
1494 bottom: 0;
1495 left: 0;
1496 }
1497
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001498 .reveal > .overlay.overlay-preview .viewport iframe {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001499 width: 100%;
1500 height: 100%;
1501 max-width: 100%;
1502 max-height: 100%;
1503 border: 0;
1504
1505 opacity: 0;
1506 visibility: hidden;
1507 transition: all 0.3s ease;
1508 }
1509
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001510 .reveal > .overlay.overlay-preview.loaded .viewport iframe {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001511 opacity: 1;
1512 visibility: visible;
1513 }
1514
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001515 .reveal > .overlay.overlay-preview.loaded .viewport-inner {
1516 position: absolute;
1517 z-index: -1;
1518 left: 0;
1519 top: 45%;
1520 width: 100%;
1521 text-align: center;
1522 letter-spacing: normal;
1523 }
1524 .reveal > .overlay.overlay-preview .x-frame-error {
1525 opacity: 0;
1526 transition: opacity 0.3s ease 0.3s;
1527 }
1528 .reveal > .overlay.overlay-preview.loaded .x-frame-error {
1529 opacity: 1;
1530 }
1531
1532 .reveal > .overlay.overlay-preview.loaded .spinner {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001533 opacity: 0;
1534 visibility: hidden;
1535 transform: scale(0.2);
1536 }
1537
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001538 .reveal > .overlay.overlay-help .viewport {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001539 overflow: auto;
1540 color: #fff;
1541 }
1542
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001543 .reveal > .overlay.overlay-help .viewport .viewport-inner {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001544 width: 600px;
Bruce's Thinkpad72710882016-07-14 01:12:07 +08001545 margin: auto;
1546 padding: 20px 20px 80px 20px;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001547 text-align: center;
1548 letter-spacing: normal;
1549 }
1550
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001551 .reveal > .overlay.overlay-help .viewport .viewport-inner .title {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001552 font-size: 20px;
1553 }
1554
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001555 .reveal > .overlay.overlay-help .viewport .viewport-inner table {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001556 border: 1px solid #fff;
1557 border-collapse: collapse;
Bruce's Thinkpad72710882016-07-14 01:12:07 +08001558 font-size: 16px;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001559 }
1560
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001561 .reveal > .overlay.overlay-help .viewport .viewport-inner table th,
1562 .reveal > .overlay.overlay-help .viewport .viewport-inner table td {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001563 width: 200px;
Bruce's Thinkpad72710882016-07-14 01:12:07 +08001564 padding: 14px;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001565 border: 1px solid #fff;
1566 vertical-align: middle;
1567 }
1568
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001569 .reveal > .overlay.overlay-help .viewport .viewport-inner table th {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001570 padding-top: 20px;
1571 padding-bottom: 20px;
1572 }
1573
1574
JJ Allaireefa6ad42016-01-30 13:12:05 -05001575/*********************************************
1576 * PLAYBACK COMPONENT
1577 *********************************************/
1578
1579.reveal .playback {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001580 position: absolute;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001581 left: 15px;
1582 bottom: 20px;
1583 z-index: 30;
1584 cursor: pointer;
1585 transition: all 400ms ease;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001586 -webkit-tap-highlight-color: rgba( 0, 0, 0, 0 );
JJ Allaireefa6ad42016-01-30 13:12:05 -05001587}
1588
1589.reveal.overview .playback {
1590 opacity: 0;
1591 visibility: hidden;
1592}
1593
1594
1595/*********************************************
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001596 * CODE HIGHLGIHTING
1597 *********************************************/
1598
1599.reveal .hljs {
1600 min-height: 100%;
1601}
1602
1603.reveal .hljs table {
1604 margin: initial;
1605}
1606
1607.reveal .hljs-ln-code,
1608.reveal .hljs-ln-numbers {
1609 padding: 0;
1610 border: 0;
1611}
1612
1613.reveal .hljs-ln-numbers {
1614 opacity: 0.6;
1615 padding-right: 0.75em;
1616 text-align: right;
1617 vertical-align: top;
1618}
1619
1620.reveal .hljs.has-highlights tr:not(.highlight-line) {
1621 opacity: 0.4;
1622}
1623
1624.reveal .hljs:not(:first-child).fragment {
1625 position: absolute;
1626 top: 0;
1627 left: 0;
1628 width: 100%;
1629 box-sizing: border-box;
1630}
1631
1632.reveal pre[data-auto-animate-target] {
1633 overflow: hidden;
1634}
1635.reveal pre[data-auto-animate-target] code {
1636 height: 100%;
1637}
1638
1639
1640/*********************************************
JJ Allaireefa6ad42016-01-30 13:12:05 -05001641 * ROLLING LINKS
1642 *********************************************/
1643
1644.reveal .roll {
1645 display: inline-block;
1646 line-height: 1.2;
1647 overflow: hidden;
1648
1649 vertical-align: top;
1650 perspective: 400px;
1651 perspective-origin: 50% 50%;
1652}
1653 .reveal .roll:hover {
1654 background: none;
1655 text-shadow: none;
1656 }
1657.reveal .roll span {
1658 display: block;
1659 position: relative;
1660 padding: 0 2px;
1661
1662 pointer-events: none;
1663 transition: all 400ms ease;
1664 transform-origin: 50% 0%;
1665 transform-style: preserve-3d;
1666 backface-visibility: hidden;
1667}
1668 .reveal .roll:hover span {
1669 background: rgba(0,0,0,0.5);
1670 transform: translate3d( 0px, 0px, -45px ) rotateX( 90deg );
1671 }
1672.reveal .roll span:after {
1673 content: attr(data-title);
1674
1675 display: block;
1676 position: absolute;
1677 left: 0;
1678 top: 0;
1679 padding: 0 2px;
1680 backface-visibility: hidden;
1681 transform-origin: 50% 0%;
1682 transform: translate3d( 0px, 110%, 0px ) rotateX( -90deg );
1683}
1684
1685
1686/*********************************************
1687 * SPEAKER NOTES
1688 *********************************************/
1689
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001690$notesWidthPercent: 25%;
1691
JJ Allaireefa6ad42016-01-30 13:12:05 -05001692// Hide on-page notes
1693.reveal aside.notes {
1694 display: none;
1695}
1696
1697// An interface element that can optionally be used to show the
1698// speaker notes to all viewers, on top of the presentation
1699.reveal .speaker-notes {
1700 display: none;
1701 position: absolute;
Christophe Dervieux8afae132021-12-06 15:16:42 +01001702 width: math.div($notesWidthPercent, (1 - math.div($notesWidthPercent,100))) * 1%;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001703 height: 100%;
1704 top: 0;
1705 left: 100%;
1706 padding: 14px 18px 14px 18px;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001707 z-index: 1;
1708 font-size: 18px;
1709 line-height: 1.4;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001710 border: 1px solid rgba( 0, 0, 0, 0.05 );
1711 color: #222;
1712 background-color: #f5f5f5;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001713 overflow: auto;
1714 box-sizing: border-box;
1715 text-align: left;
1716 font-family: Helvetica, sans-serif;
1717 -webkit-overflow-scrolling: touch;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001718
1719 .notes-placeholder {
1720 color: #ccc;
1721 font-style: italic;
1722 }
1723
1724 &:focus {
1725 outline: none;
1726 }
1727
1728 &:before {
1729 content: 'Speaker notes';
1730 display: block;
1731 margin-bottom: 10px;
1732 opacity: 0.5;
1733 }
JJ Allaireefa6ad42016-01-30 13:12:05 -05001734}
1735
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001736
1737.reveal.show-notes {
1738 max-width: 100% - $notesWidthPercent;
1739 overflow: visible;
1740}
1741
1742.reveal.show-notes .speaker-notes {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001743 display: block;
1744}
1745
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001746@media screen and (min-width: 1600px) {
JJ Allaireefa6ad42016-01-30 13:12:05 -05001747 .reveal .speaker-notes {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001748 font-size: 20px;
1749 }
1750}
1751
1752@media screen and (max-width: 1024px) {
1753 .reveal.show-notes {
1754 border-left: 0;
1755 max-width: none;
1756 max-height: 70%;
1757 max-height: 70vh;
1758 overflow: visible;
1759 }
1760
1761 .reveal.show-notes .speaker-notes {
1762 top: 100%;
1763 left: 0;
1764 width: 100%;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001765 height: 30vh;
1766 border: 0;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001767 }
1768}
1769
1770@media screen and (max-width: 600px) {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001771 .reveal.show-notes {
1772 max-height: 60%;
1773 max-height: 60vh;
1774 }
1775
1776 .reveal.show-notes .speaker-notes {
1777 top: 100%;
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001778 height: 40vh;
1779 }
1780
JJ Allaireefa6ad42016-01-30 13:12:05 -05001781 .reveal .speaker-notes {
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001782 font-size: 14px;
JJ Allaireefa6ad42016-01-30 13:12:05 -05001783 }
1784}
1785
1786
1787/*********************************************
1788 * ZOOM PLUGIN
1789 *********************************************/
1790
1791.zoomed .reveal *,
1792.zoomed .reveal *:before,
1793.zoomed .reveal *:after {
1794 backface-visibility: visible !important;
1795}
1796
1797.zoomed .reveal .progress,
1798.zoomed .reveal .controls {
1799 opacity: 0;
1800}
1801
1802.zoomed .reveal .roll span {
1803 background: none;
1804}
1805
1806.zoomed .reveal .roll span:after {
1807 visibility: hidden;
1808}
Christophe Dervieuxe1893ae2021-10-07 17:09:02 +02001809
1810
1811/*********************************************
1812 * PRINT STYLES
1813 *********************************************/
1814
1815@import 'print/pdf.scss';
1816@import 'print/paper.scss';
1817