1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873 |
- @use "sass:math";
-
- /**
- * reveal.js
- * http://revealjs.com
- * MIT licensed
- *
- * Copyright (C) Hakim El Hattab, https://hakim.se
- */
-
- @import 'layout';
-
- /*********************************************
- * GLOBAL STYLES
- *********************************************/
-
- html.reveal-full-page {
- width: 100%;
- height: 100%;
- height: 100vh;
- height: calc( var(--vh, 1vh) * 100 );
- overflow: hidden;
- }
-
- .reveal-viewport {
- height: 100%;
- overflow: hidden;
- position: relative;
- line-height: 1;
- margin: 0;
-
- background-color: #fff;
- color: #000;
- }
-
- // Force the presentation to cover the full viewport when we
- // enter fullscreen mode. Fixes sizing issues in Safari.
- .reveal-viewport:fullscreen {
- top: 0 !important;
- left: 0 !important;
- width: 100% !important;
- height: 100% !important;
- transform: none !important;
- }
-
-
- /*********************************************
- * VIEW FRAGMENTS
- *********************************************/
-
- .reveal .fragment {
- transition: all .2s ease;
-
- &:not(.custom) {
- opacity: 0;
- visibility: hidden;
- will-change: opacity;
- }
-
- &.visible {
- opacity: 1;
- visibility: inherit;
- }
-
- &.disabled {
- transition: none;
- }
- }
-
- .reveal .fragment.grow {
- opacity: 1;
- visibility: inherit;
-
- &.visible {
- transform: scale( 1.3 );
- }
- }
-
- .reveal .fragment.shrink {
- opacity: 1;
- visibility: inherit;
-
- &.visible {
- transform: scale( 0.7 );
- }
- }
-
- .reveal .fragment.zoom-in {
- transform: scale( 0.1 );
-
- &.visible {
- transform: none;
- }
- }
-
- .reveal .fragment.fade-out {
- opacity: 1;
- visibility: inherit;
-
- &.visible {
- opacity: 0;
- visibility: hidden;
- }
- }
-
- .reveal .fragment.semi-fade-out {
- opacity: 1;
- visibility: inherit;
-
- &.visible {
- opacity: 0.5;
- visibility: inherit;
- }
- }
-
- .reveal .fragment.strike {
- opacity: 1;
- visibility: inherit;
-
- &.visible {
- text-decoration: line-through;
- }
- }
-
- .reveal .fragment.fade-up {
- transform: translate(0, 40px);
-
- &.visible {
- transform: translate(0, 0);
- }
- }
-
- .reveal .fragment.fade-down {
- transform: translate(0, -40px);
-
- &.visible {
- transform: translate(0, 0);
- }
- }
-
- .reveal .fragment.fade-right {
- transform: translate(-40px, 0);
-
- &.visible {
- transform: translate(0, 0);
- }
- }
-
- .reveal .fragment.fade-left {
- transform: translate(40px, 0);
-
- &.visible {
- transform: translate(0, 0);
- }
- }
-
- .reveal .fragment.fade-in-then-out,
- .reveal .fragment.current-visible {
- opacity: 0;
- visibility: hidden;
-
- &.current-fragment {
- opacity: 1;
- visibility: inherit;
- }
- }
-
- .reveal .fragment.fade-in-then-semi-out {
- opacity: 0;
- visibility: hidden;
-
- &.visible {
- opacity: 0.5;
- visibility: inherit;
- }
-
- &.current-fragment {
- opacity: 1;
- visibility: inherit;
- }
- }
-
- .reveal .fragment.highlight-red,
- .reveal .fragment.highlight-current-red,
- .reveal .fragment.highlight-green,
- .reveal .fragment.highlight-current-green,
- .reveal .fragment.highlight-blue,
- .reveal .fragment.highlight-current-blue {
- opacity: 1;
- visibility: inherit;
- }
- .reveal .fragment.highlight-red.visible {
- color: #ff2c2d
- }
- .reveal .fragment.highlight-green.visible {
- color: #17ff2e;
- }
- .reveal .fragment.highlight-blue.visible {
- color: #1b91ff;
- }
-
- .reveal .fragment.highlight-current-red.current-fragment {
- color: #ff2c2d
- }
- .reveal .fragment.highlight-current-green.current-fragment {
- color: #17ff2e;
- }
- .reveal .fragment.highlight-current-blue.current-fragment {
- color: #1b91ff;
- }
-
-
- /*********************************************
- * DEFAULT ELEMENT STYLES
- *********************************************/
-
- /* Fixes issue in Chrome where italic fonts did not appear when printing to PDF */
- .reveal:after {
- content: '';
- font-style: italic;
- }
-
- .reveal iframe {
- z-index: 1;
- }
-
- /** Prevents layering issues in certain browser/transition combinations */
- .reveal a {
- position: relative;
- }
-
-
- /*********************************************
- * CONTROLS
- *********************************************/
-
- @keyframes bounce-right {
- 0%, 10%, 25%, 40%, 50% {transform: translateX(0);}
- 20% {transform: translateX(10px);}
- 30% {transform: translateX(-5px);}
- }
-
- @keyframes bounce-left {
- 0%, 10%, 25%, 40%, 50% {transform: translateX(0);}
- 20% {transform: translateX(-10px);}
- 30% {transform: translateX(5px);}
- }
-
- @keyframes bounce-down {
- 0%, 10%, 25%, 40%, 50% {transform: translateY(0);}
- 20% {transform: translateY(10px);}
- 30% {transform: translateY(-5px);}
- }
-
- $controlArrowSize: 3.6em;
- $controlArrowSpacing: 1.4em;
- $controlArrowLength: 2.6em;
- $controlArrowThickness: 0.5em;
- $controlsArrowAngle: 45deg;
- $controlsArrowAngleHover: 40deg;
- $controlsArrowAngleActive: 36deg;
-
- @mixin controlsArrowTransform( $angle ) {
- &:before {
- transform: translateX(($controlArrowSize - $controlArrowLength)*0.5) translateY(($controlArrowSize - $controlArrowThickness)*0.5) rotate( $angle );
- }
-
- &:after {
- transform: translateX(($controlArrowSize - $controlArrowLength)*0.5) translateY(($controlArrowSize - $controlArrowThickness)*0.5) rotate( -$angle );
- }
- }
-
- .reveal .controls {
- $spacing: 12px;
-
- display: none;
- position: absolute;
- top: auto;
- bottom: $spacing;
- right: $spacing;
- left: auto;
- z-index: 11;
- color: #000;
- pointer-events: none;
- font-size: 10px;
-
- button {
- position: absolute;
- padding: 0;
- background-color: transparent;
- border: 0;
- outline: 0;
- cursor: pointer;
- color: currentColor;
- transform: scale(.9999);
- transition: color 0.2s ease,
- opacity 0.2s ease,
- transform 0.2s ease;
- z-index: 2; // above slides
- pointer-events: auto;
- font-size: inherit;
-
- visibility: hidden;
- opacity: 0;
-
- -webkit-appearance: none;
- -webkit-tap-highlight-color: rgba( 0, 0, 0, 0 );
- }
-
- .controls-arrow:before,
- .controls-arrow:after {
- content: '';
- position: absolute;
- top: 0;
- left: 0;
- width: $controlArrowLength;
- height: $controlArrowThickness;
- border-radius: $controlArrowThickness*0.5;
- background-color: currentColor;
-
- transition: all 0.15s ease, background-color 0.8s ease;
- transform-origin: math.div(floor(($controlArrowThickness*0.5)*10), 10) 50%;
- will-change: transform;
- }
-
- .controls-arrow {
- position: relative;
- width: $controlArrowSize;
- height: $controlArrowSize;
-
- @include controlsArrowTransform( $controlsArrowAngle );
-
- &:hover {
- @include controlsArrowTransform( $controlsArrowAngleHover );
- }
-
- &:active {
- @include controlsArrowTransform( $controlsArrowAngleActive );
- }
- }
-
- .navigate-left {
- right: $controlArrowSize + $controlArrowSpacing*2;
- bottom: $controlArrowSpacing + $controlArrowSize*0.5;
- transform: translateX( -10px );
-
- &.highlight {
- animation: bounce-left 2s 50 both ease-out;
- }
- }
-
- .navigate-right {
- right: 0;
- bottom: $controlArrowSpacing + $controlArrowSize*0.5;
- transform: translateX( 10px );
-
- .controls-arrow {
- transform: rotate( 180deg );
- }
-
- &.highlight {
- animation: bounce-right 2s 50 both ease-out;
- }
- }
-
- .navigate-up {
- right: $controlArrowSpacing + $controlArrowSize*0.5;
- bottom: $controlArrowSpacing*2 + $controlArrowSize;
- transform: translateY( -10px );
-
- .controls-arrow {
- transform: rotate( 90deg );
- }
- }
-
- .navigate-down {
- right: $controlArrowSpacing + $controlArrowSize*0.5;
- bottom: -$controlArrowSpacing;
- padding-bottom: $controlArrowSpacing;
- transform: translateY( 10px );
-
- .controls-arrow {
- transform: rotate( -90deg );
- }
-
- &.highlight {
- animation: bounce-down 2s 50 both ease-out;
- }
- }
-
- // Back arrow style: "faded":
- // Deemphasize backwards navigation arrows in favor of drawing
- // attention to forwards navigation
- &[data-controls-back-arrows="faded"] .navigate-up.enabled {
- opacity: 0.3;
-
- &:hover {
- opacity: 1;
- }
- }
-
- // Back arrow style: "hidden":
- // Never show arrows for backwards navigation
- &[data-controls-back-arrows="hidden"] .navigate-up.enabled {
- opacity: 0;
- visibility: hidden;
- }
-
- // Any control button that can be clicked is "enabled"
- .enabled {
- visibility: visible;
- opacity: 0.9;
- cursor: pointer;
- transform: none;
- }
-
- // Any control button that leads to showing or hiding
- // a fragment
- .enabled.fragmented {
- opacity: 0.5;
- }
-
- .enabled:hover,
- .enabled.fragmented:hover {
- opacity: 1;
- }
- }
-
- .reveal:not(.rtl) .controls {
- // Back arrow style: "faded":
- // Deemphasize left arrow
- &[data-controls-back-arrows="faded"] .navigate-left.enabled {
- opacity: 0.3;
-
- &:hover {
- opacity: 1;
- }
- }
-
- // Back arrow style: "hidden":
- // Never show left arrow
- &[data-controls-back-arrows="hidden"] .navigate-left.enabled {
- opacity: 0;
- visibility: hidden;
- }
- }
-
- .reveal.rtl .controls {
- // Back arrow style: "faded":
- // Deemphasize right arrow in RTL mode
- &[data-controls-back-arrows="faded"] .navigate-right.enabled {
- opacity: 0.3;
-
- &:hover {
- opacity: 1;
- }
- }
-
- // Back arrow style: "hidden":
- // Never show right arrow in RTL mode
- &[data-controls-back-arrows="hidden"] .navigate-right.enabled {
- opacity: 0;
- visibility: hidden;
- }
- }
-
- .reveal[data-navigation-mode="linear"].has-horizontal-slides .navigate-up,
- .reveal[data-navigation-mode="linear"].has-horizontal-slides .navigate-down {
- display: none;
- }
-
- // Adjust the layout when there are no vertical slides
- .reveal[data-navigation-mode="linear"].has-horizontal-slides .navigate-left,
- .reveal:not(.has-vertical-slides) .controls .navigate-left {
- bottom: $controlArrowSpacing;
- right: 0.5em + $controlArrowSpacing + $controlArrowSize;
- }
-
- .reveal[data-navigation-mode="linear"].has-horizontal-slides .navigate-right,
- .reveal:not(.has-vertical-slides) .controls .navigate-right {
- bottom: $controlArrowSpacing;
- right: 0.5em;
- }
-
- // Adjust the layout when there are no horizontal slides
- .reveal:not(.has-horizontal-slides) .controls .navigate-up {
- right: $controlArrowSpacing;
- bottom: $controlArrowSpacing + $controlArrowSize;
- }
- .reveal:not(.has-horizontal-slides) .controls .navigate-down {
- right: $controlArrowSpacing;
- bottom: 0.5em;
- }
-
- // Invert arrows based on background color
- .reveal.has-dark-background .controls {
- color: #fff;
- }
- .reveal.has-light-background .controls {
- color: #000;
- }
-
- // Disable active states on touch devices
- .reveal.no-hover .controls .controls-arrow:hover,
- .reveal.no-hover .controls .controls-arrow:active {
- @include controlsArrowTransform( $controlsArrowAngle );
- }
-
- // Edge aligned controls layout
- @media screen and (min-width: 500px) {
-
- $spacing: 0.8em;
-
- .reveal .controls[data-controls-layout="edges"] {
- & {
- top: 0;
- right: 0;
- bottom: 0;
- left: 0;
- }
-
- .navigate-left,
- .navigate-right,
- .navigate-up,
- .navigate-down {
- bottom: auto;
- right: auto;
- }
-
- .navigate-left {
- top: 50%;
- left: $spacing;
- margin-top: -$controlArrowSize*0.5;
- }
-
- .navigate-right {
- top: 50%;
- right: $spacing;
- margin-top: -$controlArrowSize*0.5;
- }
-
- .navigate-up {
- top: $spacing;
- left: 50%;
- margin-left: -$controlArrowSize*0.5;
- }
-
- .navigate-down {
- bottom: $spacing - $controlArrowSpacing + 0.3em;
- left: 50%;
- margin-left: -$controlArrowSize*0.5;
- }
- }
-
- }
-
-
- /*********************************************
- * PROGRESS BAR
- *********************************************/
-
- .reveal .progress {
- position: absolute;
- display: none;
- height: 3px;
- width: 100%;
- bottom: 0;
- left: 0;
- z-index: 10;
-
- background-color: rgba( 0, 0, 0, 0.2 );
- color: #fff;
- }
- .reveal .progress:after {
- content: '';
- display: block;
- position: absolute;
- height: 10px;
- width: 100%;
- top: -10px;
- }
- .reveal .progress span {
- display: block;
- height: 100%;
- width: 100%;
-
- background-color: currentColor;
- transition: transform 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
- transform-origin: 0 0;
- transform: scaleX(0);
- }
-
- /*********************************************
- * SLIDE NUMBER
- *********************************************/
-
- .reveal .slide-number {
- position: absolute;
- display: block;
- right: 8px;
- bottom: 8px;
- z-index: 31;
- font-family: Helvetica, sans-serif;
- font-size: 12px;
- line-height: 1;
- color: #fff;
- background-color: rgba( 0, 0, 0, 0.4 );
- padding: 5px;
- }
-
- .reveal .slide-number a {
- color: currentColor;
- }
-
- .reveal .slide-number-delimiter {
- margin: 0 3px;
- }
-
- /*********************************************
- * SLIDES
- *********************************************/
-
- .reveal {
- position: relative;
- width: 100%;
- height: 100%;
- overflow: hidden;
- touch-action: pinch-zoom;
- }
-
- // Swiping on an embedded deck should not block page scrolling
- .reveal.embedded {
- touch-action: pan-y;
- }
-
- .reveal .slides {
- position: absolute;
- width: 100%;
- height: 100%;
- top: 0;
- right: 0;
- bottom: 0;
- left: 0;
- margin: auto;
- pointer-events: none;
-
- overflow: visible;
- z-index: 1;
- text-align: center;
- perspective: 600px;
- perspective-origin: 50% 40%;
- }
-
- .reveal .slides>section {
- perspective: 600px;
- }
-
- .reveal .slides>section,
- .reveal .slides>section>section {
- display: none;
- position: absolute;
- width: 100%;
- pointer-events: auto;
-
- z-index: 10;
- transform-style: flat;
- transition: transform-origin 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
- transform 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
- visibility 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
- opacity 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
- }
-
- /* Global transition speed settings */
- .reveal[data-transition-speed="fast"] .slides section {
- transition-duration: 400ms;
- }
- .reveal[data-transition-speed="slow"] .slides section {
- transition-duration: 1200ms;
- }
-
- /* Slide-specific transition speed overrides */
- .reveal .slides section[data-transition-speed="fast"] {
- transition-duration: 400ms;
- }
- .reveal .slides section[data-transition-speed="slow"] {
- transition-duration: 1200ms;
- }
-
- .reveal .slides>section.stack {
- padding-top: 0;
- padding-bottom: 0;
- pointer-events: none;
- height: 100%;
- }
-
- .reveal .slides>section.present,
- .reveal .slides>section>section.present {
- display: block;
- z-index: 11;
- opacity: 1;
- }
-
- .reveal .slides>section:empty,
- .reveal .slides>section>section:empty,
- .reveal .slides>section[data-background-interactive],
- .reveal .slides>section>section[data-background-interactive] {
- pointer-events: none;
- }
-
- .reveal.center,
- .reveal.center .slides,
- .reveal.center .slides section {
- min-height: 0 !important;
- }
-
- /* Don't allow interaction with invisible slides */
- .reveal .slides>section:not(.present),
- .reveal .slides>section>section:not(.present) {
- pointer-events: none;
- }
-
- .reveal.overview .slides>section,
- .reveal.overview .slides>section>section {
- pointer-events: auto;
- }
-
- .reveal .slides>section.past,
- .reveal .slides>section.future,
- .reveal .slides>section.past>section,
- .reveal .slides>section.future>section,
- .reveal .slides>section>section.past,
- .reveal .slides>section>section.future {
- opacity: 0;
- }
-
-
- /*********************************************
- * Mixins for readability of transitions
- *********************************************/
-
- @mixin transition-global($style) {
- .reveal .slides section[data-transition=#{$style}],
- .reveal.#{$style} .slides section:not([data-transition]) {
- @content;
- }
- }
- @mixin transition-stack($style) {
- .reveal .slides section[data-transition=#{$style}].stack,
- .reveal.#{$style} .slides section.stack {
- @content;
- }
- }
- @mixin transition-horizontal-past($style) {
- .reveal .slides>section[data-transition=#{$style}].past,
- .reveal .slides>section[data-transition~=#{$style}-out].past,
- .reveal.#{$style} .slides>section:not([data-transition]).past {
- @content;
- }
- }
- @mixin transition-horizontal-future($style) {
- .reveal .slides>section[data-transition=#{$style}].future,
- .reveal .slides>section[data-transition~=#{$style}-in].future,
- .reveal.#{$style} .slides>section:not([data-transition]).future {
- @content;
- }
- }
-
- @mixin transition-vertical-past($style) {
- .reveal .slides>section>section[data-transition=#{$style}].past,
- .reveal .slides>section>section[data-transition~=#{$style}-out].past,
- .reveal.#{$style} .slides>section>section:not([data-transition]).past {
- @content;
- }
- }
- @mixin transition-vertical-future($style) {
- .reveal .slides>section>section[data-transition=#{$style}].future,
- .reveal .slides>section>section[data-transition~=#{$style}-in].future,
- .reveal.#{$style} .slides>section>section:not([data-transition]).future {
- @content;
- }
- }
-
- /*********************************************
- * SLIDE TRANSITION
- * Aliased 'linear' for backwards compatibility
- *********************************************/
-
- @each $stylename in slide, linear {
- @include transition-horizontal-past(#{$stylename}) {
- transform: translate(-150%, 0);
- }
- @include transition-horizontal-future(#{$stylename}) {
- transform: translate(150%, 0);
- }
- @include transition-vertical-past(#{$stylename}) {
- transform: translate(0, -150%);
- }
- @include transition-vertical-future(#{$stylename}) {
- transform: translate(0, 150%);
- }
- }
-
- /*********************************************
- * CONVEX TRANSITION
- * Aliased 'default' for backwards compatibility
- *********************************************/
-
- @each $stylename in default, convex {
- @include transition-stack(#{$stylename}) {
- transform-style: preserve-3d;
- }
-
- @include transition-horizontal-past(#{$stylename}) {
- transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
- }
- @include transition-horizontal-future(#{$stylename}) {
- transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
- }
- @include transition-vertical-past(#{$stylename}) {
- transform: translate3d(0, -300px, 0) rotateX(70deg) translate3d(0, -300px, 0);
- }
- @include transition-vertical-future(#{$stylename}) {
- transform: translate3d(0, 300px, 0) rotateX(-70deg) translate3d(0, 300px, 0);
- }
- }
-
- /*********************************************
- * CONCAVE TRANSITION
- *********************************************/
-
- @include transition-stack(concave) {
- transform-style: preserve-3d;
- }
-
- @include transition-horizontal-past(concave) {
- transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
- }
- @include transition-horizontal-future(concave) {
- transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
- }
- @include transition-vertical-past(concave) {
- transform: translate3d(0, -80%, 0) rotateX(-70deg) translate3d(0, -80%, 0);
- }
- @include transition-vertical-future(concave) {
- transform: translate3d(0, 80%, 0) rotateX(70deg) translate3d(0, 80%, 0);
- }
-
-
- /*********************************************
- * ZOOM TRANSITION
- *********************************************/
-
- @include transition-global(zoom) {
- transition-timing-function: ease;
- }
- @include transition-horizontal-past(zoom) {
- visibility: hidden;
- transform: scale(16);
- }
- @include transition-horizontal-future(zoom) {
- visibility: hidden;
- transform: scale(0.2);
- }
- @include transition-vertical-past(zoom) {
- transform: scale(16);
- }
- @include transition-vertical-future(zoom) {
- transform: scale(0.2);
- }
-
-
- /*********************************************
- * CUBE TRANSITION
- *
- * WARNING:
- * this is deprecated and will be removed in a
- * future version.
- *********************************************/
-
- .reveal.cube .slides {
- perspective: 1300px;
- }
-
- .reveal.cube .slides section {
- padding: 30px;
- min-height: 700px;
- backface-visibility: hidden;
- box-sizing: border-box;
- transform-style: preserve-3d;
- }
- .reveal.center.cube .slides section {
- min-height: 0;
- }
- .reveal.cube .slides section:not(.stack):before {
- content: '';
- position: absolute;
- display: block;
- width: 100%;
- height: 100%;
- left: 0;
- top: 0;
- background: rgba(0,0,0,0.1);
- border-radius: 4px;
- transform: translateZ( -20px );
- }
- .reveal.cube .slides section:not(.stack):after {
- content: '';
- position: absolute;
- display: block;
- width: 90%;
- height: 30px;
- left: 5%;
- bottom: 0;
- background: none;
- z-index: 1;
-
- border-radius: 4px;
- box-shadow: 0px 95px 25px rgba(0,0,0,0.2);
- transform: translateZ(-90px) rotateX( 65deg );
- }
-
- .reveal.cube .slides>section.stack {
- padding: 0;
- background: none;
- }
-
- .reveal.cube .slides>section.past {
- transform-origin: 100% 0%;
- transform: translate3d(-100%, 0, 0) rotateY(-90deg);
- }
-
- .reveal.cube .slides>section.future {
- transform-origin: 0% 0%;
- transform: translate3d(100%, 0, 0) rotateY(90deg);
- }
-
- .reveal.cube .slides>section>section.past {
- transform-origin: 0% 100%;
- transform: translate3d(0, -100%, 0) rotateX(90deg);
- }
-
- .reveal.cube .slides>section>section.future {
- transform-origin: 0% 0%;
- transform: translate3d(0, 100%, 0) rotateX(-90deg);
- }
-
-
- /*********************************************
- * PAGE TRANSITION
- *
- * WARNING:
- * this is deprecated and will be removed in a
- * future version.
- *********************************************/
-
- .reveal.page .slides {
- perspective-origin: 0% 50%;
- perspective: 3000px;
- }
-
- .reveal.page .slides section {
- padding: 30px;
- min-height: 700px;
- box-sizing: border-box;
- transform-style: preserve-3d;
- }
- .reveal.page .slides section.past {
- z-index: 12;
- }
- .reveal.page .slides section:not(.stack):before {
- content: '';
- position: absolute;
- display: block;
- width: 100%;
- height: 100%;
- left: 0;
- top: 0;
- background: rgba(0,0,0,0.1);
- transform: translateZ( -20px );
- }
- .reveal.page .slides section:not(.stack):after {
- content: '';
- position: absolute;
- display: block;
- width: 90%;
- height: 30px;
- left: 5%;
- bottom: 0;
- background: none;
- z-index: 1;
-
- border-radius: 4px;
- box-shadow: 0px 95px 25px rgba(0,0,0,0.2);
-
- -webkit-transform: translateZ(-90px) rotateX( 65deg );
- }
-
- .reveal.page .slides>section.stack {
- padding: 0;
- background: none;
- }
-
- .reveal.page .slides>section.past {
- transform-origin: 0% 0%;
- transform: translate3d(-40%, 0, 0) rotateY(-80deg);
- }
-
- .reveal.page .slides>section.future {
- transform-origin: 100% 0%;
- transform: translate3d(0, 0, 0);
- }
-
- .reveal.page .slides>section>section.past {
- transform-origin: 0% 0%;
- transform: translate3d(0, -40%, 0) rotateX(80deg);
- }
-
- .reveal.page .slides>section>section.future {
- transform-origin: 0% 100%;
- transform: translate3d(0, 0, 0);
- }
-
-
- /*********************************************
- * FADE TRANSITION
- *********************************************/
-
- .reveal .slides section[data-transition=fade],
- .reveal.fade .slides section:not([data-transition]),
- .reveal.fade .slides>section>section:not([data-transition]) {
- transform: none;
- transition: opacity 0.5s;
- }
-
-
- .reveal.fade.overview .slides section,
- .reveal.fade.overview .slides>section>section {
- transition: none;
- }
-
-
- /*********************************************
- * NO TRANSITION
- *********************************************/
-
- @include transition-global(none) {
- transform: none;
- transition: none;
- }
-
-
- /*********************************************
- * PAUSED MODE
- *********************************************/
-
- .reveal .pause-overlay {
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- height: 100%;
- background: black;
- visibility: hidden;
- opacity: 0;
- z-index: 100;
- transition: all 1s ease;
- }
-
- .reveal .pause-overlay .resume-button {
- position: absolute;
- bottom: 20px;
- right: 20px;
- color: #ccc;
- border-radius: 2px;
- padding: 6px 14px;
- border: 2px solid #ccc;
- font-size: 16px;
- background: transparent;
- cursor: pointer;
-
- &:hover {
- color: #fff;
- border-color: #fff;
- }
- }
-
- .reveal.paused .pause-overlay {
- visibility: visible;
- opacity: 1;
- }
-
-
- /*********************************************
- * FALLBACK
- *********************************************/
-
- .reveal .no-transition,
- .reveal .no-transition *,
- .reveal .slides.disable-slide-transitions section {
- transition: none !important;
- }
-
- .reveal .slides.disable-slide-transitions section {
- transform: none !important;
- }
-
-
- /*********************************************
- * PER-SLIDE BACKGROUNDS
- *********************************************/
-
- .reveal .backgrounds {
- position: absolute;
- width: 100%;
- height: 100%;
- top: 0;
- left: 0;
- perspective: 600px;
- }
- .reveal .slide-background {
- display: none;
- position: absolute;
- width: 100%;
- height: 100%;
- opacity: 0;
- visibility: hidden;
- overflow: hidden;
-
- background-color: rgba( 0, 0, 0, 0 );
-
- transition: all 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
- }
-
- .reveal .slide-background-content {
- position: absolute;
- width: 100%;
- height: 100%;
-
- background-position: 50% 50%;
- background-repeat: no-repeat;
- background-size: cover;
- }
-
- .reveal .slide-background.stack {
- display: block;
- }
-
- .reveal .slide-background.present {
- opacity: 1;
- visibility: visible;
- z-index: 2;
- }
-
- .print-pdf .reveal .slide-background {
- opacity: 1 !important;
- visibility: visible !important;
- }
-
- /* Video backgrounds */
- .reveal .slide-background video {
- position: absolute;
- width: 100%;
- height: 100%;
- max-width: none;
- max-height: none;
- top: 0;
- left: 0;
- object-fit: cover;
- }
- .reveal .slide-background[data-background-size="contain"] video {
- object-fit: contain;
- }
-
- /* Immediate transition style */
- .reveal[data-background-transition=none]>.backgrounds .slide-background:not([data-background-transition]),
- .reveal>.backgrounds .slide-background[data-background-transition=none] {
- transition: none;
- }
-
- /* Slide */
- .reveal[data-background-transition=slide]>.backgrounds .slide-background:not([data-background-transition]),
- .reveal>.backgrounds .slide-background[data-background-transition=slide] {
- opacity: 1;
- }
- .reveal[data-background-transition=slide]>.backgrounds .slide-background.past:not([data-background-transition]),
- .reveal>.backgrounds .slide-background.past[data-background-transition=slide] {
- transform: translate(-100%, 0);
- }
- .reveal[data-background-transition=slide]>.backgrounds .slide-background.future:not([data-background-transition]),
- .reveal>.backgrounds .slide-background.future[data-background-transition=slide] {
- transform: translate(100%, 0);
- }
-
- .reveal[data-background-transition=slide]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]),
- .reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=slide] {
- transform: translate(0, -100%);
- }
- .reveal[data-background-transition=slide]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]),
- .reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=slide] {
- transform: translate(0, 100%);
- }
-
-
- /* Convex */
- .reveal[data-background-transition=convex]>.backgrounds .slide-background.past:not([data-background-transition]),
- .reveal>.backgrounds .slide-background.past[data-background-transition=convex] {
- opacity: 0;
- transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
- }
- .reveal[data-background-transition=convex]>.backgrounds .slide-background.future:not([data-background-transition]),
- .reveal>.backgrounds .slide-background.future[data-background-transition=convex] {
- opacity: 0;
- transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
- }
-
- .reveal[data-background-transition=convex]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]),
- .reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=convex] {
- opacity: 0;
- transform: translate3d(0, -100%, 0) rotateX(90deg) translate3d(0, -100%, 0);
- }
- .reveal[data-background-transition=convex]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]),
- .reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=convex] {
- opacity: 0;
- transform: translate3d(0, 100%, 0) rotateX(-90deg) translate3d(0, 100%, 0);
- }
-
-
- /* Concave */
- .reveal[data-background-transition=concave]>.backgrounds .slide-background.past:not([data-background-transition]),
- .reveal>.backgrounds .slide-background.past[data-background-transition=concave] {
- opacity: 0;
- transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
- }
- .reveal[data-background-transition=concave]>.backgrounds .slide-background.future:not([data-background-transition]),
- .reveal>.backgrounds .slide-background.future[data-background-transition=concave] {
- opacity: 0;
- transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
- }
-
- .reveal[data-background-transition=concave]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]),
- .reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=concave] {
- opacity: 0;
- transform: translate3d(0, -100%, 0) rotateX(-90deg) translate3d(0, -100%, 0);
- }
- .reveal[data-background-transition=concave]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]),
- .reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=concave] {
- opacity: 0;
- transform: translate3d(0, 100%, 0) rotateX(90deg) translate3d(0, 100%, 0);
- }
-
- /* Zoom */
- .reveal[data-background-transition=zoom]>.backgrounds .slide-background:not([data-background-transition]),
- .reveal>.backgrounds .slide-background[data-background-transition=zoom] {
- transition-timing-function: ease;
- }
-
- .reveal[data-background-transition=zoom]>.backgrounds .slide-background.past:not([data-background-transition]),
- .reveal>.backgrounds .slide-background.past[data-background-transition=zoom] {
- opacity: 0;
- visibility: hidden;
- transform: scale(16);
- }
- .reveal[data-background-transition=zoom]>.backgrounds .slide-background.future:not([data-background-transition]),
- .reveal>.backgrounds .slide-background.future[data-background-transition=zoom] {
- opacity: 0;
- visibility: hidden;
- transform: scale(0.2);
- }
-
- .reveal[data-background-transition=zoom]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]),
- .reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=zoom] {
- opacity: 0;
- visibility: hidden;
- transform: scale(16);
- }
- .reveal[data-background-transition=zoom]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]),
- .reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=zoom] {
- opacity: 0;
- visibility: hidden;
- transform: scale(0.2);
- }
-
-
- /* Global transition speed settings */
- .reveal[data-transition-speed="fast"]>.backgrounds .slide-background {
- transition-duration: 400ms;
- }
- .reveal[data-transition-speed="slow"]>.backgrounds .slide-background {
- transition-duration: 1200ms;
- }
-
-
- /*********************************************
- * AUTO ANIMATE
- *********************************************/
-
- .reveal [data-auto-animate-target^="unmatched"] {
- will-change: opacity;
- }
-
- .reveal section[data-auto-animate]:not(.stack):not([data-auto-animate="running"]) [data-auto-animate-target^="unmatched"] {
- opacity: 0;
- }
-
-
- /*********************************************
- * OVERVIEW
- *********************************************/
-
- .reveal.overview {
- perspective-origin: 50% 50%;
- perspective: 700px;
-
- .slides {
- // Fixes overview rendering errors in FF48+, not applied to
- // other browsers since it degrades performance
- -moz-transform-style: preserve-3d;
- }
-
- .slides section {
- height: 100%;
- top: 0 !important;
- opacity: 1 !important;
- overflow: hidden;
- visibility: visible !important;
- cursor: pointer;
- box-sizing: border-box;
- }
- .slides section:hover,
- .slides section.present {
- outline: 10px solid rgba(150,150,150,0.4);
- outline-offset: 10px;
- }
- .slides section .fragment {
- opacity: 1;
- transition: none;
- }
- .slides section:after,
- .slides section:before {
- display: none !important;
- }
- .slides>section.stack {
- padding: 0;
- top: 0 !important;
- background: none;
- outline: none;
- overflow: visible;
- }
-
- .backgrounds {
- perspective: inherit;
-
- // Fixes overview rendering errors in FF48+, not applied to
- // other browsers since it degrades performance
- -moz-transform-style: preserve-3d;
- }
-
- .backgrounds .slide-background {
- opacity: 1;
- visibility: visible;
-
- // This can't be applied to the slide itself in Safari
- outline: 10px solid rgba(150,150,150,0.1);
- outline-offset: 10px;
- }
-
- .backgrounds .slide-background.stack {
- overflow: visible;
- }
- }
-
- // Disable transitions transitions while we're activating
- // or deactivating the overview mode.
- .reveal.overview .slides section,
- .reveal.overview-deactivating .slides section {
- transition: none;
- }
-
- .reveal.overview .backgrounds .slide-background,
- .reveal.overview-deactivating .backgrounds .slide-background {
- transition: none;
- }
-
-
- /*********************************************
- * RTL SUPPORT
- *********************************************/
-
- .reveal.rtl .slides,
- .reveal.rtl .slides h1,
- .reveal.rtl .slides h2,
- .reveal.rtl .slides h3,
- .reveal.rtl .slides h4,
- .reveal.rtl .slides h5,
- .reveal.rtl .slides h6 {
- direction: rtl;
- font-family: sans-serif;
- }
-
- .reveal.rtl pre,
- .reveal.rtl code {
- direction: ltr;
- }
-
- .reveal.rtl ol,
- .reveal.rtl ul {
- text-align: right;
- }
-
- .reveal.rtl .progress span {
- transform-origin: 100% 0;
- }
-
- /*********************************************
- * PARALLAX BACKGROUND
- *********************************************/
-
- .reveal.has-parallax-background .backgrounds {
- transition: all 0.8s ease;
- }
-
- /* Global transition speed settings */
- .reveal.has-parallax-background[data-transition-speed="fast"] .backgrounds {
- transition-duration: 400ms;
- }
- .reveal.has-parallax-background[data-transition-speed="slow"] .backgrounds {
- transition-duration: 1200ms;
- }
-
-
- /*********************************************
- * OVERLAY FOR LINK PREVIEWS AND HELP
- *********************************************/
-
- $overlayHeaderHeight: 40px;
- $overlayHeaderPadding: 5px;
-
- .reveal > .overlay {
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- height: 100%;
- z-index: 1000;
- background: rgba( 0, 0, 0, 0.9 );
- transition: all 0.3s ease;
- }
-
- .reveal > .overlay .spinner {
- position: absolute;
- display: block;
- top: 50%;
- left: 50%;
- width: 32px;
- height: 32px;
- margin: -16px 0 0 -16px;
- z-index: 10;
- 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);
-
- visibility: visible;
- opacity: 0.6;
- transition: all 0.3s ease;
- }
-
- .reveal > .overlay header {
- position: absolute;
- left: 0;
- top: 0;
- width: 100%;
- padding: $overlayHeaderPadding;
- z-index: 2;
- box-sizing: border-box;
- }
- .reveal > .overlay header a {
- display: inline-block;
- width: $overlayHeaderHeight;
- height: $overlayHeaderHeight;
- line-height: 36px;
- padding: 0 10px;
- float: right;
- opacity: 0.6;
-
- box-sizing: border-box;
- }
- .reveal > .overlay header a:hover {
- opacity: 1;
- }
- .reveal > .overlay header a .icon {
- display: inline-block;
- width: 20px;
- height: 20px;
-
- background-position: 50% 50%;
- background-size: 100%;
- background-repeat: no-repeat;
- }
- .reveal > .overlay header a.close .icon {
- background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABkklEQVRYR8WX4VHDMAxG6wnoJrABZQPYBCaBTWAD2g1gE5gg6OOsXuxIlr40d81dfrSJ9V4c2VLK7spHuTJ/5wpM07QXuXc5X0opX2tEJcadjHuV80li/FgxTIEK/5QBCICBD6xEhSMGHgQPgBgLiYVAB1dpSqKDawxTohFw4JSEA3clzgIBPCURwE2JucBR7rhPJJv5OpJwDX+SfDjgx1wACQeJG1aChP9K/IMmdZ8DtESV1WyP3Bt4MwM6sj4NMxMYiqUWHQu4KYA/SYkIjOsm3BXYWMKFDwU2khjCQ4ELJUJ4SmClRArOCmSXGuKma0fYD5CbzHxFpCSGAhfAVSSUGDUk2BWZaff2g6GE15BsBQ9nwmpIGDiyHQddwNTMKkbZaf9fajXQca1EX44puJZUsnY0ObGmITE3GVLCbEhQUjGVt146j6oasWN+49Vph2w1pZ5EansNZqKBm1txbU57iRRcZ86RWMDdWtBJUHBHwoQPi1GV+JCbntmvok7iTX4/Up9mgyTc/FJYDTcndgH/AA5A/CHsyEkVAAAAAElFTkSuQmCC);
- }
- .reveal > .overlay header a.external .icon {
- background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAcElEQVRYR+2WSQoAIQwEzf8f7XiOMkUQxUPlGkM3hVmiQfQR9GYnH1SsAQlI4DiBqkCMoNb9y2e90IAEJPAcgdznU9+engMaeJ7Azh5Y1U67gAho4DqBqmB1buAf0MB1AlVBek83ZPkmJMGc1wAR+AAqod/B97TRpQAAAABJRU5ErkJggg==);
- }
-
- .reveal > .overlay .viewport {
- position: absolute;
- display: flex;
- top: $overlayHeaderHeight + $overlayHeaderPadding*2;
- right: 0;
- bottom: 0;
- left: 0;
- }
-
- .reveal > .overlay.overlay-preview .viewport iframe {
- width: 100%;
- height: 100%;
- max-width: 100%;
- max-height: 100%;
- border: 0;
-
- opacity: 0;
- visibility: hidden;
- transition: all 0.3s ease;
- }
-
- .reveal > .overlay.overlay-preview.loaded .viewport iframe {
- opacity: 1;
- visibility: visible;
- }
-
- .reveal > .overlay.overlay-preview.loaded .viewport-inner {
- position: absolute;
- z-index: -1;
- left: 0;
- top: 45%;
- width: 100%;
- text-align: center;
- letter-spacing: normal;
- }
- .reveal > .overlay.overlay-preview .x-frame-error {
- opacity: 0;
- transition: opacity 0.3s ease 0.3s;
- }
- .reveal > .overlay.overlay-preview.loaded .x-frame-error {
- opacity: 1;
- }
-
- .reveal > .overlay.overlay-preview.loaded .spinner {
- opacity: 0;
- visibility: hidden;
- transform: scale(0.2);
- }
-
- .reveal > .overlay.overlay-help .viewport {
- overflow: auto;
- color: #fff;
- }
-
- .reveal > .overlay.overlay-help .viewport .viewport-inner {
- width: 600px;
- margin: auto;
- padding: 20px 20px 80px 20px;
- text-align: center;
- letter-spacing: normal;
- }
-
- .reveal > .overlay.overlay-help .viewport .viewport-inner .title {
- font-size: 20px;
- }
-
- .reveal > .overlay.overlay-help .viewport .viewport-inner table {
- border: 1px solid #fff;
- border-collapse: collapse;
- font-size: 16px;
- }
-
- .reveal > .overlay.overlay-help .viewport .viewport-inner table th,
- .reveal > .overlay.overlay-help .viewport .viewport-inner table td {
- width: 200px;
- padding: 14px;
- border: 1px solid #fff;
- vertical-align: middle;
- }
-
- .reveal > .overlay.overlay-help .viewport .viewport-inner table th {
- padding-top: 20px;
- padding-bottom: 20px;
- }
-
-
- /*********************************************
- * PLAYBACK COMPONENT
- *********************************************/
-
- .reveal .playback {
- position: absolute;
- left: 15px;
- bottom: 20px;
- z-index: 30;
- cursor: pointer;
- transition: all 400ms ease;
- -webkit-tap-highlight-color: rgba( 0, 0, 0, 0 );
- }
-
- .reveal.overview .playback {
- opacity: 0;
- visibility: hidden;
- }
-
-
- /*********************************************
- * CODE HIGHLGIHTING
- *********************************************/
-
- .reveal .hljs {
- min-height: 100%;
- }
-
- .reveal .hljs table {
- margin: initial;
- }
-
- .reveal .hljs-ln-code,
- .reveal .hljs-ln-numbers {
- padding: 0;
- border: 0;
- }
-
- .reveal .hljs-ln-numbers {
- opacity: 0.6;
- padding-right: 0.75em;
- text-align: right;
- vertical-align: top;
- }
-
- .reveal .hljs.has-highlights tr:not(.highlight-line) {
- opacity: 0.4;
- }
-
- .reveal .hljs.has-highlights.fragment {
- transition: all .2s ease;
- }
-
- .reveal .hljs:not(:first-child).fragment {
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- box-sizing: border-box;
- }
-
- .reveal pre[data-auto-animate-target] {
- overflow: hidden;
- }
- .reveal pre[data-auto-animate-target] code {
- height: 100%;
- }
-
-
- /*********************************************
- * ROLLING LINKS
- *********************************************/
-
- .reveal .roll {
- display: inline-block;
- line-height: 1.2;
- overflow: hidden;
-
- vertical-align: top;
- perspective: 400px;
- perspective-origin: 50% 50%;
- }
- .reveal .roll:hover {
- background: none;
- text-shadow: none;
- }
- .reveal .roll span {
- display: block;
- position: relative;
- padding: 0 2px;
-
- pointer-events: none;
- transition: all 400ms ease;
- transform-origin: 50% 0%;
- transform-style: preserve-3d;
- backface-visibility: hidden;
- }
- .reveal .roll:hover span {
- background: rgba(0,0,0,0.5);
- transform: translate3d( 0px, 0px, -45px ) rotateX( 90deg );
- }
- .reveal .roll span:after {
- content: attr(data-title);
-
- display: block;
- position: absolute;
- left: 0;
- top: 0;
- padding: 0 2px;
- backface-visibility: hidden;
- transform-origin: 50% 0%;
- transform: translate3d( 0px, 110%, 0px ) rotateX( -90deg );
- }
-
-
- /*********************************************
- * SPEAKER NOTES
- *********************************************/
-
- $notesWidthPercent: 25%;
-
- // Hide on-page notes
- .reveal aside.notes {
- display: none;
- }
-
- // An interface element that can optionally be used to show the
- // speaker notes to all viewers, on top of the presentation
- .reveal .speaker-notes {
- display: none;
- position: absolute;
- width: math.div($notesWidthPercent, (1 - math.div($notesWidthPercent,100))) * 1%;
- height: 100%;
- top: 0;
- left: 100%;
- padding: 14px 18px 14px 18px;
- z-index: 1;
- font-size: 18px;
- line-height: 1.4;
- border: 1px solid rgba( 0, 0, 0, 0.05 );
- color: #222;
- background-color: #f5f5f5;
- overflow: auto;
- box-sizing: border-box;
- text-align: left;
- font-family: Helvetica, sans-serif;
- -webkit-overflow-scrolling: touch;
-
- .notes-placeholder {
- color: #ccc;
- font-style: italic;
- }
-
- &:focus {
- outline: none;
- }
-
- &:before {
- content: 'Speaker notes';
- display: block;
- margin-bottom: 10px;
- opacity: 0.5;
- }
- }
-
-
- .reveal.show-notes {
- max-width: 100% - $notesWidthPercent;
- overflow: visible;
- }
-
- .reveal.show-notes .speaker-notes {
- display: block;
- }
-
- @media screen and (min-width: 1600px) {
- .reveal .speaker-notes {
- font-size: 20px;
- }
- }
-
- @media screen and (max-width: 1024px) {
- .reveal.show-notes {
- border-left: 0;
- max-width: none;
- max-height: 70%;
- max-height: 70vh;
- overflow: visible;
- }
-
- .reveal.show-notes .speaker-notes {
- top: 100%;
- left: 0;
- width: 100%;
- height: 30vh;
- border: 0;
- }
- }
-
- @media screen and (max-width: 600px) {
- .reveal.show-notes {
- max-height: 60%;
- max-height: 60vh;
- }
-
- .reveal.show-notes .speaker-notes {
- top: 100%;
- height: 40vh;
- }
-
- .reveal .speaker-notes {
- font-size: 14px;
- }
- }
-
-
- /*********************************************
- * JUMP-TO-SLIDE COMPONENT
- *********************************************/
-
- .reveal .jump-to-slide {
- position: absolute;
- top: 15px;
- left: 15px;
- z-index: 30;
- font-size: 32px;
- -webkit-tap-highlight-color: rgba( 0, 0, 0, 0 );
- }
-
- .reveal .jump-to-slide-input {
- background: transparent;
- padding: 8px;
- font-size: inherit;
- color: currentColor;
- border: 0;
- }
- .reveal .jump-to-slide-input::placeholder {
- color: currentColor;
- opacity: 0.5;
- }
-
- .reveal.has-dark-background .jump-to-slide-input {
- color: #fff;
- }
- .reveal.has-light-background .jump-to-slide-input {
- color: #222;
- }
-
- .reveal .jump-to-slide-input:focus {
- outline: none;
- }
-
-
- /*********************************************
- * ZOOM PLUGIN
- *********************************************/
-
- .zoomed .reveal *,
- .zoomed .reveal *:before,
- .zoomed .reveal *:after {
- backface-visibility: visible !important;
- }
-
- .zoomed .reveal .progress,
- .zoomed .reveal .controls {
- opacity: 0;
- }
-
- .zoomed .reveal .roll span {
- background: none;
- }
-
- .zoomed .reveal .roll span:after {
- visibility: hidden;
- }
-
-
- /*********************************************
- * PRINT STYLES
- *********************************************/
-
- @import 'print/pdf.scss';
- @import 'print/paper.scss';
|