/*------------------------------------------------------------------
 [Master Stylesheet]

  Project:	Material Admin
  Version:	1.0
-------------------------------------------------------------------*/


/*-------------------------------------------------------------------
  ===== Table of Contents =====
-------------------------------------------------------------------*/


/* === Material Design framework === */


/*-------------------------------------------------------------------*/


/* === Import template variables === */

@keyframes mdc-ripple-fg-radius-in {
    from {
        animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transform: translate(var(--mdc-ripple-fg-translate-start, 0)) scale(1);
    }
    to {
        transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
    }
}

@keyframes mdc-ripple-fg-opacity-in {
    from {
        animation-timing-function: linear;
        opacity: 0;
    }
    to {
        opacity: var(--mdc-ripple-fg-opacity, 0.16);
    }
}

@keyframes mdc-ripple-fg-opacity-out {
    from {
        animation-timing-function: linear;
        opacity: var(--mdc-ripple-fg-opacity, 0.16);
    }
    to {
        opacity: 0;
    }
}

.mdc-ripple-surface--test-edge-var-bug {
    --mdc-ripple-surface-test-edge-var: 1px solid #000;
    visibility: hidden;
}

.mdc-ripple-surface--test-edge-var-bug::before {
    border: var(--mdc-ripple-surface-test-edge-var);
}

.mdc-button {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 2.25rem;
    text-decoration: none;
    text-transform: uppercase;
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: transparent;
    display: inline-block;
    position: relative;
    box-sizing: border-box;
    min-width: 64px;
    height: 36px;
    padding: 0 16px;
    border: none;
    outline: none;
    text-align: center;
    user-select: none;
    -webkit-appearance: none;
    overflow: hidden;
    vertical-align: middle;
    border-radius: 2px;
}

.mdc-button::before,
.mdc-button::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
    will-change: transform, opacity;
}

.mdc-button::before {
    transition: opacity 15ms linear;
}

.mdc-button.mdc-ripple-upgraded::after {
    top: 0;
    left: 0;
    transform: scale(0);
    transform-origin: center center;
}

.mdc-button.mdc-ripple-upgraded--unbounded::after {
    top: var(--mdc-ripple-top, 0);
    left: var(--mdc-ripple-left, 0);
}

.mdc-button.mdc-ripple-upgraded--foreground-activation::after {
    animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
}

.mdc-button.mdc-ripple-upgraded--foreground-deactivation::after {
    animation: 150ms mdc-ripple-fg-opacity-out;
    transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-button::before,
.mdc-button::after {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
}

.mdc-button.mdc-ripple-upgraded::before {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-button.mdc-ripple-upgraded--unbounded::before {
    top: var(--mdc-ripple-top, calc(50% - 50%));
    left: var(--mdc-ripple-left, calc(50% - 50%));
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-button.mdc-ripple-upgraded::after {
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-button:active {
    outline: none;
}

.mdc-button:hover {
    cursor: pointer;
}

.mdc-button::-moz-focus-inner {
    padding: 0;
    border: 0;
}

.mdc-button:disabled {
    background-color: transparent;
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));
    cursor: default;
    pointer-events: none;
}

.mdc-button--theme-dark .mdc-button:disabled,
.mdc-theme--dark .mdc-button:disabled {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-disabled-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-button:not(:disabled) {
    background-color: transparent;
}

.mdc-button:not(:disabled) {
    /* @alternate */
    color: #00a9f4;
    color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-button::before,
.mdc-button::after {
    /* @alternate */
    background-color: #00a9f4;
}

@supports not (-ms-ime-align: auto) {
    .mdc-button::before,
    .mdc-button::after {
        background-color: var(--mdc-theme-primary, #00a9f4);
    }
}

.mdc-button:hover::before {
    opacity: 0.08;
}

.mdc-button:not(.mdc-ripple-upgraded):focus::before,
.mdc-button.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.24;
}

.mdc-button:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-button:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.32;
}

.mdc-button.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32;
}

.mdc-button--raised:disabled,
.mdc-button--unelevated:disabled {
    background-color: rgba(0, 0, 0, 0.12);
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));
}

.mdc-button--theme-dark .mdc-button--raised:disabled,
.mdc-theme--dark .mdc-button--raised:disabled,
.mdc-button--theme-dark .mdc-button--unelevated:disabled,
.mdc-theme--dark .mdc-button--unelevated:disabled {
    background-color: rgba(255, 255, 255, 0.12);
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));
}

.mdc-button--raised:not(:disabled),
.mdc-button--unelevated:not(:disabled) {
    /* @alternate */
    background-color: #00a9f4;
}

@supports not (-ms-ime-align: auto) {
    .mdc-button--raised:not(:disabled),
    .mdc-button--unelevated:not(:disabled) {
        background-color: var(--mdc-theme-primary, #00a9f4);
    }
}

.mdc-button--raised:not(:disabled),
.mdc-button--unelevated:not(:disabled) {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-primary, rgba(0, 0, 0, 0.87));
}

.mdc-button--raised::before,
.mdc-button--raised::after,
.mdc-button--unelevated::before,
.mdc-button--unelevated::after {
    /* @alternate */
    background-color: rgba(0, 0, 0, 0.87);
}

@supports not (-ms-ime-align: auto) {
    .mdc-button--raised::before,
    .mdc-button--raised::after,
    .mdc-button--unelevated::before,
    .mdc-button--unelevated::after {
        background-color: var(--mdc-theme-text-primary-on-primary, rgba(0, 0, 0, 0.87));
    }
}

.mdc-button--raised:hover::before,
.mdc-button--unelevated:hover::before {
    opacity: 0.04;
}

.mdc-button--raised:not(.mdc-ripple-upgraded):focus::before,
.mdc-button--raised.mdc-ripple-upgraded--background-focused::before,
.mdc-button--unelevated:not(.mdc-ripple-upgraded):focus::before,
.mdc-button--unelevated.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-button--raised:not(.mdc-ripple-upgraded)::after,
.mdc-button--unelevated:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-button--raised:not(.mdc-ripple-upgraded):active::after,
.mdc-button--unelevated:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-button--raised.mdc-ripple-upgraded,
.mdc-button--unelevated.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-button--raised {
    box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
    transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
    will-change: box-shadow;
}

.mdc-button--raised:hover,
.mdc-button--raised:focus {
    box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}

.mdc-button--raised:active {
    box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
}

.mdc-button--raised:disabled {
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}

.mdc-button--stroked {
    border-style: solid;
    padding-right: 14px;
    padding-left: 14px;
    border-width: 2px;
    line-height: 32px;
}

.mdc-button--stroked:disabled {
    /* @alternate */
    border-color: rgba(0, 0, 0, 0.38);
    border-color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));
}

.mdc-button--theme-dark .mdc-button--stroked:disabled,
.mdc-theme--dark .mdc-button--stroked:disabled {
    /* @alternate */
    border-color: rgba(255, 255, 255, 0.5);
    border-color: var(--mdc-theme-text-disabled-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-button--stroked.mdc-button--dense {
    line-height: 27px;
}

.mdc-button--stroked.mdc-button--compact {
    padding-right: 6px;
    padding-left: 6px;
}

.mdc-button--stroked:not(:disabled) {
    /* @alternate */
    border-color: #00a9f4;
    border-color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-button--compact {
    padding: 0 8px;
}

.mdc-button--dense {
    height: 32px;
    font-size: .8125rem;
    line-height: 32px;
}

.mdc-button__icon {
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-right: 8px;
    font-size: 18px;
    line-height: inherit;
    vertical-align: top;
}

/ .mdc-card {
    box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    box-sizing: border-box;
    padding: 0;
    border-radius: 2px;
    overflow: hidden;
}

.mdc-card__primary {
    padding: 16px;
}

.mdc-card__primary .mdc-card__title--large {
    padding-top: 8px;
}

.mdc-card__primary:last-child {
    padding-bottom: 24px;
}

.mdc-card__supporting-text {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.25rem;
    text-decoration: inherit;
    text-transform: inherit;
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    box-sizing: border-box;
    padding: 8px 16px;
}

.mdc-card--theme-dark .mdc-card__supporting-text,
.mdc-theme--dark .mdc-card__supporting-text {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-card__primary+.mdc-card__supporting-text {
    margin-top: -8px;
    padding-top: 0;
}

.mdc-card__supporting-text:last-child {
    padding-bottom: 24px;
}

.mdc-card__actions {
    display: flex;
    box-sizing: border-box;
    padding: 8px;
}

.mdc-card--theme-dark .mdc-card__actions,
.mdc-theme--dark .mdc-card__actions {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-card__actions .mdc-card__action {
    margin: 0 8px 0 0;
}

[dir="rtl"] .mdc-card__actions .mdc-card__action,
.mdc-card__actions .mdc-card__action[dir="rtl"] {
    margin: 0 0 0 8px;
}

.mdc-card__actions .mdc-card__action:last-child {
    margin-left: 0;
    margin-right: 0;
}

[dir="rtl"] .mdc-card__actions .mdc-card__action:last-child,
.mdc-card__actions .mdc-card__action:last-child[dir="rtl"] {
    margin-left: 0;
    margin-right: 0;
}

.mdc-card__actions--vertical {
    flex-flow: column;
    align-items: flex-start;
}

.mdc-card__actions--vertical .mdc-card__action {
    margin: 0 0 4px;
}

.mdc-card__actions--vertical .mdc-card__action:last-child {
    margin-bottom: 0;
}

.mdc-card__media {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    box-sizing: border-box;
    padding: 16px;
}

.mdc-card__media-item {
    display: inline-block;
    width: auto;
    height: 80px;
    margin: 16px 0 0;
    padding: 0;
}

.mdc-card__media-item--1dot5x {
    width: auto;
    height: 120px;
}

.mdc-card__media-item--2x {
    width: auto;
    height: 160px;
}

.mdc-card__media-item--3x {
    width: auto;
    height: 240px;
}

.mdc-card__title {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5rem;
    text-decoration: inherit;
    text-transform: inherit;
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    margin: -.063rem 0;
}

.mdc-card--theme-dark .mdc-card__title,
.mdc-theme--dark .mdc-card__title {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-card__title--large {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: normal;
    line-height: 2rem;
    text-decoration: inherit;
    text-transform: inherit;
    margin: 0;
}

.mdc-card__subtitle {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.25rem;
    text-decoration: inherit;
    text-transform: inherit;
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    margin: -.063rem 0;
}

.mdc-card--theme-dark .mdc-card__subtitle,
.mdc-theme--dark .mdc-card__subtitle {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-card__horizontal-block {
    padding-left: 0;
    padding-right: 16px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    box-sizing: border-box;
}

[dir="rtl"] .mdc-card__horizontal-block,
.mdc-card__horizontal-block[dir="rtl"] {
    padding-left: 16px;
    padding-right: 0;
}

.mdc-card__horizontal-block .mdc-card__actions--vertical {
    margin: 16px;
}

.mdc-card__horizontal-block .mdc-card__media-item {
    margin-left: 16px;
    margin-right: 0;
}

[dir="rtl"] .mdc-card__horizontal-block .mdc-card__media-item,
.mdc-card__horizontal-block .mdc-card__media-item[dir="rtl"] {
    margin-left: 0;
    margin-right: 16px;
}

.mdc-card__horizontal-block .mdc-card__media-item--3x {
    margin-bottom: 16px;
}


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */

@keyframes mdc-checkbox-unchecked-checked-checkmark-path {
    0%,
    50% {
        stroke-dashoffset: 29.78334;
    }
    50% {
        animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
    }
    100% {
        stroke-dashoffset: 0;
    }
}

@keyframes mdc-checkbox-unchecked-indeterminate-mixedmark {
    0%,
    68.2% {
        transform: scaleX(0);
    }
    68.2% {
        animation-timing-function: cubic-bezier(0, 0, 0, 1);
    }
    100% {
        transform: scaleX(1);
    }
}

@keyframes mdc-checkbox-checked-unchecked-checkmark-path {
    from {
        animation-timing-function: cubic-bezier(0.4, 0, 1, 1);
        opacity: 1;
        stroke-dashoffset: 0;
    }
    to {
        opacity: 0;
        stroke-dashoffset: -29.78334;
    }
}

@keyframes mdc-checkbox-checked-indeterminate-checkmark {
    from {
        animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
        transform: rotate(0deg);
        opacity: 1;
    }
    to {
        transform: rotate(45deg);
        opacity: 0;
    }
}

@keyframes mdc-checkbox-indeterminate-checked-checkmark {
    from {
        animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
        transform: rotate(45deg);
        opacity: 0;
    }
    to {
        transform: rotate(360deg);
        opacity: 1;
    }
}

@keyframes mdc-checkbox-checked-indeterminate-mixedmark {
    from {
        animation-timing-function: mdc-animation-deceleration-curve-timing-function;
        transform: rotate(-45deg);
        opacity: 0;
    }
    to {
        transform: rotate(0deg);
        opacity: 1;
    }
}

@keyframes mdc-checkbox-indeterminate-checked-mixedmark {
    from {
        animation-timing-function: cubic-bezier(0.14, 0, 0, 1);
        transform: rotate(0deg);
        opacity: 1;
    }
    to {
        transform: rotate(315deg);
        opacity: 0;
    }
}

@keyframes mdc-checkbox-indeterminate-unchecked-mixedmark {
    0% {
        animation-timing-function: linear;
        transform: scaleX(1);
        opacity: 1;
    }
    32.8%,
    100% {
        transform: scaleX(0);
        opacity: 0;
    }
}

.mdc-checkbox {
    display: inline-block;
    position: relative;
    flex: 0 0 18px;
    box-sizing: content-box;
    width: 18px;
    height: 18px;
    padding: 11px;
    line-height: 0;
    white-space: nowrap;
    cursor: pointer;
    vertical-align: bottom;
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: transparent;
}

.mdc-checkbox .mdc-checkbox__native-control:disabled:not(:checked):not(:indeterminate)~.mdc-checkbox__background {
    border-color: rgba(0, 0, 0, 0.26);
}

.mdc-checkbox .mdc-checkbox__native-control:disabled:checked~.mdc-checkbox__background,
.mdc-checkbox .mdc-checkbox__native-control:disabled:indeterminate~.mdc-checkbox__background {
    border-color: transparent;
    background-color: rgba(0, 0, 0, 0.26);
}

.mdc-checkbox--theme-dark .mdc-checkbox__native-control:disabled:not(:checked):not(:indeterminate)~.mdc-checkbox__background,
.mdc-theme--dark .mdc-checkbox .mdc-checkbox__native-control:disabled:not(:checked):not(:indeterminate)~.mdc-checkbox__background {
    border-color: rgba(255, 255, 255, 0.3);
}

.mdc-checkbox--theme-dark .mdc-checkbox__native-control:disabled:checked~.mdc-checkbox__background,
.mdc-checkbox--theme-dark .mdc-checkbox__native-control:disabled:indeterminate~.mdc-checkbox__background,
.mdc-theme--dark .mdc-checkbox .mdc-checkbox__native-control:disabled:checked~.mdc-checkbox__background,
.mdc-theme--dark .mdc-checkbox .mdc-checkbox__native-control:disabled:indeterminate~.mdc-checkbox__background {
    background-color: rgba(255, 255, 255, 0.3);
}

.mdc-checkbox .mdc-checkbox__checkmark__path {
    stroke: white !important;
}

.mdc-checkbox .mdc-checkbox__mixedmark {
    background-color: white;
}

.mdc-checkbox .mdc-checkbox__background::before {
    /* @alternate */
    background-color: #e52d27;
}

@supports not (-ms-ime-align: auto) {
    .mdc-checkbox .mdc-checkbox__background::before {
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

.mdc-checkbox::before,
.mdc-checkbox::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
    will-change: transform, opacity;
}

.mdc-checkbox::before {
    transition: opacity 15ms linear;
}

.mdc-checkbox.mdc-ripple-upgraded::after {
    top: 0;
    left: 0;
    transform: scale(0);
    transform-origin: center center;
}

.mdc-checkbox.mdc-ripple-upgraded--unbounded::after {
    top: var(--mdc-ripple-top, 0);
    left: var(--mdc-ripple-left, 0);
}

.mdc-checkbox.mdc-ripple-upgraded--foreground-activation::after {
    animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
}

.mdc-checkbox.mdc-ripple-upgraded--foreground-deactivation::after {
    animation: 150ms mdc-ripple-fg-opacity-out;
    transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-checkbox::before,
.mdc-checkbox::after {
    /* @alternate */
    background-color: #e52d27;
}

@supports not (-ms-ime-align: auto) {
    .mdc-checkbox::before,
    .mdc-checkbox::after {
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

.mdc-checkbox:hover::before {
    opacity: 0.04;
}

.mdc-checkbox:not(.mdc-ripple-upgraded):focus::before,
.mdc-checkbox.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-checkbox:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-checkbox:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-checkbox.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-checkbox::before,
.mdc-checkbox::after {
    top: calc(50% - 50%);
    left: calc(50% - 50%);
    width: 100%;
    height: 100%;
}

.mdc-checkbox.mdc-ripple-upgraded::before {
    top: calc(50% - 50%);
    left: calc(50% - 50%);
    width: 100%;
    height: 100%;
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-checkbox.mdc-ripple-upgraded--unbounded::before {
    top: var(--mdc-ripple-top, calc(50% - 25%));
    left: var(--mdc-ripple-left, calc(50% - 25%));
    width: var(--mdc-ripple-fg-size, 50%);
    height: var(--mdc-ripple-fg-size, 50%);
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-checkbox.mdc-ripple-upgraded::after {
    width: var(--mdc-ripple-fg-size, 50%);
    height: var(--mdc-ripple-fg-size, 50%);
}

.mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate)~.mdc-checkbox__background {
    border-color: rgba(0, 0, 0, 0.54);
    background-color: transparent;
}

.mdc-checkbox .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,
.mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background {
    /* @alternate */
    border-color: #e52d27;
    border-color: var(--mdc-theme-secondary, #e52d27);
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

@keyframes mdc-checkbox-fade-in-background-0 {
    0% {
        border-color: rgba(0, 0, 0, 0.54);
        background-color: transparent;
    }
    50% {
        /* @alternate */
        border-color: #e52d27;
        border-color: var(--mdc-theme-secondary, #e52d27);
        /* @alternate */
        background-color: #e52d27;
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

@keyframes mdc-checkbox-fade-out-background-0 {
    0%,
    80% {
        /* @alternate */
        border-color: #e52d27;
        border-color: var(--mdc-theme-secondary, #e52d27);
        /* @alternate */
        background-color: #e52d27;
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
    100% {
        border-color: rgba(0, 0, 0, 0.54);
        background-color: transparent;
    }
}

.mdc-checkbox.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__native-control:enabled~.mdc-checkbox__background,
.mdc-checkbox.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__native-control:enabled~.mdc-checkbox__background {
    animation-name: mdc-checkbox-fade-in-background-0;
}

.mdc-checkbox.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__native-control:enabled~.mdc-checkbox__background,
.mdc-checkbox.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__native-control:enabled~.mdc-checkbox__background {
    animation-name: mdc-checkbox-fade-out-background-0;
}

.mdc-checkbox--theme-dark .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate)~.mdc-checkbox__background,
.mdc-theme--dark .mdc-checkbox .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate)~.mdc-checkbox__background {
    border-color: white;
    background-color: transparent;
}

.mdc-checkbox--theme-dark .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,
.mdc-checkbox--theme-dark .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background,
.mdc-theme--dark .mdc-checkbox .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,
.mdc-theme--dark .mdc-checkbox .mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background {
    /* @alternate */
    border-color: #e52d27;
    border-color: var(--mdc-theme-secondary, #e52d27);
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

@keyframes mdc-checkbox-fade-in-background-1 {
    0% {
        border-color: white;
        background-color: transparent;
    }
    50% {
        /* @alternate */
        border-color: #e52d27;
        border-color: var(--mdc-theme-secondary, #e52d27);
        /* @alternate */
        background-color: #e52d27;
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

@keyframes mdc-checkbox-fade-out-background-1 {
    0%,
    80% {
        /* @alternate */
        border-color: #e52d27;
        border-color: var(--mdc-theme-secondary, #e52d27);
        /* @alternate */
        background-color: #e52d27;
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
    100% {
        border-color: white;
        background-color: transparent;
    }
}

.mdc-checkbox--theme-dark.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__native-control:enabled~.mdc-checkbox__background,
.mdc-checkbox--theme-dark.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__native-control:enabled~.mdc-checkbox__background,
.mdc-theme--dark .mdc-checkbox.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__native-control:enabled~.mdc-checkbox__background,
.mdc-theme--dark .mdc-checkbox.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__native-control:enabled~.mdc-checkbox__background {
    animation-name: mdc-checkbox-fade-in-background-1;
}

.mdc-checkbox--theme-dark.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__native-control:enabled~.mdc-checkbox__background,
.mdc-checkbox--theme-dark.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__native-control:enabled~.mdc-checkbox__background,
.mdc-theme--dark .mdc-checkbox.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__native-control:enabled~.mdc-checkbox__background,
.mdc-theme--dark .mdc-checkbox.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__native-control:enabled~.mdc-checkbox__background {
    animation-name: mdc-checkbox-fade-out-background-1;
}

.mdc-checkbox--disabled {
    cursor: default;
    pointer-events: none;
}

.mdc-checkbox--upgraded .mdc-checkbox__background,
.mdc-checkbox--upgraded .mdc-checkbox__checkmark,
.mdc-checkbox--upgraded .mdc-checkbox__checkmark__path,
.mdc-checkbox--upgraded .mdc-checkbox__mixedmark {
    transition: none !important;
}

.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__background,
.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__background,
.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__background,
.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__background {
    animation-duration: 180ms;
    animation-timing-function: linear;
}

.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__checkmark__path {
    animation: 180ms linear 0s mdc-checkbox-unchecked-checked-checkmark-path;
    transition: none;
}

.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__mixedmark {
    animation: 90ms linear 0s mdc-checkbox-unchecked-indeterminate-mixedmark;
    transition: none;
}

.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__checkmark__path {
    animation: 90ms linear 0s mdc-checkbox-checked-unchecked-checkmark-path;
    transition: none;
}

.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__checkmark {
    animation: 90ms linear 0s mdc-checkbox-checked-indeterminate-checkmark;
    transition: none;
}

.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__mixedmark {
    animation: 90ms linear 0s mdc-checkbox-checked-indeterminate-mixedmark;
    transition: none;
}

.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__checkmark {
    animation: 500ms linear 0s mdc-checkbox-indeterminate-checked-checkmark;
    transition: none;
}

.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__mixedmark {
    animation: 500ms linear 0s mdc-checkbox-indeterminate-checked-mixedmark;
    transition: none;
}

.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__mixedmark {
    animation: 300ms linear 0s mdc-checkbox-indeterminate-unchecked-mixedmark;
    transition: none;
}

.mdc-checkbox__background {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    left: 11px;
    right: initial;
    display: inline-flex;
    top: 11px;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 45%;
    height: 45%;
    transition: background-color 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), border-color 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    border: 2px solid currentColor;
    border-radius: 2px;
    background-color: transparent;
    pointer-events: none;
    will-change: background-color, border-color;
}

[dir="rtl"] .mdc-checkbox .mdc-checkbox__background,
.mdc-checkbox[dir="rtl"] .mdc-checkbox__background {
    left: initial;
    right: 11px;
}

.mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,
.mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background {
    transition: border-color 90ms 0ms cubic-bezier(0, 0, 0.2, 1), background-color 90ms 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-checkbox__background::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: scale(0, 0);
    transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
    will-change: opacity, transform;
}

.mdc-checkbox__native-control:focus~.mdc-checkbox__background::before {
    transform: scale(2.75, 2.75);
    transition: opacity 80ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 80ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: 0.26;
}

.mdc-ripple-upgraded--unbounded .mdc-checkbox__background::before {
    content: none;
}

.mdc-checkbox__native-control {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    opacity: 0;
    cursor: inherit;
}

.mdc-checkbox__native-control:disabled {
    cursor: default;
    pointer-events: none;
}

.mdc-checkbox__checkmark {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    transition: opacity 180ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    opacity: 0;
}

.mdc-checkbox--upgraded .mdc-checkbox__checkmark {
    opacity: 1;
}

.mdc-checkbox__native-control:checked~.mdc-checkbox__background .mdc-checkbox__checkmark {
    transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: 1;
}

.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background .mdc-checkbox__checkmark {
    transform: rotate(45deg);
    transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    opacity: 0;
}

.mdc-checkbox__checkmark__path {
    transition: stroke-dashoffset 180ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    stroke-width: 3.12px;
    stroke-dashoffset: 29.78334;
    stroke-dasharray: 29.78334;
}

.mdc-checkbox__native-control:checked~.mdc-checkbox__background .mdc-checkbox__checkmark__path,
.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background .mdc-checkbox__checkmark__path {
    stroke-dashoffset: 0;
}

.mdc-checkbox__mixedmark {
    width: 100%;
    height: 2px;
    transform: scaleX(0) rotate(0deg);
    transition: opacity 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 90ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    opacity: 0;
}

.mdc-checkbox__native-control:checked~.mdc-checkbox__background .mdc-checkbox__mixedmark {
    transform: scaleX(1) rotate(-45deg);
}

.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background .mdc-checkbox__mixedmark {
    transform: scaleX(1) rotate(0deg);
    opacity: 1;
}


/**
 * The css property used for elevation. In most cases this should not be changed. It is exposed
 * as a variable for abstraction / easy use when needing to reference the property directly, for
 * example in a `will-change` rule.
 */


/**
 * The default duration value for elevation transitions.
 */


/**
 * The default easing value for elevation transitions.
 */


/**
 * Applies the correct CSS rules to an element to give it the elevation specified by $z-value.
 * The $z-value must be between 0 and 24.
 * If $color has an alpha channel, it will be ignored and overridden. To increase the opacity of the shadow, use
 * $opacity-boost.
 */


/**
 * Returns a string that can be used as the value for a `transition` property for elevation.
 * Calling this function directly is useful in situations where a component needs to transition
 * more than one property.
 *
 * ```scss
 * .foo {
 *   transition: mdc-elevation-transition-rule(), opacity 100ms ease;
 *   will-change: $mdc-elevation-property, opacity;
 * }
 * ```
 */


/**
 * Applies the correct css rules needed to have an element transition between elevations.
 * This mixin should be applied to elements whose elevation values will change depending on their
 * context (e.g. when active or disabled).
 */


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */

:root {
    --mdc-dialog-dark-theme-bg-color: #303030;
}

.mdc-dialog {
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    visibility: hidden;
    z-index: 5;
}

.mdc-dialog__backdrop {
    /* @alternate */
    background-color: rgba(0, 0, 0, 0.87);
    background-color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    position: fixed;
    top: 0;
    left: 0;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: -1;
}

.mdc-dialog__surface {
    box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
    /* @alternate */
    background-color: #fff;
    background-color: var(--mdc-theme-background, #fff);
    display: inline-flex;
    flex-direction: column;
    width: calc(100% - 30px);
    min-width: 640px;
    max-width: 865px;
    transform: translateY(150px) scale(0.8);
    border-radius: 2px;
    opacity: 0;
}

.mdc-dialog--theme-dark .mdc-dialog__surface,
.mdc-theme--dark .mdc-dialog__surface {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
    background-color: #303030;
    background-color: var(--mdc-dialog-dark-theme-bg-color, #303030);
}

[dir="rtl"] .mdc-dialog .mdc-dialog__surface,
.mdc-dialog[dir="rtl"] .mdc-dialog__surface {
    text-align: right;
}

.mdc-dialog__header {
    display: flex;
    align-items: center;
    padding: 24px 24px 0;
}

.mdc-dialog__header__empty {
    padding: 0;
}

[dir="rtl"] .mdc-dialog .mdc-dialog__header,
.mdc-dialog[dir="rtl"] .mdc-dialog__header {
    text-align: right;
}

.mdc-dialog__header__title {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1.25rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 2rem;
    text-decoration: inherit;
    text-transform: inherit;
    flex: 1;
    margin: 0;
}

.mdc-dialog__body {
    /* @alternate */
    color: rgba(0, 0, 0, 0.54);
    color: var(--mdc-theme-text-secondary-on-light, rgba(0, 0, 0, 0.54));
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.25rem;
    text-decoration: inherit;
    text-transform: inherit;
    margin-top: 20px;
    padding: 0 24px 24px;
}

.mdc-dialog--theme-dark .mdc-dialog__body,
.mdc-theme--dark .mdc-dialog__body {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7);
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

.mdc-dialog__body--scrollable {
    max-height: 195px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    overflow-x: auto;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}

.mdc-dialog__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    padding: 8px;
}

.mdc-dialog__footer__button {
    margin-left: 0;
    margin-right: 8px;
}

[dir="rtl"] .mdc-dialog__footer__button,
.mdc-dialog__footer__button[dir="rtl"] {
    margin-left: 8px;
    margin-right: 0;
}

.mdc-dialog__footer__button:last-child {
    margin-left: 0;
    margin-right: 0;
}

[dir="rtl"] .mdc-dialog__footer__button:last-child,
.mdc-dialog__footer__button:last-child[dir="rtl"] {
    margin-left: 0;
    margin-right: 0;
}

.mdc-dialog__action {
    /* @alternate */
    color: #e52d27;
    color: var(--mdc-theme-secondary, #e52d27);
}

@media (max-width: 640px) {
    .mdc-dialog {
        min-width: 280px;
    }
    .mdc-dialog__surface {
        min-width: 280px;
    }
    .mdc-dialog__body {
        line-height: 24px;
    }
}

.mdc-dialog--animating {
    visibility: visible;
}

.mdc-dialog--animating .mdc-dialog__backdrop {
    transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-dialog--animating .mdc-dialog--open .mdc-dialog__surface {
    transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-dialog--animating .mdc-dialog__surface {
    transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-dialog--open {
    visibility: visible;
}

.mdc-dialog--open .mdc-dialog__backdrop {
    opacity: .3;
}

.mdc-dialog--open .mdc-dialog__surface {
    transform: translateY(0) scale(1);
    opacity: 1;
}

.mdc-dialog-scroll-lock {
    overflow: hidden;
}


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */

:root {
    --mdc-persistent-drawer-dark-theme-bg-color: #212121;
}

.mdc-persistent-drawer {
    /* Use aspect ratio trick to maintain 16:9 aspect ratio on the header */
    /* TODO(sgomes): Revisit when we have interactive lists. */
    width: 0;
}

.mdc-persistent-drawer__toolbar-spacer {
    display: flex;
    position: relative;
    flex-direction: row;
    flex-shrink: 0;
    align-items: center;
    box-sizing: border-box;
    height: 56px;
    padding: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    /* TODO(sgomes): replace with global breakpoints when we have them */
}

.mdc-persistent-drawer__toolbar-spacer--theme-dark .mdc-persistent-drawer__toolbar-spacer,
.mdc-theme--dark .mdc-persistent-drawer__toolbar-spacer {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

@media (min-width: 600px) {
    .mdc-persistent-drawer__toolbar-spacer {
        height: 64px;
    }
}

.mdc-persistent-drawer__header {
    position: relative;
}

.mdc-persistent-drawer__header::before {
    display: block;
    padding-top: 56.25%;
    content: "";
}

.mdc-persistent-drawer__header-content {
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    align-items: flex-end;
    box-sizing: border-box;
    padding: 16px;
}

.mdc-persistent-drawer .mdc-list-group,
.mdc-persistent-drawer .mdc-list {
    padding-right: 0;
    padding-left: 0;
}

.mdc-persistent-drawer .mdc-list-item {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5rem;
    text-decoration: inherit;
    text-transform: inherit;
    position: relative;
    padding: 0 16px;
    outline: none;
    color: inherit;
    text-decoration: none;
}

.mdc-persistent-drawer .mdc-list-item.mdc-ripple-upgraded {
    left: 0;
}

.mdc-persistent-drawer .mdc-list-item__start-detail {
    color: rgba(0, 0, 0, 0.54);
}

.mdc-persistent-drawer .mdc-list-item__start-detail--theme-dark .mdc-persistent-drawer .mdc-list-item__start-detail,
.mdc-theme--dark .mdc-persistent-drawer .mdc-list-item__start-detail {
    color: rgba(255, 255, 255, 0.54);
}

.mdc-persistent-drawer--selected.mdc-list-item,
.mdc-persistent-drawer--selected.mdc-list-item .mdc-list-item__start-detail {
    /* @alternate */
    color: #00a9f4;
    color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-persistent-drawer .mdc-list-item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    border-radius: inherit;
    background: currentColor;
    opacity: 0;
    content: "";
}

.mdc-persistent-drawer .mdc-list-item:focus::before {
    transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: .12;
}

.mdc-persistent-drawer .mdc-list-item:active::before {
    /*
      Slightly darker value for visual distinction.
      This allows a full base that has distinct modes.
      Progressive enhancement with ripples will provide complete button spec alignment.
    */
    transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: .18;
}

.mdc-persistent-drawer .mdc-list-item:active:focus::before {
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.mdc-persistent-drawer__drawer {
    /* @alternate */
    background: #fff;
    background: var(--mdc-theme-background, #fff);
    border-left: 0;
    border-right: 1px solid #e4e4e4;
    left: 0;
    right: initial;
    height: 100%;
    transform: translateX(-107%);
    transform: translateX(calc(-100% - 20px));
    will-change: transform;
    display: inline-flex;
    flex-direction: column;
    box-sizing: border-box;
    width: 240px;
    overflow: hidden;
    touch-action: none;
}

[dir="rtl"] .mdc-persistent-drawer__drawer,
.mdc-persistent-drawer__drawer[dir="rtl"] {
    border-left: 1px solid #e4e4e4;
    border-right: 0;
}

[dir="rtl"] .mdc-persistent-drawer__drawer,
.mdc-persistent-drawer__drawer[dir="rtl"] {
    left: initial;
    right: 0;
}

.mdc-persistent-drawer__drawer--theme-dark,
.mdc-theme--dark .mdc-persistent-drawer__drawer {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
    border-left: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.12);
    background-color: #212121;
    background-color: var(--mdc-persistent-drawer-dark-theme-bg-color, #212121);
}

[dir="rtl"] .mdc-persistent-drawer__drawer--theme-dark,
.mdc-persistent-drawer__drawer--theme-dark[dir="rtl"],
[dir="rtl"] .mdc-theme--dark .mdc-persistent-drawer__drawer,
.mdc-theme--dark .mdc-persistent-drawer__drawer[dir="rtl"] {
    border-left: 1px solid rgba(255, 255, 255, 0.12);
    border-right: 0;
}

[dir="rtl"] .mdc-persistent-drawer .mdc-persistent-drawer__drawer,
.mdc-persistent-drawer[dir="rtl"] .mdc-persistent-drawer__drawer {
    transform: translateX(107%);
    transform: translateX(calc(100% + 20px));
}

.mdc-persistent-drawer--animating .mdc-persistent-drawer__drawer {
    transition: transform 0.195s 0ms cubic-bezier(0.4, 0, 0.6, 1);
}

.mdc-persistent-drawer--animating.mdc-persistent-drawer--open .mdc-persistent-drawer__drawer {
    transition: transform 0.225s 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-persistent-drawer--open {
    width: 240px;
    pointer-events: auto;
}

.mdc-persistent-drawer--open .mdc-persistent-drawer__drawer {
    transform: none;
}

[dir="rtl"] .mdc-persistent-drawer--open .mdc-persistent-drawer__drawer,
.mdc-persistent-drawer--open[dir="rtl"] .mdc-persistent-drawer__drawer {
    transform: none;
}


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */

:root {
    --mdc-permanent-drawer-dark-theme-bg-color: #212121;
}

.mdc-permanent-drawer {
    /* Use aspect ratio trick to maintain 16:9 aspect ratio on the header */
    /* TODO(sgomes): Revisit when we have interactive lists. */
    /* @alternate */
    background: #fff;
    background: var(--mdc-theme-background, #fff);
    border-left: 0;
    border-right: 1px solid #e4e4e4;
    left: 0;
    right: initial;
    display: inline-flex;
    flex: 0 0 auto;
    flex-direction: column;
    box-sizing: border-box;
    width: 240px;
    overflow: hidden;
}

.mdc-permanent-drawer__toolbar-spacer {
    display: flex;
    position: relative;
    flex-direction: row;
    flex-shrink: 0;
    align-items: center;
    box-sizing: border-box;
    height: 56px;
    padding: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    /* TODO(sgomes): replace with global breakpoints when we have them */
}

.mdc-permanent-drawer__toolbar-spacer--theme-dark .mdc-permanent-drawer__toolbar-spacer,
.mdc-theme--dark .mdc-permanent-drawer__toolbar-spacer {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

@media (min-width: 600px) {
    .mdc-permanent-drawer__toolbar-spacer {
        height: 64px;
    }
}

.mdc-permanent-drawer__header {
    position: relative;
}

.mdc-permanent-drawer__header::before {
    display: block;
    padding-top: 56.25%;
    content: "";
}

.mdc-permanent-drawer__header-content {
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    align-items: flex-end;
    box-sizing: border-box;
    padding: 16px;
}

.mdc-permanent-drawer .mdc-list-group,
.mdc-permanent-drawer .mdc-list {
    padding-right: 0;
    padding-left: 0;
}

.mdc-permanent-drawer .mdc-list-item {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5rem;
    text-decoration: inherit;
    text-transform: inherit;
    position: relative;
    padding: 0 16px;
    outline: none;
    color: inherit;
    text-decoration: none;
}

.mdc-permanent-drawer .mdc-list-item.mdc-ripple-upgraded {
    left: 0;
}

.mdc-permanent-drawer .mdc-list-item__start-detail {
    color: rgba(0, 0, 0, 0.54);
}

.mdc-permanent-drawer .mdc-list-item__start-detail--theme-dark .mdc-permanent-drawer .mdc-list-item__start-detail,
.mdc-theme--dark .mdc-permanent-drawer .mdc-list-item__start-detail {
    color: rgba(255, 255, 255, 0.54);
}

.mdc-permanent-drawer--selected.mdc-list-item,
.mdc-permanent-drawer--selected.mdc-list-item .mdc-list-item__start-detail {
    /* @alternate */
    color: #00a9f4;
    color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-permanent-drawer .mdc-list-item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    border-radius: inherit;
    background: currentColor;
    opacity: 0;
    content: "";
}

.mdc-permanent-drawer .mdc-list-item:focus::before {
    transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: .12;
}

.mdc-permanent-drawer .mdc-list-item:active::before {
    /*
      Slightly darker value for visual distinction.
      This allows a full base that has distinct modes.
      Progressive enhancement with ripples will provide complete button spec alignment.
    */
    transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: .18;
}

.mdc-permanent-drawer .mdc-list-item:active:focus::before {
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

[dir="rtl"] .mdc-permanent-drawer,
.mdc-permanent-drawer[dir="rtl"] {
    border-left: 1px solid #e4e4e4;
    border-right: 0;
}

[dir="rtl"] .mdc-permanent-drawer,
.mdc-permanent-drawer[dir="rtl"] {
    left: initial;
    right: 0;
}

.mdc-permanent-drawer--theme-dark,
.mdc-theme--dark .mdc-permanent-drawer {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
    border-left: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.12);
    background-color: #212121;
    background-color: var(--mdc-permanent-drawer-dark-theme-bg-color, #212121);
}

[dir="rtl"] .mdc-permanent-drawer--theme-dark,
.mdc-permanent-drawer--theme-dark[dir="rtl"],
[dir="rtl"] .mdc-theme--dark .mdc-permanent-drawer,
.mdc-theme--dark .mdc-permanent-drawer[dir="rtl"] {
    border-left: 1px solid rgba(255, 255, 255, 0.12);
    border-right: 0;
}

.mdc-permanent-drawer--floating {
    border-left: 0;
    border-right: none;
    background: none;
}

[dir="rtl"] .mdc-permanent-drawer--floating,
.mdc-permanent-drawer--floating[dir="rtl"] {
    border-left: none;
    border-right: 0;
}

.mdc-permanent-drawer--floating--theme-dark,
.mdc-theme--dark .mdc-permanent-drawer--floating {
    border-left: 0;
    border-right: none;
    background: none;
}

[dir="rtl"] .mdc-permanent-drawer--floating--theme-dark,
.mdc-permanent-drawer--floating--theme-dark[dir="rtl"],
[dir="rtl"] .mdc-theme--dark .mdc-permanent-drawer--floating,
.mdc-theme--dark .mdc-permanent-drawer--floating[dir="rtl"] {
    border-left: none;
    border-right: 0;
}


/**
 * The css property used for elevation. In most cases this should not be changed. It is exposed
 * as a variable for abstraction / easy use when needing to reference the property directly, for
 * example in a `will-change` rule.
 */


/**
 * The default duration value for elevation transitions.
 */


/**
 * The default easing value for elevation transitions.
 */


/**
 * Applies the correct CSS rules to an element to give it the elevation specified by $z-value.
 * The $z-value must be between 0 and 24.
 * If $color has an alpha channel, it will be ignored and overridden. To increase the opacity of the shadow, use
 * $opacity-boost.
 */


/**
 * Returns a string that can be used as the value for a `transition` property for elevation.
 * Calling this function directly is useful in situations where a component needs to transition
 * more than one property.
 *
 * ```scss
 * .foo {
 *   transition: mdc-elevation-transition-rule(), opacity 100ms ease;
 *   will-change: $mdc-elevation-property, opacity;
 * }
 * ```
 */


/**
 * Applies the correct css rules needed to have an element transition between elevations.
 * This mixin should be applied to elements whose elevation values will change depending on their
 * context (e.g. when active or disabled).
 */


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */

.mdc-temporary-drawer {
    /* Use aspect ratio trick to maintain 16:9 aspect ratio on the header */
    /* TODO(sgomes): Revisit when we have interactive lists. */
    position: fixed;
    top: 0;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    pointer-events: none;
    overflow: hidden;
    contain: strict;
    z-index: 5;
    /* Shaded background */
}

.mdc-temporary-drawer__toolbar-spacer {
    display: flex;
    position: relative;
    flex-direction: row;
    flex-shrink: 0;
    align-items: center;
    box-sizing: border-box;
    height: 56px;
    padding: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    /* TODO(sgomes): replace with global breakpoints when we have them */
}

.mdc-temporary-drawer__toolbar-spacer--theme-dark .mdc-temporary-drawer__toolbar-spacer,
.mdc-theme--dark .mdc-temporary-drawer__toolbar-spacer {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

@media (min-width: 600px) {
    .mdc-temporary-drawer__toolbar-spacer {
        height: 64px;
    }
}

.mdc-temporary-drawer__header {
    position: relative;
}

.mdc-temporary-drawer__header::before {
    display: block;
    padding-top: 56.25%;
    content: "";
}

.mdc-temporary-drawer__header-content {
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    align-items: flex-end;
    box-sizing: border-box;
    padding: 16px;
}

.mdc-temporary-drawer .mdc-list-group,
.mdc-temporary-drawer .mdc-list {
    padding-right: 0;
    padding-left: 0;
}

.mdc-temporary-drawer .mdc-list-item {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5rem;
    text-decoration: inherit;
    text-transform: inherit;
    position: relative;
    padding: 0 16px;
    outline: none;
    color: inherit;
    text-decoration: none;
}

.mdc-temporary-drawer .mdc-list-item.mdc-ripple-upgraded {
    left: 0;
}

.mdc-temporary-drawer .mdc-list-item__start-detail {
    color: rgba(0, 0, 0, 0.54);
}

.mdc-temporary-drawer .mdc-list-item__start-detail--theme-dark .mdc-temporary-drawer .mdc-list-item__start-detail,
.mdc-theme--dark .mdc-temporary-drawer .mdc-list-item__start-detail {
    color: rgba(255, 255, 255, 0.54);
}

.mdc-temporary-drawer--selected.mdc-list-item,
.mdc-temporary-drawer--selected.mdc-list-item .mdc-list-item__start-detail {
    /* @alternate */
    color: #00a9f4;
    color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-temporary-drawer .mdc-list-item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    border-radius: inherit;
    background: currentColor;
    opacity: 0;
    content: "";
}

.mdc-temporary-drawer .mdc-list-item:focus::before {
    transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: .12;
}

.mdc-temporary-drawer .mdc-list-item:active::before {
    /*
      Slightly darker value for visual distinction.
      This allows a full base that has distinct modes.
      Progressive enhancement with ripples will provide complete button spec alignment.
    */
    transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: .18;
}

.mdc-temporary-drawer .mdc-list-item:active:focus::before {
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.mdc-temporary-drawer::before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    opacity: 0;
    opacity: var(--mdc-temporary-drawer-opacity, 0);
    content: "";
    will-change: opacity;
}

.mdc-temporary-drawer__drawer {
    /* @alternate */
    background: #fff;
    background: var(--mdc-theme-background, #fff);
    box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
    left: 0;
    right: initial;
    height: 100%;
    transform: translateX(-107%);
    transform: translateX(calc(-100% - 20px));
    will-change: transform;
    display: flex;
    position: absolute;
    flex-direction: column;
    box-sizing: border-box;
    width: calc(100% - 56px);
    max-width: 280px;
    overflow: hidden;
    touch-action: none;
    /* TODO(sgomes): replace with global breakpoints when we have them */
}

[dir="rtl"] .mdc-temporary-drawer__drawer,
.mdc-temporary-drawer__drawer[dir="rtl"] {
    left: initial;
    right: 0;
}

.mdc-temporary-drawer--theme-dark .mdc-temporary-drawer__drawer,
.mdc-theme--dark .mdc-temporary-drawer__drawer {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
    background: #303030;
}

[dir="rtl"] .mdc-temporary-drawer .mdc-temporary-drawer__drawer,
.mdc-temporary-drawer[dir="rtl"] .mdc-temporary-drawer__drawer {
    transform: translateX(107%);
    transform: translateX(calc(100% + 20px));
}

@media (min-width: 600px) {
    .mdc-temporary-drawer__drawer {
        width: calc(100% - 64px);
        max-width: 320px;
    }
}

.mdc-temporary-drawer__content {
    flex-grow: 1;
    box-sizing: border-box;
    margin: 0;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
}

.mdc-temporary-drawer__footer {
    box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
    flex-shrink: 0;
}

.mdc-temporary-drawer--animating::before {
    transition: opacity 0.3s 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-temporary-drawer--animating.mdc-temporary-drawer--open .mdc-temporary-drawer__drawer {
    transition: transform 0.225s 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-temporary-drawer--animating .mdc-temporary-drawer__drawer {
    transition: transform 0.195s 0ms cubic-bezier(0.4, 0, 0.6, 1);
}

.mdc-temporary-drawer--open {
    pointer-events: auto;
}

.mdc-temporary-drawer--open::before {
    opacity: 1;
    opacity: var(--mdc-temporary-drawer-opacity, 1);
}

.mdc-temporary-drawer--open .mdc-temporary-drawer__drawer {
    transform: none;
}

[dir="rtl"] .mdc-temporary-drawer--open .mdc-temporary-drawer__drawer,
.mdc-temporary-drawer--open[dir="rtl"] .mdc-temporary-drawer__drawer {
    transform: none;
}

.mdc-drawer-scroll-lock {
    overflow: hidden;
}


/**
 * The css property used for elevation. In most cases this should not be changed. It is exposed
 * as a variable for abstraction / easy use when needing to reference the property directly, for
 * example in a `will-change` rule.
 */


/**
 * The default duration value for elevation transitions.
 */


/**
 * The default easing value for elevation transitions.
 */


/**
 * Applies the correct CSS rules to an element to give it the elevation specified by $z-value.
 * The $z-value must be between 0 and 24.
 * If $color has an alpha channel, it will be ignored and overridden. To increase the opacity of the shadow, use
 * $opacity-boost.
 */


/**
 * Returns a string that can be used as the value for a `transition` property for elevation.
 * Calling this function directly is useful in situations where a component needs to transition
 * more than one property.
 *
 * ```scss
 * .foo {
 *   transition: mdc-elevation-transition-rule(), opacity 100ms ease;
 *   will-change: $mdc-elevation-property, opacity;
 * }
 * ```
 */


/**
 * Applies the correct css rules needed to have an element transition between elevations.
 * This mixin should be applied to elements whose elevation values will change depending on their
 * context (e.g. when active or disabled).
 */

.mdc-elevation--z0 {
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z1 {
    box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z2 {
    box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z3 {
    box-shadow: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z4,
.mdc-persistent-drawer {
    box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z5 {
    box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 5px 8px 0px rgba(0, 0, 0, 0.14), 0px 1px 14px 0px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z6 {
    box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z7 {
    box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.2), 0px 7px 10px 1px rgba(0, 0, 0, 0.14), 0px 2px 16px 1px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z8 {
    box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z9 {
    box-shadow: 0px 5px 6px -3px rgba(0, 0, 0, 0.2), 0px 9px 12px 1px rgba(0, 0, 0, 0.14), 0px 3px 16px 2px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z10 {
    box-shadow: 0px 6px 6px -3px rgba(0, 0, 0, 0.2), 0px 10px 14px 1px rgba(0, 0, 0, 0.14), 0px 4px 18px 3px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z11 {
    box-shadow: 0px 6px 7px -4px rgba(0, 0, 0, 0.2), 0px 11px 15px 1px rgba(0, 0, 0, 0.14), 0px 4px 20px 3px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z12 {
    box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z13 {
    box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 13px 19px 2px rgba(0, 0, 0, 0.14), 0px 5px 24px 4px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z14 {
    box-shadow: 0px 7px 9px -4px rgba(0, 0, 0, 0.2), 0px 14px 21px 2px rgba(0, 0, 0, 0.14), 0px 5px 26px 4px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z15 {
    box-shadow: 0px 8px 9px -5px rgba(0, 0, 0, 0.2), 0px 15px 22px 2px rgba(0, 0, 0, 0.14), 0px 6px 28px 5px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z16 {
    box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z17 {
    box-shadow: 0px 8px 11px -5px rgba(0, 0, 0, 0.2), 0px 17px 26px 2px rgba(0, 0, 0, 0.14), 0px 6px 32px 5px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z18 {
    box-shadow: 0px 9px 11px -5px rgba(0, 0, 0, 0.2), 0px 18px 28px 2px rgba(0, 0, 0, 0.14), 0px 7px 34px 6px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z19 {
    box-shadow: 0px 9px 12px -6px rgba(0, 0, 0, 0.2), 0px 19px 29px 2px rgba(0, 0, 0, 0.14), 0px 7px 36px 6px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z20 {
    box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 20px 31px 3px rgba(0, 0, 0, 0.14), 0px 8px 38px 7px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z21 {
    box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 21px 33px 3px rgba(0, 0, 0, 0.14), 0px 8px 40px 7px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z22 {
    box-shadow: 0px 10px 14px -6px rgba(0, 0, 0, 0.2), 0px 22px 35px 3px rgba(0, 0, 0, 0.14), 0px 8px 42px 7px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z23 {
    box-shadow: 0px 11px 14px -7px rgba(0, 0, 0, 0.2), 0px 23px 36px 3px rgba(0, 0, 0, 0.14), 0px 9px 44px 8px rgba(0, 0, 0, 0.12);
}

.mdc-elevation--z24 {
    box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
}

.mdc-elevation-transition {
    transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
    will-change: box-shadow;
}


/**
 * The css property used for elevation. In most cases this should not be changed. It is exposed
 * as a variable for abstraction / easy use when needing to reference the property directly, for
 * example in a `will-change` rule.
 */


/**
 * The default duration value for elevation transitions.
 */


/**
 * The default easing value for elevation transitions.
 */


/**
 * Applies the correct CSS rules to an element to give it the elevation specified by $z-value.
 * The $z-value must be between 0 and 24.
 * If $color has an alpha channel, it will be ignored and overridden. To increase the opacity of the shadow, use
 * $opacity-boost.
 */


/**
 * Returns a string that can be used as the value for a `transition` property for elevation.
 * Calling this function directly is useful in situations where a component needs to transition
 * more than one property.
 *
 * ```scss
 * .foo {
 *   transition: mdc-elevation-transition-rule(), opacity 100ms ease;
 *   will-change: $mdc-elevation-property, opacity;
 * }
 * ```
 */


/**
 * Applies the correct css rules needed to have an element transition between elevations.
 * This mixin should be applied to elements whose elevation values will change depending on their
 * context (e.g. when active or disabled).
 */


/**
 * The css property used for elevation. In most cases this should not be changed. It is exposed
 * as a variable for abstraction / easy use when needing to reference the property directly, for
 * example in a `will-change` rule.
 */


/**
 * The default duration value for elevation transitions.
 */


/**
 * The default easing value for elevation transitions.
 */

.mdc-fab {
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: transparent;
    box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
    display: inline-flex;
    position: relative;
    justify-content: center;
    box-sizing: border-box;
    width: 56px;
    height: 56px;
    padding: 0;
    transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1), opacity 15ms linear 30ms, transform 270ms 0ms cubic-bezier(0, 0, 0.2, 1);
    border: none;
    border-radius: 50%;
    fill: currentColor;
    cursor: pointer;
    user-select: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    overflow: hidden;
    /* @alternate */
    background-color: #e52d27;
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-secondary, white);
}

.mdc-fab::before,
.mdc-fab::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
    will-change: transform, opacity;
}

.mdc-fab::before {
    transition: opacity 15ms linear;
}

.mdc-fab.mdc-ripple-upgraded::after {
    top: 0;
    left: 0;
    transform: scale(0);
    transform-origin: center center;
}

.mdc-fab.mdc-ripple-upgraded--unbounded::after {
    top: var(--mdc-ripple-top, 0);
    left: var(--mdc-ripple-left, 0);
}

.mdc-fab.mdc-ripple-upgraded--foreground-activation::after {
    animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
}

.mdc-fab.mdc-ripple-upgraded--foreground-deactivation::after {
    animation: 150ms mdc-ripple-fg-opacity-out;
    transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-fab::before,
.mdc-fab::after {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
}

.mdc-fab.mdc-ripple-upgraded::before {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-fab.mdc-ripple-upgraded--unbounded::before {
    top: var(--mdc-ripple-top, calc(50% - 50%));
    left: var(--mdc-ripple-left, calc(50% - 50%));
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-fab.mdc-ripple-upgraded::after {
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-fab:hover,
.mdc-fab:focus {
    box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
}

.mdc-fab:active {
    box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);
}

.mdc-fab:active,
.mdc-fab:focus {
    outline: none;
}

.mdc-fab:hover {
    cursor: pointer;
}

.mdc-fab::-moz-focus-inner {
    padding: 0;
    border: 0;
}

.mdc-fab>svg {
    width: 100%;
}

@supports not (-ms-ime-align: auto) {
    .mdc-fab {
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

.mdc-fab::before,
.mdc-fab::after {
    /* @alternate */
    background-color: white;
}

@supports not (-ms-ime-align: auto) {
    .mdc-fab::before,
    .mdc-fab::after {
        background-color: var(--mdc-theme-text-primary-on-secondary, white);
    }
}

.mdc-fab:hover::before {
    opacity: 0.08;
}

.mdc-fab:not(.mdc-ripple-upgraded):focus::before,
.mdc-fab.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.24;
}

.mdc-fab:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-fab:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.32;
}

.mdc-fab.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32;
}

.mdc-fab--mini {
    width: 40px;
    height: 40px;
}

.mdc-fab__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    transition: transform 180ms 90ms cubic-bezier(0, 0, 0.2, 1);
    will-change: transform;
}

.mdc-fab--exited {
    transform: scale(0);
    transition: opacity 15ms linear 150ms, transform 180ms 0ms cubic-bezier(0.4, 0, 1, 1);
    opacity: 0;
}

.mdc-fab--exited .mdc-fab__icon {
    transform: scale(0);
    transition: transform 135ms 0ms cubic-bezier(0.4, 0, 1, 1);
}


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/* stylelint-disable selector-max-type */

.mdc-form-field {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.25rem;
    text-decoration: inherit;
    text-transform: inherit;
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
}

.mdc-form-field--theme-dark,
.mdc-theme--dark .mdc-form-field {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-form-field>label {
    order: 0;
    margin-right: auto;
    padding-left: 4px;
}

[dir="rtl"] .mdc-form-field>label,
.mdc-form-field[dir="rtl"]>label {
    margin-left: auto;
    padding-right: 4px;
}

.mdc-form-field--align-end>label {
    order: -1;
    margin-left: auto;
    padding-right: 4px;
}

[dir="rtl"] .mdc-form-field--align-end>label,
.mdc-form-field--align-end[dir="rtl"]>label {
    margin-right: auto;
    padding-left: 4px;
}


/* stylelint-enable selector-max-type */


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */

.mdc-grid-list .mdc-grid-tile__primary {
    padding-bottom: calc(100% / 1);
}

.mdc-grid-list .mdc-grid-tile {
    margin: 2px 0;
    padding: 0 2px;
}

.mdc-grid-list .mdc-grid-tile__secondary {
    left: 2px;
    width: calc(100% - 4px);
}

.mdc-grid-list .mdc-grid-list__tiles {
    margin: 2px auto;
}

.mdc-grid-list__tiles {
    display: flex;
    flex-flow: row wrap;
    margin: 0;
    padding: 0;
}

.mdc-grid-list--tile-gutter-1 .mdc-grid-tile {
    margin: 0.5px 0;
    padding: 0 0.5px;
}

.mdc-grid-list--tile-gutter-1 .mdc-grid-tile__secondary {
    left: 0.5px;
    width: calc(100% - 1px);
}

.mdc-grid-list--tile-gutter-1 .mdc-grid-list__tiles {
    margin: 0.5px auto;
}

.mdc-grid-list--tile-aspect-16x9 .mdc-grid-tile__primary {
    padding-bottom: calc(100% / 1.77778);
}

.mdc-grid-list--tile-aspect-3x2 .mdc-grid-tile__primary {
    padding-bottom: calc(100% / 1.5);
}

.mdc-grid-list--tile-aspect-2x3 .mdc-grid-tile__primary {
    padding-bottom: calc(100% / 0.66667);
}

.mdc-grid-list--tile-aspect-4x3 .mdc-grid-tile__primary {
    padding-bottom: calc(100% / 1.33333);
}

.mdc-grid-list--tile-aspect-3x4 .mdc-grid-tile__primary {
    padding-bottom: calc(100% / 0.75);
}

.mdc-grid-list--twoline-caption .mdc-grid-tile__secondary {
    height: 68px;
}

.mdc-grid-list--header-caption .mdc-grid-tile__secondary {
    top: 0;
    bottom: auto;
}

.mdc-grid-list--with-icon-align-start .mdc-grid-tile__secondary {
    padding-left: 56px;
    padding-right: 8px;
}

[dir="rtl"] .mdc-grid-list .mdc-grid-list--with-icon-align-start .mdc-grid-tile__secondary,
.mdc-grid-list[dir="rtl"] .mdc-grid-list--with-icon-align-start .mdc-grid-tile__secondary {
    padding-left: 8px;
    padding-right: 56px;
}

.mdc-grid-list--with-icon-align-start .mdc-grid-tile__icon {
    left: 16px;
    right: initial;
    font-size: 24px;
}

[dir="rtl"] .mdc-grid-list .mdc-grid-list--with-icon-align-start .mdc-grid-tile__icon,
.mdc-grid-list[dir="rtl"] .mdc-grid-list--with-icon-align-start .mdc-grid-tile__icon {
    left: initial;
    right: 16px;
}

.mdc-grid-list--with-icon-align-end .mdc-grid-tile__secondary {
    padding-left: 16px;
    padding-right: 56px;
}

[dir="rtl"] .mdc-grid-list .mdc-grid-list--with-icon-align-end .mdc-grid-tile__secondary,
.mdc-grid-list[dir="rtl"] .mdc-grid-list--with-icon-align-end .mdc-grid-tile__secondary {
    padding-left: 56px;
    padding-right: 16px;
}

.mdc-grid-list--with-icon-align-end .mdc-grid-tile__icon {
    left: initial;
    right: 16px;
    font-size: 24px;
}

[dir="rtl"] .mdc-grid-list .mdc-grid-list--with-icon-align-end .mdc-grid-tile__icon,
.mdc-grid-list[dir="rtl"] .mdc-grid-list--with-icon-align-end .mdc-grid-tile__icon {
    left: 16px;
    right: initial;
}

.mdc-grid-tile {
    display: block;
    position: relative;
    /* @alternate */
    width: 200px;
    width: var(--mdc-grid-list-tile-width, 200px);
}

.mdc-grid-tile__primary {
    /* @alternate */
    background-color: #fff;
    background-color: var(--mdc-theme-background, #fff);
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));
    position: relative;
    height: 0;
}

.mdc-grid-tile__primary-content {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.mdc-grid-tile__secondary {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-primary, rgba(0, 0, 0, 0.87));
    position: absolute;
    bottom: 0;
    box-sizing: border-box;
    height: 48px;
    padding: 16px;
}

.mdc-grid-tile__title {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1rem;
}

.mdc-grid-tile__support-text {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.25rem;
    text-decoration: inherit;
    text-transform: inherit;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    margin: 0;
    margin-top: 4px;
    padding: 0;
}

.mdc-grid-tile__icon {
    position: absolute;
    top: calc(50% - 24px / 2);
    font-size: 0;
}


/** postcss-bem-linter: define icon-toggle */

.mdc-icon-toggle {
    /* @alternate */
    color: rgba(0, 0, 0, 0.54);
    color: var(--mdc-theme-text-secondary-on-light, rgba(0, 0, 0, 0.54));
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: transparent;
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 48px;
    height: 48px;
    padding: 12px;
    outline: none;
    font-size: 1.5rem;
    cursor: pointer;
    user-select: none;
    will-change: initial;
}

.mdc-icon-toggle::before,
.mdc-icon-toggle::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
    will-change: transform, opacity;
}

.mdc-icon-toggle::before {
    transition: opacity 15ms linear;
}

.mdc-icon-toggle.mdc-ripple-upgraded::after {
    top: 0;
    left: 0;
    transform: scale(0);
    transform-origin: center center;
}

.mdc-icon-toggle.mdc-ripple-upgraded--unbounded::after {
    top: var(--mdc-ripple-top, 0);
    left: var(--mdc-ripple-left, 0);
}

.mdc-icon-toggle.mdc-ripple-upgraded--foreground-activation::after {
    animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
}

.mdc-icon-toggle.mdc-ripple-upgraded--foreground-deactivation::after {
    animation: 150ms mdc-ripple-fg-opacity-out;
    transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-icon-toggle::before,
.mdc-icon-toggle::after {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
}

.mdc-icon-toggle.mdc-ripple-upgraded::before {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-icon-toggle.mdc-ripple-upgraded--unbounded::before {
    top: var(--mdc-ripple-top, calc(50% - 50%));
    left: var(--mdc-ripple-left, calc(50% - 50%));
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-icon-toggle.mdc-ripple-upgraded::after {
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-icon-toggle::before,
.mdc-icon-toggle::after {
    background-color: black;
}

.mdc-icon-toggle:hover::before {
    opacity: 0.04;
}

.mdc-icon-toggle:not(.mdc-ripple-upgraded):focus::before,
.mdc-icon-toggle.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-icon-toggle:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-icon-toggle:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-icon-toggle.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-icon-toggle--theme-dark.mdc-icon-toggle::before,
.mdc-icon-toggle--theme-dark.mdc-icon-toggle::after,
.mdc-theme--dark .mdc-icon-toggle::before,
.mdc-theme--dark .mdc-icon-toggle::after {
    background-color: white;
}

.mdc-icon-toggle--theme-dark.mdc-icon-toggle:hover::before,
.mdc-theme--dark .mdc-icon-toggle:hover::before {
    opacity: 0.08;
}

.mdc-icon-toggle--theme-dark.mdc-icon-toggle:not(.mdc-ripple-upgraded):focus::before,
.mdc-icon-toggle--theme-dark.mdc-icon-toggle.mdc-ripple-upgraded--background-focused::before,
.mdc-theme--dark .mdc-icon-toggle:not(.mdc-ripple-upgraded):focus::before,
.mdc-theme--dark .mdc-icon-toggle.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.24;
}

.mdc-icon-toggle--theme-dark.mdc-icon-toggle:not(.mdc-ripple-upgraded)::after,
.mdc-theme--dark .mdc-icon-toggle:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-icon-toggle--theme-dark.mdc-icon-toggle:not(.mdc-ripple-upgraded):active::after,
.mdc-theme--dark .mdc-icon-toggle:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.32;
}

.mdc-icon-toggle--theme-dark.mdc-icon-toggle.mdc-ripple-upgraded,
.mdc-theme--dark .mdc-icon-toggle.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32;
}

.mdc-icon-toggle::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
}

.mdc-icon-toggle--theme-dark,
.mdc-theme--dark .mdc-icon-toggle {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-icon-toggle--primary {
    /* @alternate */
    color: #00a9f4;
    color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-icon-toggle--primary::before,
.mdc-icon-toggle--primary::after {
    /* @alternate */
    background-color: #00a9f4;
}

@supports not (-ms-ime-align: auto) {
    .mdc-icon-toggle--primary::before,
    .mdc-icon-toggle--primary::after {
        background-color: var(--mdc-theme-primary, #00a9f4);
    }
}

.mdc-icon-toggle--primary:hover::before {
    opacity: 0.08;
}

.mdc-icon-toggle--primary:not(.mdc-ripple-upgraded):focus::before,
.mdc-icon-toggle--primary.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.24;
}

.mdc-icon-toggle--primary:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-icon-toggle--primary:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.32;
}

.mdc-icon-toggle--primary.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32;
}

.mdc-icon-toggle--accent {
    /* @alternate */
    color: #e52d27;
    color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-icon-toggle--accent::before,
.mdc-icon-toggle--accent::after {
    /* @alternate */
    background-color: #e52d27;
}

@supports not (-ms-ime-align: auto) {
    .mdc-icon-toggle--accent::before,
    .mdc-icon-toggle--accent::after {
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

.mdc-icon-toggle--accent:hover::before {
    opacity: 0.04;
}

.mdc-icon-toggle--accent:not(.mdc-ripple-upgraded):focus::before,
.mdc-icon-toggle--accent.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-icon-toggle--accent:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-icon-toggle--accent:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-icon-toggle--accent.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-icon-toggle--disabled {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));
    pointer-events: none;
}

.mdc-icon-toggle--theme-dark.mdc-icon-toggle--disabled,
.mdc-theme--dark .mdc-icon-toggle--disabled {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-disabled-on-dark, rgba(255, 255, 255, 0.5));
}


/** postcss-bem-linter: end */

:root {
    --mdc-layout-grid-margin-desktop: 24px;
    --mdc-layout-grid-gutter-desktop: 24px;
    --mdc-layout-grid-column-width-desktop: 72px;
    --mdc-layout-grid-margin-tablet: 16px;
    --mdc-layout-grid-gutter-tablet: 16px;
    --mdc-layout-grid-column-width-tablet: 72px;
    --mdc-layout-grid-margin-phone: 16px;
    --mdc-layout-grid-gutter-phone: 16px;
    --mdc-layout-grid-column-width-phone: 72px;
}

@media (min-width: 840px) {
    .mdc-layout-grid {
        box-sizing: border-box;
        padding: 24px;
        padding: var(--mdc-layout-grid-margin-desktop, 24px);
        width: 250px;
        display: flex;
    }
}

@media (min-width: 480px) and (max-width: 839px) {
    .mdc-layout-grid {
        box-sizing: border-box;
        margin: 0 auto;
        padding: 16px;
        padding: var(--mdc-layout-grid-margin-tablet, 16px);
    }
}

@media (max-width: 479px) {
    .mdc-layout-grid {
        box-sizing: border-box;
        margin: 0 auto;
        padding: 16px;
        padding: var(--mdc-layout-grid-margin-phone, 16px);
    }
}

@media (min-width: 840px) {
    .mdc-layout-grid__inner {
        display: flex;
        flex-flow: row wrap;
        align-items: stretch;
        margin: -12px;
        margin: calc(var(--mdc-layout-grid-gutter-desktop, 24px) / 2 * -1);
    }
    @supports (display: grid) {
        .mdc-layout-grid__inner {
            display: grid;
            margin: 0;
            grid-gap: 24px;
            grid-gap: var(--mdc-layout-grid-gutter-desktop, 24px);
            grid-template-columns: repeat(12, minmax(0, 1fr));
        }
    }
}

@media (min-width: 480px) and (max-width: 839px) {
    .mdc-layout-grid__inner {
        display: flex;
        flex-flow: row wrap;
        align-items: stretch;
        margin: -8px;
        margin: calc(var(--mdc-layout-grid-gutter-tablet, 16px) / 2 * -1);
    }
    @supports (display: grid) {
        .mdc-layout-grid__inner {
            display: grid;
            margin: 0;
            grid-gap: 16px;
            grid-gap: var(--mdc-layout-grid-gutter-tablet, 16px);
            grid-template-columns: repeat(8, minmax(0, 1fr));
        }
    }
}

@media (max-width: 479px) {
    .mdc-layout-grid__inner {
        display: flex;
        flex-flow: row wrap;
        align-items: stretch;
        margin: -8px;
        margin: calc(var(--mdc-layout-grid-gutter-phone, 16px) / 2 * -1);
    }
    @supports (display: grid) {
        .mdc-layout-grid__inner {
            display: grid;
            margin: 0;
            grid-gap: 16px;
            grid-gap: var(--mdc-layout-grid-gutter-phone, 16px);
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }
    }
}

@media (min-width: 840px) {
    .mdc-layout-grid__cell {
        width: calc(33.33333% - 24px);
        width: calc(33.33333% - var(--mdc-layout-grid-gutter-desktop, 24px));
        box-sizing: border-box;
        margin: 12px;
        margin: calc(var(--mdc-layout-grid-gutter-desktop, 24px) / 2);
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell {
            width: auto;
            grid-column-end: span 4;
        }
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell {
            margin: 0;
        }
    }
    .mdc-layout-grid__cell--span-1,
    .mdc-layout-grid__cell--span-1-desktop {
        width: calc(8.33333% - 24px);
        width: calc(8.33333% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-1,
        .mdc-layout-grid__cell--span-1-desktop {
            width: auto;
            grid-column-end: span 1;
        }
    }
    .mdc-layout-grid__cell--span-2,
    .mdc-layout-grid__cell--span-2-desktop {
        width: calc(16.66667% - 24px);
        width: calc(16.66667% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-2,
        .mdc-layout-grid__cell--span-2-desktop {
            width: auto;
            grid-column-end: span 2;
        }
    }
    .mdc-layout-grid__cell--span-3,
    .mdc-layout-grid__cell--span-3-desktop {
        width: calc(25% - 24px);
        width: calc(25% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-3,
        .mdc-layout-grid__cell--span-3-desktop {
            width: auto;
            grid-column-end: span 3;
        }
    }
    .mdc-layout-grid__cell--span-4,
    .mdc-layout-grid__cell--span-4-desktop {
        width: calc(12.33333% - 24px);
        width: calc(12.33333% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-4,
        .mdc-layout-grid__cell--span-4-desktop {
            width: 200px;
            grid-column-end: span 4;
        }
    }
    .mdc-layout-grid__cell--span-5,
    .mdc-layout-grid__cell--span-5-desktop {
        width: calc(41.66667% - 24px);
        width: calc(41.66667% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-5,
        .mdc-layout-grid__cell--span-5-desktop {
            width: auto;
            grid-column-end: span 5;
        }
    }
    .mdc-layout-grid__cell--span-6,
    .mdc-layout-grid__cell--span-6-desktop {
        width: calc(50% - 24px);
        width: calc(50% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-6,
        .mdc-layout-grid__cell--span-6-desktop {
            width: auto;
            grid-column-end: span 6;
        }
    }
    .mdc-layout-grid__cell--span-7,
    .mdc-layout-grid__cell--span-7-desktop {
        width: calc(58.33333% - 24px);
        width: calc(58.33333% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-7,
        .mdc-layout-grid__cell--span-7-desktop {
            width: auto;
            grid-column-end: span 7;
        }
    }
    .mdc-layout-grid__cell--span-8,
    .mdc-layout-grid__cell--span-8-desktop {
        width: calc(66.66667% - 24px);
        width: calc(66.66667% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-8,
        .mdc-layout-grid__cell--span-8-desktop {
            width: auto;
            grid-column-end: span 8;
        }
    }
    .mdc-layout-grid__cell--span-9,
    .mdc-layout-grid__cell--span-9-desktop {
        width: calc(75% - 24px);
        width: calc(75% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-9,
        .mdc-layout-grid__cell--span-9-desktop {
            width: auto;
            grid-column-end: span 9;
        }
    }
    .mdc-layout-grid__cell--span-10,
    .mdc-layout-grid__cell--span-10-desktop {
        width: calc(83.33333% - 24px);
        width: calc(83.33333% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-10,
        .mdc-layout-grid__cell--span-10-desktop {
            width: auto;
            grid-column-end: span 10;
        }
    }
    .mdc-layout-grid__cell--span-11,
    .mdc-layout-grid__cell--span-11-desktop {
        width: calc(91.66667% - 24px);
        width: calc(91.66667% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-11,
        .mdc-layout-grid__cell--span-11-desktop {
            width: auto;
            grid-column-end: span 11;
        }
    }
    .mdc-layout-grid__cell--span-12,
    .mdc-layout-grid__cell--span-12-desktop {
        position: relative;
        padding: 24px;
        /* left: 250px; */
        width: calc(80% - 24px);
        width: calc(80% - var(--mdc-layout-grid-gutter-desktop, 24px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-12,
        .mdc-layout-grid__cell--span-12-desktop {
            width: 100%;
            grid-column-end: span 12;
        }
    }
}

@media (min-width: 480px) and (max-width: 839px) {
    .mdc-layout-grid__cell {
        width: calc(50% - 16px);
        width: calc(50% - var(--mdc-layout-grid-gutter-tablet, 16px));
        box-sizing: border-box;
        margin: 8px;
        margin: calc(var(--mdc-layout-grid-gutter-tablet, 16px) / 2);
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell {
            width: auto;
            grid-column-end: span 4;
        }
    }
    /*
    @supports (display: grid) {
      .mdc-layout-grid__cell {
        margin: 0; } }*/
    .mdc-layout-grid__cell--span-1,
    .mdc-layout-grid__cell--span-1-tablet {
        width: calc(12.5% - 16px);
        width: calc(12.5% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-1,
        .mdc-layout-grid__cell--span-1-tablet {
            width: auto;
            grid-column-end: span 1;
        }
    }
    .mdc-layout-grid__cell--span-2,
    .mdc-layout-grid__cell--span-2-tablet {
        width: calc(25% - 16px);
        width: calc(25% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-2,
        .mdc-layout-grid__cell--span-2-tablet {
            width: auto;
            grid-column-end: span 2;
        }
    }
    .mdc-layout-grid__cell--span-3,
    .mdc-layout-grid__cell--span-3-tablet {
        width: calc(37.5% - 16px);
        width: calc(37.5% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-3,
        .mdc-layout-grid__cell--span-3-tablet {
            width: auto;
            grid-column-end: span 3;
        }
    }
    .mdc-layout-grid__cell--span-4,
    .mdc-layout-grid__cell--span-4-tablet {
        width: calc(50% - 16px);
        width: calc(50% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-4,
        .mdc-layout-grid__cell--span-4-tablet {
            width: auto;
            grid-column-end: span 4;
        }
    }
    .mdc-layout-grid__cell--span-5,
    .mdc-layout-grid__cell--span-5-tablet {
        width: calc(62.5% - 16px);
        width: calc(62.5% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-5,
        .mdc-layout-grid__cell--span-5-tablet {
            width: auto;
            grid-column-end: span 5;
        }
    }
    .mdc-layout-grid__cell--span-6,
    .mdc-layout-grid__cell--span-6-tablet {
        width: calc(75% - 16px);
        width: calc(75% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-6,
        .mdc-layout-grid__cell--span-6-tablet {
            width: auto;
            grid-column-end: span 6;
        }
    }
    .mdc-layout-grid__cell--span-7,
    .mdc-layout-grid__cell--span-7-tablet {
        width: calc(87.5% - 16px);
        width: calc(87.5% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-7,
        .mdc-layout-grid__cell--span-7-tablet {
            width: auto;
            grid-column-end: span 7;
        }
    }
    .mdc-layout-grid__cell--span-8,
    .mdc-layout-grid__cell--span-8-tablet {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-8,
        .mdc-layout-grid__cell--span-8-tablet {
            width: auto;
            grid-column-end: span 8;
        }
    }
    .mdc-layout-grid__cell--span-9,
    .mdc-layout-grid__cell--span-9-tablet {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-9,
        .mdc-layout-grid__cell--span-9-tablet {
            width: auto;
            grid-column-end: span 8;
        }
    }
    .mdc-layout-grid__cell--span-10,
    .mdc-layout-grid__cell--span-10-tablet {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-10,
        .mdc-layout-grid__cell--span-10-tablet {
            width: auto;
            grid-column-end: span 8;
        }
    }
    .mdc-layout-grid__cell--span-11,
    .mdc-layout-grid__cell--span-11-tablet {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-11,
        .mdc-layout-grid__cell--span-11-tablet {
            width: auto;
            grid-column-end: span 8;
        }
    }
    .mdc-layout-grid__cell--span-12,
    .mdc-layout-grid__cell--span-12-tablet {
        width: calc(60% - 16px);
        width: calc(60% - var(--mdc-layout-grid-gutter-tablet, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-12,
        .mdc-layout-grid__cell--span-12-tablet {
            width: auto;
            grid-column-end: span 8;
        }
    }
}

@media (max-width: 479px) {
    .mdc-layout-grid__cell {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));
        box-sizing: border-box;
        margin: 8px;
        margin: calc(var(--mdc-layout-grid-gutter-phone, 16px) / 2);
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell {
            width: auto;
            grid-column-end: span 4;
        }
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell {
            margin: 0;
        }
    }
    .mdc-layout-grid__cell--span-1,
    .mdc-layout-grid__cell--span-1-phone {
        width: calc(25% - 16px);
        width: calc(25% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-1,
        .mdc-layout-grid__cell--span-1-phone {
            width: auto;
            grid-column-end: span 1;
        }
    }
    .mdc-layout-grid__cell--span-2,
    .mdc-layout-grid__cell--span-2-phone {
        width: calc(50% - 16px);
        width: calc(50% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-2,
        .mdc-layout-grid__cell--span-2-phone {
            width: auto;
            grid-column-end: span 2;
        }
    }
    .mdc-layout-grid__cell--span-3,
    .mdc-layout-grid__cell--span-3-phone {
        width: calc(75% - 16px);
        width: calc(75% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-3,
        .mdc-layout-grid__cell--span-3-phone {
            width: auto;
            grid-column-end: span 3;
        }
    }
    .mdc-layout-grid__cell--span-4,
    .mdc-layout-grid__cell--span-4-phone {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-4,
        .mdc-layout-grid__cell--span-4-phone {
            width: auto;
            grid-column-end: span 4;
        }
    }
    .mdc-layout-grid__cell--span-5,
    .mdc-layout-grid__cell--span-5-phone {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-5,
        .mdc-layout-grid__cell--span-5-phone {
            width: auto;
            grid-column-end: span 4;
        }
    }
    .mdc-layout-grid__cell--span-6,
    .mdc-layout-grid__cell--span-6-phone {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-6,
        .mdc-layout-grid__cell--span-6-phone {
            width: auto;
            grid-column-end: span 4;
        }
    }
    .mdc-layout-grid__cell--span-7,
    .mdc-layout-grid__cell--span-7-phone {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-7,
        .mdc-layout-grid__cell--span-7-phone {
            width: auto;
            grid-column-end: span 4;
        }
    }
    .mdc-layout-grid__cell--span-8,
    .mdc-layout-grid__cell--span-8-phone {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-8,
        .mdc-layout-grid__cell--span-8-phone {
            width: auto;
            grid-column-end: span 4;
        }
    }
    .mdc-layout-grid__cell--span-9,
    .mdc-layout-grid__cell--span-9-phone {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-9,
        .mdc-layout-grid__cell--span-9-phone {
            width: auto;
            grid-column-end: span 4;
        }
    }
    .mdc-layout-grid__cell--span-10,
    .mdc-layout-grid__cell--span-10-phone {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-10,
        .mdc-layout-grid__cell--span-10-phone {
            width: auto;
            grid-column-end: span 4;
        }
    }
    .mdc-layout-grid__cell--span-11,
    .mdc-layout-grid__cell--span-11-phone {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-11,
        .mdc-layout-grid__cell--span-11-phone {
            width: auto;
            grid-column-end: span 4;
        }
    }
    .mdc-layout-grid__cell--span-12,
    .mdc-layout-grid__cell--span-12-phone {
        width: calc(100% - 16px);
        width: calc(100% - var(--mdc-layout-grid-gutter-phone, 16px));
    }
    @supports (display: grid) {
        .mdc-layout-grid__cell--span-12,
        .mdc-layout-grid__cell--span-12-phone {
            width: auto;
            grid-column-end: span 4;
        }
    }
}

.mdc-layout-grid__cell--order-1 {
    order: 1;
}

.mdc-layout-grid__cell--order-2 {
    order: 2;
}

.mdc-layout-grid__cell--order-3 {
    order: 3;
}

.mdc-layout-grid__cell--order-4 {
    order: 4;
}

.mdc-layout-grid__cell--order-5 {
    order: 5;
}

.mdc-layout-grid__cell--order-6 {
    order: 6;
}

.mdc-layout-grid__cell--order-7 {
    order: 7;
}

.mdc-layout-grid__cell--order-8 {
    order: 8;
}

.mdc-layout-grid__cell--order-9 {
    order: 9;
}

.mdc-layout-grid__cell--order-10 {
    order: 10;
}

.mdc-layout-grid__cell--order-11 {
    order: 11;
}

.mdc-layout-grid__cell--order-12 {
    order: 12;
}

.mdc-layout-grid__cell--align-top {
    align-self: flex-start;
}

@supports (display: grid) {
    .mdc-layout-grid__cell--align-top {
        align-self: start;
    }
}

.mdc-layout-grid__cell--align-middle {
    align-self: center;
}

.mdc-layout-grid__cell--align-bottom {
    align-self: flex-end;
}

@supports (display: grid) {
    .mdc-layout-grid__cell--align-bottom {
        align-self: end;
    }
}

@media (min-width: 840px) {
    .mdc-layout-grid--fixed-column-width {
        /* width: 1176px; */
        /* width: calc( var(--mdc-layout-grid-column-width-desktop, 72px) * 12 + var(--mdc-layout-grid-gutter-desktop, 24px) * 11 + var(--mdc-layout-grid-margin-desktop, 24px) * 2);*/
    }
}

@media (min-width: 480px) and (max-width: 839px) {
    .mdc-layout-grid--fixed-column-width {
        width: 720px;
        width: calc( var(--mdc-layout-grid-column-width-tablet, 72px) * 8 + var(--mdc-layout-grid-gutter-tablet, 16px) * 7 + var(--mdc-layout-grid-margin-tablet, 16px) * 2);
    }
}

@media (max-width: 479px) {
    .mdc-layout-grid--fixed-column-width {
        width: 368px;
        width: calc( var(--mdc-layout-grid-column-width-phone, 72px) * 4 + var(--mdc-layout-grid-gutter-phone, 16px) * 3 + var(--mdc-layout-grid-margin-phone, 16px) * 2);
    }
}

.mdc-layout-grid--align-left {
    margin-right: auto;
    margin-left: 0;
}

.mdc-layout-grid--align-right {
    margin-right: 0;
    margin-left: auto;
}

@keyframes primary-indeterminate-translate {
    0% {
        transform: translateX(0);
    }
    20% {
        animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
        transform: translateX(0);
    }
    59.15% {
        animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
        transform: translateX(83.67142%);
    }
    100% {
        transform: translateX(200.61106%);
    }
}

@keyframes primary-indeterminate-scale {
    0% {
        transform: scaleX(0.08);
    }
    36.65% {
        animation-timing-function: cubic-bezier(0.33473, 0.12482, 0.78584, 1);
        transform: scaleX(0.08);
    }
    69.15% {
        animation-timing-function: cubic-bezier(0.06, 0.11, 0.6, 1);
        transform: scaleX(0.66148);
    }
    100% {
        transform: scaleX(0.08);
    }
}

@keyframes secondary-indeterminate-translate {
    0% {
        animation-timing-function: cubic-bezier(0.15, 0, 0.51506, 0.40969);
        transform: translateX(0);
    }
    25% {
        animation-timing-function: cubic-bezier(0.31033, 0.28406, 0.8, 0.73371);
        transform: translateX(37.65191%);
    }
    48.35% {
        animation-timing-function: cubic-bezier(0.4, 0.62704, 0.6, 0.90203);
        transform: translateX(84.38617%);
    }
    100% {
        transform: translateX(160.27778%);
    }
}

@keyframes secondary-indeterminate-scale {
    0% {
        animation-timing-function: cubic-bezier(0.20503, 0.05705, 0.57661, 0.45397);
        transform: scaleX(0.08);
    }
    19.15% {
        animation-timing-function: cubic-bezier(0.15231, 0.19643, 0.64837, 1.00432);
        transform: scaleX(0.4571);
    }
    44.15% {
        animation-timing-function: cubic-bezier(0.25776, -0.00316, 0.21176, 1.38179);
        transform: scaleX(0.72796);
    }
    100% {
        transform: scaleX(0.08);
    }
}

@keyframes buffering {
    to {
        transform: translateX(-10px);
    }
}

@keyframes primary-indeterminate-translate-reverse {
    0% {
        transform: translateX(0);
    }
    20% {
        animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
        transform: translateX(0);
    }
    59.15% {
        animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
        transform: translateX(-83.67142%);
    }
    100% {
        transform: translateX(-200.61106%);
    }
}

@keyframes secondary-indeterminate-translate-reverse {
    0% {
        animation-timing-function: cubic-bezier(0.15, 0, 0.51506, 0.40969);
        transform: translateX(0);
    }
    25% {
        animation-timing-function: cubic-bezier(0.31033, 0.28406, 0.8, 0.73371);
        transform: translateX(-37.65191%);
    }
    48.35% {
        animation-timing-function: cubic-bezier(0.4, 0.62704, 0.6, 0.90203);
        transform: translateX(-84.38617%);
    }
    100% {
        transform: translateX(-160.27778%);
    }
}

@keyframes buffering-reverse {
    to {
        transform: translateX(10px);
    }
}

.mdc-linear-progress {
    position: relative;
    width: 100%;
    height: 4px;
    transform: translateZ(0);
    transition: opacity 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    overflow: hidden;
}

.mdc-linear-progress .mdc-linear-progress__bar-inner {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-linear-progress .mdc-linear-progress__buffering-dots {
    background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' enable-background='new 0 0 5 2' xml:space='preserve' viewBox='0 0 5 2' preserveAspectRatio='none slice'%3E%3Ccircle cx='1' cy='1' r='1' fill='%23e6e6e6'/%3E%3C/svg%3E");
}

.mdc-linear-progress .mdc-linear-progress__buffer {
    background-color: #e6e6e6;
}

.mdc-linear-progress__bar {
    position: absolute;
    width: 100%;
    height: 100%;
    animation: none;
    transform-origin: top left;
    transition: transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
}

.mdc-linear-progress__bar-inner {
    display: inline-block;
    position: absolute;
    width: 100%;
    height: 100%;
    animation: none;
}

.mdc-linear-progress__buffering-dots {
    position: absolute;
    width: 100%;
    height: 100%;
    animation: buffering 250ms infinite linear;
    background-repeat: repeat-x;
    background-size: 10px 4px;
}

.mdc-linear-progress__buffer {
    position: absolute;
    width: 100%;
    height: 100%;
    transform-origin: top left;
    transition: transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
}

.mdc-linear-progress__primary-bar {
    transform: scaleX(0);
}

.mdc-linear-progress__secondary-bar {
    visibility: hidden;
}

.mdc-linear-progress--indeterminate .mdc-linear-progress__bar {
    transition: none;
}

.mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar {
    left: -145.166611%;
    animation: primary-indeterminate-translate 2s infinite linear;
}

.mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar>.mdc-linear-progress__bar-inner {
    animation: primary-indeterminate-scale 2s infinite linear;
}

.mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar {
    left: -54.888891%;
    animation: secondary-indeterminate-translate 2s infinite linear;
    visibility: visible;
}

.mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar>.mdc-linear-progress__bar-inner {
    animation: secondary-indeterminate-scale 2s infinite linear;
}

.mdc-linear-progress--reversed .mdc-linear-progress__bar,
.mdc-linear-progress--reversed .mdc-linear-progress__buffer {
    right: 0;
    transform-origin: center right;
}

.mdc-linear-progress--reversed .mdc-linear-progress__primary-bar {
    animation-name: primary-indeterminate-translate-reverse;
}

.mdc-linear-progress--reversed .mdc-linear-progress__secondary-bar {
    animation-name: secondary-indeterminate-translate-reverse;
}

.mdc-linear-progress--reversed .mdc-linear-progress__buffering-dots {
    animation: buffering-reverse 250ms infinite linear;
}

.mdc-linear-progress--closed {
    opacity: 0;
}

.mdc-linear-progress--indeterminate.mdc-linear-progress--reversed .mdc-linear-progress__primary-bar {
    right: -145.166611%;
    left: auto;
}

.mdc-linear-progress--indeterminate.mdc-linear-progress--reversed .mdc-linear-progress__secondary-bar {
    right: -54.888891%;
    left: auto;
}


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */

.mdc-list .mdc-list-divider,
.mdc-list-group .mdc-list-divider {
    border-bottom-color: rgba(0, 0, 0, 0.12);
}

.mdc-list--theme-dark .mdc-list-divider,
.mdc-theme--dark .mdc-list .mdc-list-divider,
.mdc-list-group--theme-dark .mdc-list-divider,
.mdc-theme--dark .mdc-list-group .mdc-list-divider {
    border-bottom-color: rgba(255, 255, 255, 0.2);
}

.mdc-list {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75rem;
    text-decoration: inherit;
    text-transform: inherit;
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));
    margin: 0;
    padding: 8px 16px;
    line-height: 1.5rem;
    list-style-type: none;
}

.mdc-list .mdc-list-item__secondary-text {
    /* @alternate */
    color: rgba(0, 0, 0, 0.54);
    color: var(--mdc-theme-text-secondary-on-background, rgba(0, 0, 0, 0.54));
}

.mdc-list .mdc-list-item__start-detail {
    background-color: transparent;
}

.mdc-list .mdc-list-item__start-detail {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-icon-on-background, rgba(0, 0, 0, 0.38));
}

.mdc-list .mdc-list-item__end-detail {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-hint-on-background, rgba(0, 0, 0, 0.38));
}

.mdc-list--theme-dark,
.mdc-theme--dark .mdc-list {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-list--theme-dark .mdc-list-item__secondary-text,
.mdc-theme--dark .mdc-list .mdc-list-item__secondary-text {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7);
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

.mdc-list--theme-dark .mdc-list-item__start-detail,
.mdc-theme--dark .mdc-list .mdc-list-item__start-detail {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-icon-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-list--theme-dark .mdc-list-item__end-detail,
.mdc-theme--dark .mdc-list .mdc-list-item__end-detail {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-hint-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-list--dense {
    padding-top: 4px;
    padding-bottom: 4px;
    font-size: .812rem;
}

.mdc-list-item {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 48px;
}

.mdc-list-item--selected,
.mdc-list-item--activated {
    /* @alternate */
    color: #00a9f4;
    color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-list-item--selected .mdc-list-item__start-detail,
.mdc-list-item--activated .mdc-list-item__start-detail {
    /* @alternate */
    color: #00a9f4;
    color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-list-item__start-detail {
    width: 24px;
    height: 24px;
    margin-left: 0;
    margin-right: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

[dir="rtl"] .mdc-list-item .mdc-list-item__start-detail,
.mdc-list-item[dir="rtl"] .mdc-list-item__start-detail {
    margin-left: 32px;
    margin-right: 0;
}

.mdc-list-item__end-detail {
    width: 24px;
    height: 24px;
    margin-left: auto;
    margin-right: 0;
}

[dir="rtl"] .mdc-list-item .mdc-list-item__end-detail,
.mdc-list-item[dir="rtl"] .mdc-list-item__end-detail {
    margin-left: 0;
    margin-right: auto;
}

.mdc-list-item__text {
    display: inline-flex;
    flex-direction: column;
}

.mdc-list-item__secondary-text {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.25rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-list--dense .mdc-list-item__secondary-text {
    font-size: inherit;
}

.mdc-list--dense .mdc-list-item {
    height: 40px;
}

.mdc-list--dense .mdc-list-item__start-detail {
    width: 20px;
    height: 20px;
    margin-left: 0;
    margin-right: 36px;
}

[dir="rtl"] .mdc-list-item .mdc-list--dense .mdc-list-item__start-detail,
.mdc-list-item[dir="rtl"] .mdc-list--dense .mdc-list-item__start-detail {
    margin-left: 36px;
    margin-right: 0;
}

.mdc-list--dense .mdc-list-item__end-detail {
    width: 20px;
    height: 20px;
}

.mdc-list--avatar-list .mdc-list-item {
    height: 56px;
}

.mdc-list--avatar-list .mdc-list-item__start-detail {
    width: 40px;
    height: 40px;
    margin-left: 0;
    margin-right: 16px;
    border-radius: 50%;
}

[dir="rtl"] .mdc-list-item .mdc-list--avatar-list .mdc-list-item__start-detail,
.mdc-list-item[dir="rtl"] .mdc-list--avatar-list .mdc-list-item__start-detail {
    margin-left: 16px;
    margin-right: 0;
}

.mdc-list-item .mdc-list--avatar-list.mdc-list--dense .mdc-list__item {
    height: 48px;
}

.mdc-list-item .mdc-list--avatar-list.mdc-list--dense .mdc-list__item__start-detail {
    width: 36px;
    height: 36px;
    margin-left: 0;
    margin-right: 20px;
}

[dir="rtl"] .mdc-list-item .mdc-list-item .mdc-list--avatar-list.mdc-list--dense .mdc-list__item__start-detail,
.mdc-list-item[dir="rtl"] .mdc-list-item .mdc-list--avatar-list.mdc-list--dense .mdc-list__item__start-detail {
    margin-left: 20px;
    margin-right: 0;
}

.mdc-list--two-line .mdc-list-item {
    height: 72px;
}

.mdc-list--two-line.mdc-list--dense .mdc-list-item {
    height: 60px;
}

a.mdc-list-item {
    color: inherit;
    text-decoration: none;
}

.mdc-list-item.mdc-ripple-upgraded {
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: transparent;
    left: -16px;
    right: initial;
    position: relative;
    width: 100%;
    padding: 0 16px;
    overflow: hidden;
}

.mdc-list-item.mdc-ripple-upgraded::before,
.mdc-list-item.mdc-ripple-upgraded::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
    will-change: transform, opacity;
}

.mdc-list-item.mdc-ripple-upgraded::before {
    transition: opacity 15ms linear;
}

.mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded::after {
    top: 0;
    left: 0;
    transform: scale(0);
    transform-origin: center center;
}

.mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded--unbounded::after {
    top: var(--mdc-ripple-top, 0);
    left: var(--mdc-ripple-left, 0);
}

.mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded--foreground-activation::after {
    animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
}

.mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded--foreground-deactivation::after {
    animation: 150ms mdc-ripple-fg-opacity-out;
    transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-list-item.mdc-ripple-upgraded::before,
.mdc-list-item.mdc-ripple-upgraded::after {
    background-color: rgba(0, 0, 0, 0.06);
    opacity: 0;
}

.mdc-list-item.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):hover::before,
.mdc-list-item.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):focus::before,
.mdc-list-item.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 85ms;
    opacity: .6;
}

.mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded--background-focused::before {
    opacity: .99999;
}

.mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded--background-active-fill::before {
    transition-duration: 120ms;
    opacity: 1;
}

.mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded::after {
    --mdc-ripple-fg-opacity: 1;
}

.mdc-list-item.mdc-ripple-upgraded::before,
.mdc-list-item.mdc-ripple-upgraded::after {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
}

.mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded::before {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded--unbounded::before {
    top: var(--mdc-ripple-top, calc(50% - 50%));
    left: var(--mdc-ripple-left, calc(50% - 50%));
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded::after {
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
}

[dir="rtl"] .mdc-list-item.mdc-ripple-upgraded,
.mdc-list-item.mdc-ripple-upgraded[dir="rtl"] {
    left: initial;
    right: -16px;
}

.mdc-list-item.mdc-ripple-upgraded:focus {
    outline: none;
}

.mdc-list--theme-dark .mdc-list-item.mdc-ripple-upgraded::before,
.mdc-list--theme-dark .mdc-list-item.mdc-ripple-upgraded::after,
.mdc-theme--dark .mdc-list-item.mdc-ripple-upgraded::before,
.mdc-theme--dark .mdc-list-item.mdc-ripple-upgraded::after {
    background-color: rgba(255, 255, 255, 0.12);
    opacity: 0;
}

.mdc-list--theme-dark .mdc-list-item.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):hover::before,
.mdc-list--theme-dark .mdc-list-item.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):focus::before,
.mdc-list--theme-dark .mdc-list-item.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):active::after,
.mdc-theme--dark .mdc-list-item.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):hover::before,
.mdc-theme--dark .mdc-list-item.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):focus::before,
.mdc-theme--dark .mdc-list-item.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 85ms;
    opacity: .6;
}

.mdc-list--theme-dark .mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded--background-focused::before,
.mdc-theme--dark .mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded--background-focused::before {
    opacity: .99999;
}

.mdc-list--theme-dark .mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded--background-active-fill::before,
.mdc-theme--dark .mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded--background-active-fill::before {
    transition-duration: 120ms;
    opacity: 1;
}

.mdc-list--theme-dark .mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded::after,
.mdc-theme--dark .mdc-list-item.mdc-ripple-upgraded.mdc-ripple-upgraded::after {
    --mdc-ripple-fg-opacity: 1;
}

.mdc-list-divider {
    height: 0;
    margin: 0;
    border: none;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.mdc-list-divider--inset {
    margin-left: 56px;
    margin-right: 0;
    width: calc(100% - 56px);
}

[dir="rtl"] .mdc-list-group .mdc-list-divider--inset,
.mdc-list-group[dir="rtl"] .mdc-list-divider--inset {
    margin-left: 0;
    margin-right: 56px;
}

.mdc-list-group {
    padding: 0 16px;
}

.mdc-list-group .mdc-list-group__subheader {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87));
}

.mdc-list-group--theme-dark .mdc-list-group__subheader,
.mdc-theme--dark .mdc-list-group .mdc-list-group__subheader {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-list-group__subheader {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5rem;
    text-decoration: inherit;
    text-transform: inherit;
    margin: 0.75rem 0;
}

.mdc-list-group .mdc-list {
    padding: 0;
}


/**
 * The css property used for elevation. In most cases this should not be changed. It is exposed
 * as a variable for abstraction / easy use when needing to reference the property directly, for
 * example in a `will-change` rule.
 */


/**
 * The default duration value for elevation transitions.
 */


/**
 * The default easing value for elevation transitions.
 */


/**
 * Applies the correct CSS rules to an element to give it the elevation specified by $z-value.
 * The $z-value must be between 0 and 24.
 * If $color has an alpha channel, it will be ignored and overridden. To increase the opacity of the shadow, use
 * $opacity-boost.
 */


/**
 * Returns a string that can be used as the value for a `transition` property for elevation.
 * Calling this function directly is useful in situations where a component needs to transition
 * more than one property.
 *
 * ```scss
 * .foo {
 *   transition: mdc-elevation-transition-rule(), opacity 100ms ease;
 *   will-change: $mdc-elevation-property, opacity;
 * }
 * ```
 */


/**
 * Applies the correct css rules needed to have an element transition between elevations.
 * This mixin should be applied to elements whose elevation values will change depending on their
 * context (e.g. when active or disabled).
 */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */

.mdc-simple-menu {
    box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
    display: none;
    position: absolute;
    box-sizing: border-box;
    min-width: 170px;
    max-width: calc(100vw - 32px);
    max-height: calc(100vh - 32px);
    margin: 0;
    padding: 0;
    transform: scale(0);
    transform-origin: top left;
    border-radius: 2px;
    background-color: white;
    opacity: 0;
    white-space: nowrap;
    overflow-x: hidden;
    overflow-y: auto;
    will-change: transform, opacity;
    z-index: 4;
}

.mdc-simple-menu--theme-dark,
.mdc-theme--dark .mdc-simple-menu {
    background-color: #424242;
}

.mdc-simple-menu:focus {
    outline: none;
}

.mdc-simple-menu--open {
    display: inline-block;
    transform: scale(1);
    opacity: 1;
}

.mdc-simple-menu--animating {
    display: inline-block;
    transition: opacity 0.2s cubic-bezier(0, 0, 0.2, 1);
    overflow-y: hidden;
}

.mdc-simple-menu__items {
    box-sizing: border-box;
    overflow-x: hidden;
    overflow-y: auto;
    will-change: transform;
}

.mdc-simple-menu__items>* {
    opacity: 0;
}

.mdc-simple-menu__items>.mdc-list-item {
    cursor: pointer;
}

.mdc-simple-menu--animating .mdc-simple-menu__items {
    overflow-y: hidden;
}

.mdc-simple-menu--animating .mdc-simple-menu__items>* {
    transition-duration: 0.3s;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.mdc-simple-menu--open .mdc-simple-menu__items>* {
    opacity: 1;
    will-change: opacity;
}

[dir="rtl"] .mdc-simple-menu {
    transform-origin: top right;
}

.mdc-simple-menu--open-from-top-left {
    transform-origin: top left !important;
}

.mdc-simple-menu--open-from-top-right {
    transform-origin: top right !important;
}

.mdc-simple-menu--open-from-bottom-left {
    transform-origin: bottom left !important;
}

.mdc-simple-menu--open-from-bottom-right {
    transform-origin: bottom right !important;
}

.mdc-simple-menu .mdc-list-group,
.mdc-simple-menu .mdc-list {
    padding: 8px 0;
}

.mdc-simple-menu .mdc-list-item {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75rem;
    text-decoration: inherit;
    text-transform: inherit;
    position: relative;
    padding: 0 16px;
    outline: none;
    color: inherit;
    text-decoration: none;
    user-select: none;
}

.mdc-simple-menu--theme-dark.mdc-simple-menu .mdc-list-item,
.mdc-theme--dark .mdc-simple-menu .mdc-list-item {
    color: white;
}

.mdc-simple-menu--theme-dark.mdc-simple-menu .mdc-list-divider,
.mdc-theme--dark .mdc-simple-menu .mdc-list-divider {
    border-color: rgba(255, 255, 255, 0.12);
}

.mdc-simple-menu .mdc-list-item__start-detail {
    color: rgba(0, 0, 0, 0.54);
}

.mdc-simple-menu--theme-dark.mdc-simple-menu .mdc-list-item__start-detail,
.mdc-theme--dark .mdc-simple-menu .mdc-list-item__start-detail {
    color: rgba(255, 255, 255, 0.54);
}

.mdc-simple-menu--selected.mdc-list-item,
.mdc-simple-menu--selected.mdc-list-item .mdc-list-item__start-detail {
    /* @alternate */
    color: #00a9f4;
    color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-simple-menu .mdc-list-item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 120ms cubic-bezier(0, 0, 0.2, 1);
    border-radius: inherit;
    background: currentColor;
    opacity: 0;
    pointer-events: none;
    content: "";
}

.mdc-simple-menu .mdc-list-item:focus::before {
    opacity: .12;
}

.mdc-simple-menu .mdc-list-item:active::before {
    opacity: .18;
}

.mdc-simple-menu .mdc-list-item[aria-disabled="true"] {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));
    cursor: default;
}

.mdc-select--theme-dark .mdc-simple-menu .mdc-list-item[aria-disabled="true"],
.mdc-theme--dark .mdc-simple-menu .mdc-list-item[aria-disabled="true"] {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-disabled-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-simple-menu .mdc-list-item[aria-disabled="true"]:focus::before,
.mdc-simple-menu .mdc-list-item[aria-disabled="true"]:active::before {
    opacity: 0;
}

.mdc-menu-anchor {
    position: relative;
    overflow: visible;
}

.mdc-radio {
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: transparent;
    display: inline-block;
    position: relative;
    flex: 0 0 auto;
    box-sizing: border-box;
    width: 40px;
    height: 40px;
    padding: 10px;
    cursor: pointer;
    will-change: opacity, transform, border-color, background-color, color;
}

.mdc-radio .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle {
    /* @alternate */
    border-color: rgba(0, 0, 0, 0.54);
    border-color: var(--mdc-theme-text-secondary-on-light, rgba(0, 0, 0, 0.54));
}

.mdc-radio--theme-dark .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle,
.mdc-theme--dark .mdc-radio .mdc-radio__native-control:enabled:not(:checked)+.mdc-radio__background .mdc-radio__outer-circle {
    /* @alternate */
    border-color: rgba(255, 255, 255, 0.7);
    border-color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

.mdc-radio .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle {
    /* @alternate */
    border-color: #e52d27;
    border-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-radio .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle {
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-radio .mdc-radio__background::before {
    /* @alternate */
    background-color: #e52d27;
}

@supports not (-ms-ime-align: auto) {
    .mdc-radio .mdc-radio__background::before {
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

.mdc-radio::before,
.mdc-radio::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
    will-change: transform, opacity;
}

.mdc-radio::before {
    transition: opacity 15ms linear;
}

.mdc-radio.mdc-ripple-upgraded::after {
    top: 0;
    left: 0;
    transform: scale(0);
    transform-origin: center center;
}

.mdc-radio.mdc-ripple-upgraded--unbounded::after {
    top: var(--mdc-ripple-top, 0);
    left: var(--mdc-ripple-left, 0);
}

.mdc-radio.mdc-ripple-upgraded--foreground-activation::after {
    animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
}

.mdc-radio.mdc-ripple-upgraded--foreground-deactivation::after {
    animation: 150ms mdc-ripple-fg-opacity-out;
    transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-radio::before,
.mdc-radio::after {
    top: calc(50% - 50%);
    left: calc(50% - 50%);
    width: 100%;
    height: 100%;
}

.mdc-radio.mdc-ripple-upgraded::before {
    top: calc(50% - 50%);
    left: calc(50% - 50%);
    width: 100%;
    height: 100%;
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-radio.mdc-ripple-upgraded--unbounded::before {
    top: var(--mdc-ripple-top, calc(50% - 25%));
    left: var(--mdc-ripple-left, calc(50% - 25%));
    width: var(--mdc-ripple-fg-size, 50%);
    height: var(--mdc-ripple-fg-size, 50%);
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-radio.mdc-ripple-upgraded::after {
    width: var(--mdc-ripple-fg-size, 50%);
    height: var(--mdc-ripple-fg-size, 50%);
}

.mdc-radio::before,
.mdc-radio::after {
    /* @alternate */
    background-color: #e52d27;
}

@supports not (-ms-ime-align: auto) {
    .mdc-radio::before,
    .mdc-radio::after {
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

.mdc-radio:hover::before {
    opacity: 0.04;
}

.mdc-radio:not(.mdc-ripple-upgraded):focus::before,
.mdc-radio.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-radio:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-radio:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-radio.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-radio.mdc-ripple-upgraded .mdc-radio__background::before {
    content: none;
}

.mdc-radio__background {
    display: inline-block;
    position: absolute;
    left: 10px;
    box-sizing: border-box;
    width: 50%;
    height: 50%;
}

.mdc-radio__background::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: scale(0, 0);
    transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
}

.mdc-radio__outer-circle {
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    transition: border-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    border-width: 2px;
    border-style: solid;
    border-radius: 50%;
}

.mdc-radio__inner-circle {
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    transform: scale(0, 0);
    transition: transform 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1), background-color 120ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    border-radius: 50%;
}

.mdc-radio__native-control {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    opacity: 0;
    cursor: inherit;
    z-index: 1;
}

.mdc-radio__native-control:checked+.mdc-radio__background,
.mdc-radio__native-control:disabled+.mdc-radio__background {
    transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__outer-circle,
.mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__outer-circle {
    transition: border-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__inner-circle,
.mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__inner-circle {
    transition: transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), background-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-radio--disabled {
    cursor: default;
    pointer-events: none;
}

.mdc-radio__native-control:checked+.mdc-radio__background .mdc-radio__inner-circle {
    transform: scale(0.5);
    transition: transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1), background-color 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
}

.mdc-radio__native-control:disabled+.mdc-radio__background,
[aria-disabled="true"] .mdc-radio__native-control+.mdc-radio__background {
    cursor: default;
}

.mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__outer-circle,
[aria-disabled="true"] .mdc-radio__native-control+.mdc-radio__background .mdc-radio__outer-circle {
    border-color: rgba(0, 0, 0, 0.26);
}

.mdc-radio--theme-dark .mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__outer-circle,
.mdc-theme--dark .mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__outer-circle,
.mdc-radio--theme-dark [aria-disabled="true"] .mdc-radio__native-control+.mdc-radio__background .mdc-radio__outer-circle,
.mdc-theme--dark [aria-disabled="true"] .mdc-radio__native-control+.mdc-radio__background .mdc-radio__outer-circle {
    border-color: rgba(255, 255, 255, 0.3);
}

.mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__inner-circle,
[aria-disabled="true"] .mdc-radio__native-control+.mdc-radio__background .mdc-radio__inner-circle {
    background-color: rgba(0, 0, 0, 0.26);
}

.mdc-radio--theme-dark .mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__inner-circle,
.mdc-theme--dark .mdc-radio__native-control:disabled+.mdc-radio__background .mdc-radio__inner-circle,
.mdc-radio--theme-dark [aria-disabled="true"] .mdc-radio__native-control+.mdc-radio__background .mdc-radio__inner-circle,
.mdc-theme--dark [aria-disabled="true"] .mdc-radio__native-control+.mdc-radio__background .mdc-radio__inner-circle {
    background-color: rgba(255, 255, 255, 0.3);
}

.mdc-radio__native-control:focus+.mdc-radio__background::before {
    transform: scale(2, 2);
    transition: opacity 120ms 0ms cubic-bezier(0, 0, 0.2, 1), transform 120ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: .26;
}

.mdc-ripple-surface {
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: transparent;
    position: relative;
    outline: none;
    overflow: hidden;
}

.mdc-ripple-surface::before,
.mdc-ripple-surface::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
    will-change: transform, opacity;
}

.mdc-ripple-surface::before {
    transition: opacity 15ms linear;
}

.mdc-ripple-surface.mdc-ripple-upgraded::after {
    top: 0;
    left: 0;
    transform: scale(0);
    transform-origin: center center;
}

.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::after {
    top: var(--mdc-ripple-top, 0);
    left: var(--mdc-ripple-left, 0);
}

.mdc-ripple-surface.mdc-ripple-upgraded--foreground-activation::after {
    animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
}

.mdc-ripple-surface.mdc-ripple-upgraded--foreground-deactivation::after {
    animation: 150ms mdc-ripple-fg-opacity-out;
    transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-ripple-surface::before,
.mdc-ripple-surface::after {
    background-color: black;
}

.mdc-ripple-surface:hover::before {
    opacity: 0.04;
}

.mdc-ripple-surface:not(.mdc-ripple-upgraded):focus::before,
.mdc-ripple-surface.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-ripple-surface:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-ripple-surface:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-ripple-surface.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-ripple-surface::before,
.mdc-ripple-surface::after {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
}

.mdc-ripple-surface.mdc-ripple-upgraded::before {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::before {
    top: var(--mdc-ripple-top, calc(50% - 50%));
    left: var(--mdc-ripple-left, calc(50% - 50%));
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-ripple-surface.mdc-ripple-upgraded::after {
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-ripple-surface[data-mdc-ripple-is-unbounded] {
    overflow: visible;
}

.mdc-ripple-surface--primary::before,
.mdc-ripple-surface--primary::after {
    /* @alternate */
    background-color: #00a9f4;
}

@supports not (-ms-ime-align: auto) {
    .mdc-ripple-surface--primary::before,
    .mdc-ripple-surface--primary::after {
        background-color: var(--mdc-theme-primary, #00a9f4);
    }
}

.mdc-ripple-surface--primary:hover::before {
    opacity: 0.08;
}

.mdc-ripple-surface--primary:not(.mdc-ripple-upgraded):focus::before,
.mdc-ripple-surface--primary.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.24;
}

.mdc-ripple-surface--primary:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-ripple-surface--primary:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.32;
}

.mdc-ripple-surface--primary.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32;
}

.mdc-ripple-surface--accent::before,
.mdc-ripple-surface--accent::after {
    /* @alternate */
    background-color: #e52d27;
}

@supports not (-ms-ime-align: auto) {
    .mdc-ripple-surface--accent::before,
    .mdc-ripple-surface--accent::after {
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

.mdc-ripple-surface--accent:hover::before {
    opacity: 0.04;
}

.mdc-ripple-surface--accent:not(.mdc-ripple-upgraded):focus::before,
.mdc-ripple-surface--accent.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-ripple-surface--accent:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-ripple-surface--accent:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-ripple-surface--accent.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */

.mdc-select {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75rem;
    text-decoration: inherit;
    text-transform: inherit;
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    background-image: url(data:image/svg+xml,%3Csvg%20width%3D%2210px%22%20height%3D%225px%22%20viewBox%3D%227%2010%2010%205%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Shape%22%20stroke%3D%22none%22%20fill%3D%22%230%22%20fill-rule%3D%22evenodd%22%20opacity%3D%220.54%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E);
    display: inline-flex;
    position: relative;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
    height: 56px;
    border: none;
    border-radius: 4px 4px 0 0;
    outline: none;
    background-repeat: no-repeat;
    background-position: right 10px center;
    cursor: pointer;
    overflow: visible;
}

[dir="rtl"] .mdc-select,
.mdc-select[dir="rtl"] {
    background-position: left 10px center;
}

.mdc-select:focus .mdc-select__bottom-line {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
    transform: scaleY(2);
}

.mdc-select:focus .mdc-select__bottom-line::after {
    opacity: 1;
}

.mdc-select--theme-dark .mdc-select,
.mdc-theme--dark .mdc-select {
    background-image: url(data:image/svg+xml,%3Csvg%20width%3D%2210px%22%20height%3D%225px%22%20viewBox%3D%227%2010%2010%205%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Shape%22%20stroke%3D%22none%22%20fill%3D%22%23fff%22%20fill-rule%3D%22evenodd%22%20opacity%3D%220.54%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E);
    background-color: rgba(255, 255, 255, 0.1);
}

.mdc-select__menu {
    position: fixed;
    top: 0;
    left: 0;
    max-height: 100%;
    transform-origin: center center;
    z-index: 4;
}

.mdc-select__surface {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75rem;
    text-decoration: inherit;
    text-transform: inherit;
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    padding-left: 16px;
    padding-right: 26px;
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: transparent;
    display: flex;
    position: relative;
    flex-grow: 1;
    width: 100%;
    height: 56px;
    border: none;
    border-radius: 4px 4px 0 0;
    outline: none;
    background-color: rgba(0, 0, 0, 0.04);
    appearance: none;
    overflow: hidden;
}

[dir="rtl"] .mdc-select .mdc-select__surface,
.mdc-select[dir="rtl"] .mdc-select__surface {
    padding-left: 26px;
    padding-right: 16px;
}

.mdc-select__surface::before,
.mdc-select__surface::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
    will-change: transform, opacity;
}

.mdc-select__surface::before {
    transition: opacity 15ms linear;
}

.mdc-select__surface.mdc-ripple-upgraded::after {
    top: 0;
    left: 0;
    transform: scale(0);
    transform-origin: center center;
}

.mdc-select__surface.mdc-ripple-upgraded--unbounded::after {
    top: var(--mdc-ripple-top, 0);
    left: var(--mdc-ripple-left, 0);
}

.mdc-select__surface.mdc-ripple-upgraded--foreground-activation::after {
    animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
}

.mdc-select__surface.mdc-ripple-upgraded--foreground-deactivation::after {
    animation: 150ms mdc-ripple-fg-opacity-out;
    transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-select__surface::before,
.mdc-select__surface::after {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
}

.mdc-select__surface.mdc-ripple-upgraded::before {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-select__surface.mdc-ripple-upgraded--unbounded::before {
    top: var(--mdc-ripple-top, calc(50% - 50%));
    left: var(--mdc-ripple-left, calc(50% - 50%));
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-select__surface.mdc-ripple-upgraded::after {
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-select__surface::before,
.mdc-select__surface::after {
    background-color: black;
}

.mdc-select__surface:hover::before {
    opacity: 0.04;
}

.mdc-select__surface:not(.mdc-ripple-upgraded):focus::before,
.mdc-select__surface.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-select__surface:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-select__surface:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-select__surface.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-select--theme-dark .mdc-select__surface::before,
.mdc-select--theme-dark .mdc-select__surface::after,
.mdc-theme--dark .mdc-select__surface::before,
.mdc-theme--dark .mdc-select__surface::after {
    background-color: white;
}

.mdc-select--theme-dark .mdc-select__surface:hover::before,
.mdc-theme--dark .mdc-select__surface:hover::before {
    opacity: 0.08;
}

.mdc-select--theme-dark .mdc-select__surface:not(.mdc-ripple-upgraded):focus::before,
.mdc-select--theme-dark .mdc-select__surface.mdc-ripple-upgraded--background-focused::before,
.mdc-theme--dark .mdc-select__surface:not(.mdc-ripple-upgraded):focus::before,
.mdc-theme--dark .mdc-select__surface.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.24;
}

.mdc-select--theme-dark .mdc-select__surface:not(.mdc-ripple-upgraded)::after,
.mdc-theme--dark .mdc-select__surface:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-select--theme-dark .mdc-select__surface:not(.mdc-ripple-upgraded):active::after,
.mdc-theme--dark .mdc-select__surface:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.32;
}

.mdc-select--theme-dark .mdc-select__surface.mdc-ripple-upgraded,
.mdc-theme--dark .mdc-select__surface.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32;
}

.mdc-select__surface::-ms-expand {
    display: none;
}

.mdc-select__label {
    left: 16px;
    right: initial;
    position: absolute;
    bottom: 12px;
    transform-origin: left top;
    transition: transform 180ms cubic-bezier(0.4, 0, 0.2, 1);
    color: rgba(0, 0, 0, 0.6);
    pointer-events: none;
    will-change: transform;
}

[dir="rtl"] .mdc-select__label,
.mdc-select__label[dir="rtl"] {
    left: initial;
    right: 16px;
}

.mdc-select--theme-dark .mdc-select__label,
.mdc-theme--dark .mdc-select__label {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7);
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

[dir="rtl"] .mdc-select .mdc-select__label,
.mdc-select[dir="rtl"] .mdc-select__label {
    transform-origin: right top;
}

.mdc-select__label--float-above {
    transform: translateY(-40%) scale(0.75, 0.75);
}

.mdc-select__selected-text {
    display: flex;
    align-items: flex-end;
    margin-bottom: 6px;
    transition: opacity 125ms 0ms cubic-bezier(0.4, 0, 0.6, 1), transform 125ms 0ms cubic-bezier(0.4, 0, 0.6, 1);
    white-space: nowrap;
    overflow: hidden;
}

.mdc-select--theme-dark .mdc-select__selected-text,
.mdc-theme--dark .mdc-select__selected-text {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7);
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

.mdc-select__bottom-line {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    transform: scaleY(1);
    transform-origin: bottom;
    transition: transform 180ms cubic-bezier(0.4, 0, 0.2, 1);
    background-color: rgba(0, 0, 0, 0.5);
}

.mdc-select__bottom-line::after {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    transform: scaleX(0);
    transition: transform 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 0;
    content: "";
    z-index: 2;
}

.mdc-select__bottom-line--active::after {
    transform: scaleX(1);
    opacity: 1;
}

.mdc-select__surface:focus~.mdc-select__bottom-line {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
    transform: scaleY(2);
}

.mdc-select--open .mdc-select__selected-text {
    transform: translateY(8px);
    transition: opacity 125ms 125ms cubic-bezier(0, 0, 0.2, 1), transform 125ms 125ms cubic-bezier(0, 0, 0.2, 1);
    opacity: 0;
}

.mdc-select--open .mdc-select__bottom-line {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
    transform: scaleY(2);
}

.mdc-select--open .mdc-select__bottom-line::after {
    opacity: 1;
}

.mdc-select--disabled,
.mdc-select[disabled] {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));
    background-image: url(data:image/svg+xml,%3Csvg%20width%3D%2210px%22%20height%3D%225px%22%20viewBox%3D%227%2010%2010%205%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Shape%22%20stroke%3D%22none%22%20fill%3D%22%230%22%20fill-rule%3D%22evenodd%22%20opacity%3D%220.38%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E);
    border-bottom-width: 1px;
    border-bottom-style: dotted;
    opacity: .38;
    cursor: default;
    pointer-events: none;
    user-select: none;
}

.mdc-select--disabled .mdc-select__bottom-line,
.mdc-select[disabled] .mdc-select__bottom-line {
    display: none;
}

.mdc-select--theme-dark.mdc-select--disabled,
.mdc-theme--dark .mdc-select--disabled {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-disabled-on-dark, rgba(255, 255, 255, 0.5));
    background-image: url(data:image/svg+xml,%3Csvg%20width%3D%2210px%22%20height%3D%225px%22%20viewBox%3D%227%2010%2010%205%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Shape%22%20stroke%3D%22none%22%20fill%3D%22%23ffffff%22%20fill-rule%3D%22evenodd%22%20opacity%3D%220.38%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E);
    border-bottom: 1px dotted rgba(255, 255, 255, 0.38);
}

.mdc-select--theme-dark.mdc-select[disabled],
.mdc-theme--dark .mdc-select[disabled] {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-disabled-on-dark, rgba(255, 255, 255, 0.5));
    background-image: url(data:image/svg+xml,%3Csvg%20width%3D%2210px%22%20height%3D%225px%22%20viewBox%3D%227%2010%2010%205%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%0A%20%20%20%20%3Cpolygon%20id%3D%22Shape%22%20stroke%3D%22none%22%20fill%3D%22%23ffffff%22%20fill-rule%3D%22evenodd%22%20opacity%3D%220.38%22%20points%3D%227%2010%2012%2015%2017%2010%22%3E%3C%2Fpolygon%3E%0A%3C%2Fsvg%3E);
    border-bottom: 1px dotted rgba(255, 255, 255, 0.38);
}

.mdc-select__menu .mdc-list-item {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75rem;
    text-decoration: inherit;
    text-transform: inherit;
    /* @alternate */
    color: rgba(0, 0, 0, 0.54);
    color: var(--mdc-theme-text-secondary-on-light, rgba(0, 0, 0, 0.54));
}

.mdc-select__menu .mdc-list-item[aria-selected="true"] {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
}

.mdc-select--theme-dark .mdc-select__menu .mdc-list-item,
.mdc-theme--dark .mdc-select__menu .mdc-list-item {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7);
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

.mdc-select--theme-dark .mdc-select__menu .mdc-list-item[aria-selected="true"],
.mdc-theme--dark .mdc-select__menu .mdc-list-item[aria-selected="true"] {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-select__menu .mdc-list-group,
.mdc-select__menu .mdc-list-group>.mdc-list-item:first-child {
    margin-top: 12px;
}

.mdc-select__menu .mdc-list-group {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-hint-on-light, rgba(0, 0, 0, 0.38));
    font-weight: normal;
}

.mdc-select__menu .mdc-list-group .mdc-list-item {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
}

.mdc-select--theme-dark .mdc-select__menu .mdc-list-group,
.mdc-theme--dark .mdc-select__menu .mdc-list-group {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-hint-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-select--theme-dark .mdc-select__menu .mdc-list-group .mdc-list-item,
.mdc-theme--dark .mdc-select__menu .mdc-list-group .mdc-list-item {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-multi-select {
    /* @alternate */
    border-color: rgba(0, 0, 0, 0.38);
    border-color: var(--mdc-theme-text-hint-on-light, rgba(0, 0, 0, 0.38));
    width: 250px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    outline: none;
    appearance: none;
}

.mdc-multi-select--theme-dark,
.mdc-theme--dark .mdc-multi-select {
    /* @alternate */
    border-color: rgba(255, 255, 255, 0.5);
    border-color: var(--mdc-theme-text-hint-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-multi-select .mdc-list-group {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-hint-on-light, rgba(0, 0, 0, 0.38));
    margin: 16px 0 0;
    padding: 0 0 0 16px;
    font-weight: normal;
}

.mdc-multi-select .mdc-list-group--theme-dark,
.mdc-theme--dark .mdc-multi-select .mdc-list-group {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-hint-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-multi-select .mdc-list-group:last-child {
    margin-bottom: 16px;
}

.mdc-multi-select .mdc-list-group .mdc-list-divider {
    margin-left: -16px;
}

.mdc-multi-select .mdc-list-item {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    margin: 0 0 0 -16px;
    padding: 0 16px;
}

.mdc-multi-select .mdc-list-item--theme-dark,
.mdc-theme--dark .mdc-multi-select .mdc-list-item {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-multi-select .mdc-list-item:first-child {
    margin-top: 12px;
}

.mdc-multi-select .mdc-list-item:last-child {
    margin-bottom: 8px;
}

.mdc-multi-select .mdc-list-item:checked {
    /* @alternate */
    background-color: #fff;
    background-color: var(--mdc-theme-background, #fff);
}

.mdc-multi-select .mdc-list-item:checked--theme-dark,
.mdc-theme--dark .mdc-multi-select .mdc-list-item:checked {
    /* @alternate */
    background-color: white;
    background-color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-multi-select .mdc-list-divider {
    margin-bottom: 8px;
    padding-top: 8px;
    font-size: 0;
}

.mdc-multi-select:focus .mdc-list-item:checked {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-multi-select:focus .mdc-list-item:checked--theme-dark,
.mdc-theme--dark .mdc-multi-select:focus .mdc-list-item:checked {
    /* @alternate */
    background-color: white;
    background-color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-select-scroll-lock {
    overflow: hidden;
}


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */

@keyframes mdc-slider-emphasize {
    0% {
        animation-timing-function: ease-out;
    }
    50% {
        animation-timing-function: ease-in;
        transform: scale(0.85);
    }
    100% {
        transform: scale(0.571);
    }
}

.mdc-slider {
    position: relative;
    width: 100%;
    height: 48px;
    cursor: pointer;
    touch-action: pan-x;
    -webkit-tap-highlight-color: transparent;
}

.mdc-slider:not(.mdc-slider--disabled) .mdc-slider__track {
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-slider:not(.mdc-slider--disabled) .mdc-slider__track-container {
    background-color: rgba(229, 45, 39, 0.26);
}

.mdc-slider:not(.mdc-slider--disabled) .mdc-slider__track-marker::after,
.mdc-slider:not(.mdc-slider--disabled) .mdc-slider__track-marker-container::after {
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-slider:not(.mdc-slider--disabled) .mdc-slider__thumb {
    /* @alternate */
    fill: #e52d27;
    fill: var(--mdc-theme-secondary, #e52d27);
    /* @alternate */
    stroke: #e52d27;
    stroke: var(--mdc-theme-secondary, #e52d27);
}

.mdc-slider:not(.mdc-slider--disabled) .mdc-slider__focus-ring {
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-slider:not(.mdc-slider--disabled) .mdc-slider__pin {
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-slider:not(.mdc-slider--disabled) .mdc-slider__pin {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-slider--disabled .mdc-slider__track {
    background-color: #9a9a9a;
}

.mdc-slider--disabled .mdc-slider__track-container {
    background-color: rgba(154, 154, 154, 0.26);
}

.mdc-slider--disabled .mdc-slider__track-marker::after,
.mdc-slider--disabled .mdc-slider__track-marker-container::after {
    background-color: #9a9a9a;
}

.mdc-slider--disabled .mdc-slider__thumb {
    fill: #9a9a9a;
    stroke: #9a9a9a;
}

.mdc-slider--disabled .mdc-slider__thumb {
    /* @alternate */
    stroke: white;
    stroke: var(--mdc-slider-bg-color-behind-component, white);
}

.mdc-slider--theme-dark.mdc-slider--disabled .mdc-slider__track,
.mdc-theme--dark .mdc-slider--disabled .mdc-slider__track {
    background-color: #787878;
}

.mdc-slider--theme-dark.mdc-slider--disabled .mdc-slider__track-container,
.mdc-theme--dark .mdc-slider--disabled .mdc-slider__track-container {
    background-color: rgba(120, 120, 120, 0.26);
}

.mdc-slider--theme-dark.mdc-slider--disabled .mdc-slider__track-marker::after,
.mdc-slider--theme-dark.mdc-slider--disabled .mdc-slider__track-marker-container::after,
.mdc-theme--dark .mdc-slider--disabled .mdc-slider__track-marker::after,
.mdc-theme--dark .mdc-slider--disabled .mdc-slider__track-marker-container::after {
    background-color: #787878;
}

.mdc-slider--theme-dark.mdc-slider--disabled .mdc-slider__thumb,
.mdc-theme--dark .mdc-slider--disabled .mdc-slider__thumb {
    fill: #787878;
    stroke: #787878;
}

.mdc-slider--theme-dark.mdc-slider--disabled .mdc-slider__thumb,
.mdc-theme--dark .mdc-slider--disabled .mdc-slider__thumb {
    /* @alternate */
    stroke: #333;
    stroke: var(--mdc-slider-bg-color-behind-component, #333);
}

.mdc-slider:focus {
    outline: none;
}

.mdc-slider__track-container {
    position: absolute;
    top: 50%;
    width: 100%;
    height: 2px;
    overflow: hidden;
}

.mdc-slider__track {
    position: absolute;
    width: 100%;
    height: 100%;
    transform-origin: left top;
    will-change: transform;
}

[dir="rtl"] .mdc-slider .mdc-slider__track,
.mdc-slider[dir="rtl"] .mdc-slider__track {
    transform-origin: right top;
}

.mdc-slider__track-marker-container {
    display: flex;
    margin-right: 0;
    margin-left: -1px;
    visibility: hidden;
}

[dir="rtl"] .mdc-slider .mdc-slider__track-marker-container,
.mdc-slider[dir="rtl"] .mdc-slider__track-marker-container {
    margin-right: -1px;
    margin-left: 0;
}

.mdc-slider__track-marker-container::after {
    display: block;
    width: 2px;
    height: 2px;
    content: "";
}

.mdc-slider__track-marker {
    flex: 1;
}

.mdc-slider__track-marker::after {
    display: block;
    width: 2px;
    height: 2px;
    content: "";
}

.mdc-slider__track-marker:first-child::after {
    width: 3px;
}

.mdc-slider__thumb-container {
    position: absolute;
    top: 15px;
    left: 0;
    width: 21px;
    height: 100%;
    user-select: none;
    will-change: transform;
}

.mdc-slider__thumb {
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(0.571);
    transition: transform 100ms ease-out, fill 100ms ease-out, stroke 100ms ease-out;
    stroke-width: 3.5;
}

.mdc-slider__focus-ring {
    width: 21px;
    height: 21px;
    transition: transform 266.67ms ease-out, opacity 266.67ms ease-out, background-color 266.67ms ease-out;
    border-radius: 50%;
    opacity: 0;
}

.mdc-slider__pin {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    margin-top: -2px;
    margin-left: -2px;
    transform: rotate(-45deg) scale(0) translate(0, 0);
    transition: transform 100ms ease-out;
    border-radius: 50% 50% 50% 0%;
    /**
     * Ensuring that the pin is higher than the thumb in the stacking order
     * removes some rendering jank observed in Chrome.
     */
    z-index: 1;
}

.mdc-slider__pin-value-marker {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.25rem;
    text-decoration: inherit;
    text-transform: inherit;
    transform: rotate(45deg);
}

.mdc-slider--active .mdc-slider__thumb {
    transform: scale3d(1, 1, 1);
}

.mdc-slider--focus .mdc-slider__thumb {
    animation: mdc-slider-emphasize 266.67ms linear;
}

.mdc-slider--focus .mdc-slider__focus-ring {
    transform: scale3d(1.55, 1.55, 1.55);
    opacity: .25;
}

.mdc-slider--disabled {
    cursor: auto;
}

.mdc-slider--in-transit .mdc-slider__thumb {
    transition-delay: 140ms;
}

.mdc-slider--in-transit .mdc-slider__thumb-container,
.mdc-slider--in-transit .mdc-slider__track,
.mdc-slider:focus:not(.mdc-slider--active) .mdc-slider__thumb-container,
.mdc-slider:focus:not(.mdc-slider--active) .mdc-slider__track {
    transition: transform 80ms ease;
}

.mdc-slider--discrete.mdc-slider--active .mdc-slider__thumb {
    transform: scale(calc(12 / 21));
}

.mdc-slider--discrete.mdc-slider--active .mdc-slider__pin {
    transform: rotate(-45deg) scale(1) translate(19px, -20px);
}

.mdc-slider--discrete.mdc-slider--focus .mdc-slider__thumb {
    animation: none;
}

.mdc-slider--discrete.mdc-slider--display-markers .mdc-slider__track-marker-container {
    visibility: visible;
}


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/* postcss-bem-linter: define snackbar */

.mdc-snackbar {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 50%;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
    padding-right: 24px;
    padding-left: 24px;
    transform: translate(-50%, 100%);
    transition: transform 0.25s 0ms cubic-bezier(0.4, 0, 1, 1);
    background-color: #323232;
    pointer-events: none;
    will-change: transform;
    /* stylelint-disable plugin/selector-bem-pattern */
    /* stylelint-enable plugin/selector-bem-pattern */
}

.mdc-snackbar--theme-dark .mdc-snackbar,
.mdc-theme--dark .mdc-snackbar {
    background-color: #fafafa;
}

@media (max-width: 599px) {
    .mdc-snackbar {
        left: 0;
        width: 100%;
        transform: translate(0, 100%);
    }
}

@media (min-width: 600px) {
    .mdc-snackbar {
        min-width: 288px;
        max-width: 568px;
        border-radius: 2px;
    }
}

@media (min-width: 600px) {
    .mdc-snackbar--align-start {
        left: 24px;
        right: initial;
        bottom: 24px;
        transform: translate(0, 200%);
    }
    [dir="rtl"] .mdc-snackbar--align-start,
    .mdc-snackbar--align-start[dir="rtl"] {
        left: initial;
        right: 24px;
    }
}

@media (max-width: 599px) {
    .mdc-snackbar--align-start {
        bottom: 0;
        left: 0;
        width: 100%;
        transform: translate(0, 100%);
    }
}

.mdc-snackbar--active {
    transform: translate(0);
    transition: transform 0.25s 0ms cubic-bezier(0, 0, 0.2, 1);
    pointer-events: auto;
}

.mdc-snackbar--active:not(.mdc-snackbar--align-start) {
    transform: translate(-50%, 0);
}

@media (max-width: 599px) {
    .mdc-snackbar--active:not(.mdc-snackbar--align-start) {
        bottom: 0;
        left: 0;
        width: 100%;
        transform: translate(0);
    }
}

.mdc-snackbar__action-wrapper {
    padding-left: 24px;
    padding-right: 0;
}

[dir="rtl"] .mdc-snackbar__action-wrapper,
.mdc-snackbar__action-wrapper[dir="rtl"] {
    padding-left: 0;
    padding-right: 24px;
}

.mdc-snackbar--action-on-bottom {
    flex-direction: column;
}

.mdc-snackbar--action-on-bottom .mdc-snackbar__text {
    margin-right: inherit;
}

.mdc-snackbar--action-on-bottom .mdc-snackbar__action-wrapper {
    margin-left: auto;
    margin-right: 0;
    flex-direction: column;
    justify-content: flex-start;
    margin-top: -12px;
    margin-bottom: 8px;
}

[dir="rtl"] .mdc-snackbar--action-on-bottom .mdc-snackbar__action-wrapper,
.mdc-snackbar--action-on-bottom .mdc-snackbar__action-wrapper[dir="rtl"] {
    margin-left: 0;
    margin-right: auto;
}

.mdc-snackbar__text {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.25rem;
    text-decoration: inherit;
    text-transform: inherit;
    margin-left: 0;
    margin-right: auto;
    display: flex;
    align-items: center;
    height: 48px;
    transition: opacity 0.3s 0ms cubic-bezier(0.4, 0, 1, 1);
    opacity: 0;
    color: white;
}

[dir="rtl"] .mdc-snackbar .mdc-snackbar__text,
.mdc-snackbar[dir="rtl"] .mdc-snackbar__text {
    margin-left: auto;
    margin-right: 0;
}

.mdc-snackbar--theme-dark .mdc-snackbar__text,
.mdc-theme--dark .mdc-snackbar__text {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
}

@media (min-width: 600px) {
    .mdc-snackbar__text {
        padding-left: 0;
        padding-right: 24px;
    }
    [dir="rtl"] .mdc-snackbar__text,
    .mdc-snackbar__text[dir="rtl"] {
        padding-left: 24px;
        padding-right: 0;
    }
}

.mdc-snackbar--multiline .mdc-snackbar__text {
    height: 80px;
}

.mdc-snackbar--multiline.mdc-snackbar--action-on-bottom .mdc-snackbar__text {
    margin: 0;
}

.mdc-snackbar__action-button {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 2.25rem;
    text-decoration: none;
    text-transform: uppercase;
    /* @alternate */
    color: #e52d27;
    color: var(--mdc-theme-secondary, #e52d27);
    padding: 0;
    transition: opacity 0.3s 0ms cubic-bezier(0.4, 0, 1, 1);
    border: none;
    outline: none;
    background-color: transparent;
    opacity: 0;
    user-select: none;
    -webkit-appearance: none;
    visibility: hidden;
}

.mdc-snackbar--theme-dark .mdc-snackbar__action-button,
.mdc-theme--dark .mdc-snackbar__action-button {
    /* @alternate */
    color: #00a9f4;
    color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-snackbar__action-button:hover {
    cursor: pointer;
}

.mdc-snackbar__action-button::-moz-focus-inner {
    border: 0;
}

.mdc-snackbar__action-button:not([aria-hidden]) {
    visibility: inherit;
}

.mdc-snackbar--active .mdc-snackbar__text,
.mdc-snackbar--active .mdc-snackbar__action-button:not([aria-hidden]) {
    transition: opacity 0.3s 0ms cubic-bezier(0.4, 0, 1, 1);
    opacity: 1;
}


/* postcss-bem-linter: end */


/**
 * The css property used for elevation. In most cases this should not be changed. It is exposed
 * as a variable for abstraction / easy use when needing to reference the property directly, for
 * example in a `will-change` rule.
 */


/**
 * The default duration value for elevation transitions.
 */


/**
 * The default easing value for elevation transitions.
 */


/**
 * Applies the correct CSS rules to an element to give it the elevation specified by $z-value.
 * The $z-value must be between 0 and 24.
 * If $color has an alpha channel, it will be ignored and overridden. To increase the opacity of the shadow, use
 * $opacity-boost.
 */


/**
 * Returns a string that can be used as the value for a `transition` property for elevation.
 * Calling this function directly is useful in situations where a component needs to transition
 * more than one property.
 *
 * ```scss
 * .foo {
 *   transition: mdc-elevation-transition-rule(), opacity 100ms ease;
 *   will-change: $mdc-elevation-property, opacity;
 * }
 * ```
 */


/**
 * Applies the correct css rules needed to have an element transition between elevations.
 * This mixin should be applied to elements whose elevation values will change depending on their
 * context (e.g. when active or disabled).
 */

.mdc-switch {
    display: inline-block;
    position: relative;
}

.mdc-switch .mdc-switch__native-control:enabled:not(:checked)~.mdc-switch__background::before {
    background-color: #000;
}

.mdc-switch .mdc-switch__native-control:enabled:not(:checked)~.mdc-switch__background .mdc-switch__knob {
    background-color: #fafafa;
}

.mdc-switch .mdc-switch__native-control:enabled:not(:checked)~.mdc-switch__background .mdc-switch__knob::before {
    background-color: #9e9e9e;
}

.mdc-switch--theme-dark .mdc-switch__native-control:enabled:not(:checked)~.mdc-switch__background::before,
.mdc-theme--dark .mdc-switch .mdc-switch__native-control:enabled:not(:checked)~.mdc-switch__background::before {
    background-color: #fff;
}

.mdc-switch--theme-dark .mdc-switch__native-control:enabled:not(:checked)~.mdc-switch__background .mdc-switch__knob,
.mdc-theme--dark .mdc-switch .mdc-switch__native-control:enabled:not(:checked)~.mdc-switch__background .mdc-switch__knob {
    background-color: #bdbdbd;
}

.mdc-switch--theme-dark .mdc-switch__native-control:enabled:not(:checked)~.mdc-switch__background .mdc-switch__knob::before,
.mdc-theme--dark .mdc-switch .mdc-switch__native-control:enabled:not(:checked)~.mdc-switch__background .mdc-switch__knob::before {
    background-color: #f1f1f1;
}

.mdc-switch .mdc-switch__native-control:enabled:checked~.mdc-switch__background::before {
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-switch .mdc-switch__native-control:enabled:checked~.mdc-switch__background .mdc-switch__knob {
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-switch .mdc-switch__native-control:enabled:checked~.mdc-switch__background .mdc-switch__knob::before {
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-switch__native-control {
    position: absolute;
    top: -14px;
    left: -14px;
    width: 48px;
    height: 48px;
    display: inline-block;
    margin-top: -3px;
    transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 0;
    cursor: pointer;
    z-index: 2;
}

.mdc-switch__native-control:checked {
    transform: translateX(14px);
}

.mdc-switch__background {
    display: block;
    position: relative;
    width: 34px;
    height: 14px;
    border-radius: 7px;
    outline: none;
    user-select: none;
}

.mdc-switch__background::before {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: opacity 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 7px;
    opacity: .38;
    content: "";
}

.mdc-switch--theme-dark .mdc-switch__background::before,
.mdc-theme--dark .mdc-switch__background::before {
    opacity: .3;
}

.mdc-switch__background .mdc-switch__knob {
    box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
    display: block;
    position: absolute;
    top: -3px;
    left: 0;
    width: 20px;
    height: 20px;
    transform: translateX(0);
    transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 10px;
    z-index: 1;
}

.mdc-switch__background .mdc-switch__knob::before {
    position: absolute;
    top: -14px;
    left: -14px;
    width: 48px;
    height: 48px;
    transform: scale(0);
    transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 24px;
    opacity: .2;
    content: "";
}

.mdc-switch__native-control:focus~.mdc-switch__background .mdc-switch__knob::before {
    position: absolute;
    width: 48px;
    height: 48px;
    transform: scale(1);
    transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 24px;
}

.mdc-switch--theme-dark .mdc-switch__native-control:focus~.mdc-switch__background .mdc-switch__knob::before,
.mdc-theme--dark .mdc-switch__native-control:focus~.mdc-switch__background .mdc-switch__knob::before {
    opacity: .14;
}

.mdc-switch__native-control:checked~.mdc-switch__background::before {
    opacity: .5;
}

.mdc-switch__native-control:checked~.mdc-switch__background .mdc-switch__knob {
    transform: translateX(14px);
    transition: transform 90ms cubic-bezier(0.4, 0, 0.2, 1), background-color 90ms cubic-bezier(0.4, 0, 0.2, 1);
}

.mdc-switch__native-control:checked~.mdc-switch__background .mdc-switch__knob::before {
    opacity: .15;
}

.mdc-switch__native-control:disabled {
    cursor: initial;
}

.mdc-switch__native-control:disabled~.mdc-switch__background::before {
    background-color: #000;
    opacity: .12;
}

.mdc-switch--theme-dark .mdc-switch__native-control:disabled~.mdc-switch__background::before,
.mdc-theme--dark .mdc-switch__native-control:disabled~.mdc-switch__background::before {
    background-color: #fff;
    opacity: .1;
}

.mdc-switch__native-control:disabled~.mdc-switch__background .mdc-switch__knob {
    background-color: #bdbdbd;
}

.mdc-switch--theme-dark .mdc-switch__native-control:disabled~.mdc-switch__background .mdc-switch__knob,
.mdc-theme--dark .mdc-switch__native-control:disabled~.mdc-switch__background .mdc-switch__knob {
    background-color: #424242;
}


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */

.mdc-tab {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5rem;
    text-decoration: inherit;
    text-transform: inherit;
    display: table-cell;
    position: relative;
    box-sizing: border-box;
    min-width: 160px;
    min-height: 48px;
    padding: 0 24px;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    overflow: hidden;
    vertical-align: middle;
    /* @alternate */
    color: rgba(0, 0, 0, 0.54);
    color: var(--mdc-theme-text-secondary-on-light, rgba(0, 0, 0, 0.54));
}

.mdc-tab:hover {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
}

.mdc-tab:focus {
    /* @alternate */
    outline-color: rgba(0, 0, 0, 0.54);
    outline-color: var(--mdc-theme-text-secondary-on-light, rgba(0, 0, 0, 0.54));
}

.mdc-tab-bar--theme-dark .mdc-tab,
.mdc-theme--dark .mdc-tab {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7);
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

.mdc-tab-bar--theme-dark .mdc-tab:hover,
.mdc-theme--dark .mdc-tab:hover {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-tab-bar--theme-dark .mdc-tab:focus,
.mdc-theme--dark .mdc-tab:focus {
    /* @alternate */
    outline-color: rgba(255, 255, 255, 0.7);
    outline-color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

@media screen and (max-width: 600px) {
    .mdc-tab {
        min-width: 72px;
        padding: 0 12px;
    }
}

.mdc-tab__icon {
    display: block;
    margin: 0 auto;
    width: 24px;
    height: 24px;
}

.mdc-tab-bar--icons-with-text .mdc-tab__icon {
    margin-top: 4px;
}

.mdc-tab__icon-text {
    display: block;
    margin: 0 auto;
}

.mdc-tab__icon+.mdc-tab__icon-text {
    padding-top: 6px;
}

.mdc-tab--active {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
}

.mdc-tab-bar--theme-dark .mdc-tab--active,
.mdc-theme--dark .mdc-tab--active {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-tab--active::before {
    bottom: 0;
}

.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab {
    position: relative;
}

.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab::after {
    display: none;
    position: absolute;
    top: 46px;
    left: 0;
    width: calc(100% - 4px);
    height: 2px;
    content: "";
    pointer-events: none;
    /* @alternate */
    background-color: rgba(0, 0, 0, 0.87);
    background-color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
}

.mdc-tab-bar--theme-dark.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab::after,
.mdc-theme--dark .mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab::after {
    /* @alternate */
    background-color: white;
    background-color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-toolbar .mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab::after {
    /* @alternate */
    background-color: rgba(0, 0, 0, 0.87);
    background-color: var(--mdc-theme-text-primary-on-primary, rgba(0, 0, 0, 0.87));
}

.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab--active::after,
.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab:active::after,
.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab:hover::after {
    display: block;
}

.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab:not(.mdc-tab--active):hover::after {
    opacity: .38;
}

.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab--active,
.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab:not(.mdc-tab--active):active::after {
    opacity: .87;
}

.mdc-tab-bar--icons-with-text:not(.mdc-tab-bar-upgraded) .mdc-tab::after {
    top: 70px;
}

.mdc-tab.mdc-ripple-upgraded {
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: transparent;
}

.mdc-tab.mdc-ripple-upgraded::before,
.mdc-tab.mdc-ripple-upgraded::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
    will-change: transform, opacity;
}

.mdc-tab.mdc-ripple-upgraded::before {
    transition: opacity 15ms linear;
}

.mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded::after {
    top: 0;
    left: 0;
    transform: scale(0);
    transform-origin: center center;
}

.mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded--unbounded::after {
    top: var(--mdc-ripple-top, 0);
    left: var(--mdc-ripple-left, 0);
}

.mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded--foreground-activation::after {
    animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
}

.mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded--foreground-deactivation::after {
    animation: 150ms mdc-ripple-fg-opacity-out;
    transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-tab.mdc-ripple-upgraded::before,
.mdc-tab.mdc-ripple-upgraded::after {
    background-color: black;
}

.mdc-tab.mdc-ripple-upgraded:hover::before {
    opacity: 0.04;
}

.mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):focus::before,
.mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-tab.mdc-ripple-upgraded::before,
.mdc-tab.mdc-ripple-upgraded::after {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
}

.mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded::before {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded--unbounded::before {
    top: var(--mdc-ripple-top, calc(50% - 50%));
    left: var(--mdc-ripple-left, calc(50% - 50%));
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded::after {
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-tab-bar--theme-dark .mdc-tab.mdc-ripple-upgraded::before,
.mdc-tab-bar--theme-dark .mdc-tab.mdc-ripple-upgraded::after,
.mdc-theme--dark .mdc-tab.mdc-ripple-upgraded::before,
.mdc-theme--dark .mdc-tab.mdc-ripple-upgraded::after {
    /* @alternate */
    background-color: white;
}

@supports not (-ms-ime-align: auto) {
    .mdc-tab-bar--theme-dark .mdc-tab.mdc-ripple-upgraded::before,
    .mdc-tab-bar--theme-dark .mdc-tab.mdc-ripple-upgraded::after,
    .mdc-theme--dark .mdc-tab.mdc-ripple-upgraded::before,
    .mdc-theme--dark .mdc-tab.mdc-ripple-upgraded::after {
        background-color: var(--mdc-theme-text-primary-on-dark, white);
    }
}

.mdc-tab-bar--theme-dark .mdc-tab.mdc-ripple-upgraded:hover::before,
.mdc-theme--dark .mdc-tab.mdc-ripple-upgraded:hover::before {
    opacity: 0.08;
}

.mdc-tab-bar--theme-dark .mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):focus::before,
.mdc-tab-bar--theme-dark .mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded--background-focused::before,
.mdc-theme--dark .mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):focus::before,
.mdc-theme--dark .mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.24;
}

.mdc-tab-bar--theme-dark .mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded)::after,
.mdc-theme--dark .mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-tab-bar--theme-dark .mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):active::after,
.mdc-theme--dark .mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.32;
}

.mdc-tab-bar--theme-dark .mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded,
.mdc-theme--dark .mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32;
}

.mdc-toolbar .mdc-tab.mdc-ripple-upgraded::before,
.mdc-toolbar .mdc-tab.mdc-ripple-upgraded::after {
    /* @alternate */
    background-color: rgba(0, 0, 0, 0.87);
}

@supports not (-ms-ime-align: auto) {
    .mdc-toolbar .mdc-tab.mdc-ripple-upgraded::before,
    .mdc-toolbar .mdc-tab.mdc-ripple-upgraded::after {
        background-color: var(--mdc-theme-text-primary-on-primary, rgba(0, 0, 0, 0.87));
    }
}

.mdc-toolbar .mdc-tab.mdc-ripple-upgraded:hover::before {
    opacity: 0.04;
}

.mdc-toolbar .mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):focus::before,
.mdc-toolbar .mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-toolbar .mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-toolbar .mdc-tab.mdc-ripple-upgraded:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-toolbar .mdc-tab.mdc-ripple-upgraded.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-tab.mdc-ripple-upgraded:focus {
    outline: none;
}


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */

.mdc-tab-bar {
    display: table;
    position: relative;
    height: 48px;
    margin: 0 auto;
    text-transform: uppercase;
}

.mdc-tab-bar__indicator {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    /* @alternate */
    background-color: rgba(0, 0, 0, 0.87);
    background-color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    transform-origin: left top;
    transition: transform 240ms 0ms cubic-bezier(0, 0, 0.2, 1);
    will-change: transform;
    visibility: hidden;
}

.mdc-tab-bar--theme-dark .mdc-tab-bar__indicator,
.mdc-theme--dark .mdc-tab-bar__indicator {
    /* @alternate */
    background-color: white;
    background-color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-toolbar .mdc-tab-bar .mdc-tab {
    /* @alternate */
    color: rgba(0, 0, 0, 0.54);
    color: var(--mdc-theme-text-secondary-on-primary, rgba(0, 0, 0, 0.54));
}

.mdc-tab-bar--theme-dark .mdc-toolbar .mdc-tab-bar .mdc-tab,
.mdc-theme--dark .mdc-toolbar .mdc-tab-bar .mdc-tab {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7);
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

.mdc-toolbar .mdc-tab-bar .mdc-tab--active,
.mdc-toolbar .mdc-tab-bar .mdc-tab:hover {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-primary, rgba(0, 0, 0, 0.87));
}

.mdc-tab-bar--theme-dark .mdc-toolbar .mdc-tab-bar .mdc-tab--active,
.mdc-theme--dark .mdc-toolbar .mdc-tab-bar .mdc-tab--active,
.mdc-tab-bar--theme-dark .mdc-toolbar .mdc-tab-bar .mdc-tab:hover,
.mdc-theme--dark .mdc-toolbar .mdc-tab-bar .mdc-tab:hover {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-toolbar .mdc-tab-bar .mdc-tab-bar__indicator {
    /* @alternate */
    background-color: rgba(0, 0, 0, 0.87);
    background-color: var(--mdc-theme-text-primary-on-primary, rgba(0, 0, 0, 0.87));
}

.mdc-tab-bar--theme-dark .mdc-toolbar .mdc-tab-bar .mdc-tab-bar__indicator,
.mdc-theme--dark .mdc-toolbar .mdc-tab-bar .mdc-tab-bar__indicator {
    /* @alternate */
    background-color: white;
    background-color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-tab-bar--icons-with-text {
    height: 72px;
}

.mdc-tab-bar--indicator-primary .mdc-tab-bar__indicator,
.mdc-toolbar .mdc-tab-bar--indicator-primary .mdc-tab-bar__indicator {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-tab-bar--theme-dark .mdc-tab-bar--indicator-primary .mdc-tab-bar__indicator,
.mdc-theme--dark .mdc-tab-bar--indicator-primary .mdc-tab-bar__indicator,
.mdc-tab-bar--theme-dark .mdc-toolbar .mdc-tab-bar--indicator-primary .mdc-tab-bar__indicator,
.mdc-theme--dark .mdc-toolbar .mdc-tab-bar--indicator-primary .mdc-tab-bar__indicator {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-tab-bar--indicator-primary.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab::after,
.mdc-toolbar .mdc-tab-bar--indicator-primary.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab::after {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-tab-bar--indicator-accent .mdc-tab-bar__indicator,
.mdc-toolbar .mdc-tab-bar--indicator-accent .mdc-tab-bar__indicator {
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-tab-bar--theme-dark .mdc-tab-bar--indicator-accent .mdc-tab-bar__indicator,
.mdc-theme--dark .mdc-tab-bar--indicator-accent .mdc-tab-bar__indicator,
.mdc-tab-bar--theme-dark .mdc-toolbar .mdc-tab-bar--indicator-accent .mdc-tab-bar__indicator,
.mdc-theme--dark .mdc-toolbar .mdc-tab-bar--indicator-accent .mdc-tab-bar__indicator {
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-tab-bar--indicator-accent.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab::after,
.mdc-toolbar .mdc-tab-bar--indicator-accent.mdc-tab-bar:not(.mdc-tab-bar-upgraded) .mdc-tab::after {
    /* @alternate */
    background-color: #e52d27;
    background-color: var(--mdc-theme-secondary, #e52d27);
}


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */

.mdc-tab-bar-scroller {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    background-color: inherit;
    overflow: hidden;
}

.mdc-tab-bar-scroller__scroll-frame {
    display: flex;
    position: relative;
    flex: 1;
    justify-content: flex-start;
    overflow: hidden;
}

.mdc-tab-bar-scroller__scroll-frame__tabs {
    transition: transform 240ms 0ms cubic-bezier(0, 0, 0.2, 1);
    will-change: transform;
}

.mdc-tab-bar-scroller__indicator {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    cursor: pointer;
    visibility: hidden;
    /* @alternate */
    color: rgba(0, 0, 0, 0.54);
    color: var(--mdc-theme-text-secondary-on-light, rgba(0, 0, 0, 0.54));
}

.mdc-tab-bar--theme-dark .mdc-tab-bar-scroller__indicator,
.mdc-theme--dark .mdc-tab-bar-scroller__indicator {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7);
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

.mdc-tab-bar-scroller__indicator:hover {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
}

.mdc-tab-bar--theme-dark .mdc-tab-bar-scroller__indicator:hover,
.mdc-theme--dark .mdc-tab-bar-scroller__indicator:hover {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-tab-bar-scroller__indicator__inner {
    color: inherit;
    text-decoration: inherit;
    cursor: inherit;
}

.mdc-tab-bar-scroller__indicator__inner:focus {
    outline-color: inherit;
}

[dir="rtl"] .mdc-tab-bar-scroller .mdc-tab-bar-scroller__indicator__inner,
.mdc-tab-bar-scroller[dir="rtl"] .mdc-tab-bar-scroller__indicator__inner {
    transform: rotate(180deg);
}

.mdc-tab-bar-scroller__indicator__inner:hover {
    color: inherit;
}

.mdc-tab-bar--theme-dark .mdc-tab-bar-scroller__indicator__inner:hover,
.mdc-theme--dark .mdc-tab-bar-scroller__indicator__inner:hover {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7);
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

.mdc-tab-bar-scroller__indicator--enabled {
    visibility: visible;
}


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */

.mdc-text-field__bottom-line {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    transform: scaleX(0);
    transition: transform 180ms cubic-bezier(0.4, 0, 0.2, 1), opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 0;
    z-index: 2;
}

.mdc-text-field__bottom-line--active {
    transform: scaleX(1);
}

.mdc-text-field .mdc-text-field__input:focus~.mdc-text-field__bottom-line {
    opacity: 1;
}

.mdc-text-field-helper-text {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-hint-on-light, rgba(0, 0, 0, 0.38));
    margin: 0;
    transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 0;
    font-size: .75rem;
    will-change: opacity;
}

.mdc-text-field-helper-text--theme-dark,
.mdc-theme--dark .mdc-text-field-helper-text {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-hint-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-text-field+.mdc-text-field-helper-text {
    margin-bottom: 8px;
}

.mdc-text-field-helper-text--persistent {
    transition: none;
    opacity: 1;
    will-change: initial;
}

@keyframes invalid-shake-float-above-standard {
    0% {
        transform: translateX(0) translateY(-100%) scale(0.75, 0.75);
    }
    33% {
        animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
        transform: translateX(10px) translateY(-100%) scale(0.75, 0.75);
    }
    66% {
        animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
        transform: translateX(-5px) translateY(-100%) scale(0.75, 0.75);
    }
    100% {
        transform: translateX(0) translateY(-100%) scale(0.75, 0.75);
    }
}

@keyframes invalid-shake-float-above-box {
    0% {
        transform: translateX(0) translateY(-50%) scale(0.75, 0.75);
    }
    33% {
        animation-timing-function: cubic-bezier(0.5, 0, 0.70173, 0.49582);
        transform: translateX(10px) translateY(-50%) scale(0.75, 0.75);
    }
    66% {
        animation-timing-function: cubic-bezier(0.30244, 0.38135, 0.55, 0.95635);
        transform: translateX(-5px) translateY(-50%) scale(0.75, 0.75);
    }
    100% {
        transform: translateX(0) translateY(-50%) scale(0.75, 0.75);
    }
}

.mdc-text-field {
    display: inline-block;
    position: relative;
    margin-bottom: 8px;
    will-change: opacity, transform, color;
}

.mdc-text-field__input {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    letter-spacing: 0.04em;
    width: 100%;
    padding: 0 0 8px;
    transition: opacity 180ms cubic-bezier(0.4, 0, 0.2, 1);
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.5);
    background: none;
    font-size: inherit;
    appearance: none;
}

.mdc-text-field__input::placeholder {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-hint-on-light, rgba(0, 0, 0, 0.38));
    transition: color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1;
}

.mdc-text-field__input:hover {
    border-color: black;
}

.mdc-text-field__input:focus {
    outline: none;
}

.mdc-text-field__input:focus::placeholder {
    color: rgba(255, 255, 255, 0.3);
}

.mdc-text-field__input:invalid {
    box-shadow: none;
}

.mdc-text-field__input--theme-dark,
.mdc-theme--dark .mdc-text-field__input {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.mdc-text-field__input--theme-dark:hover,
.mdc-theme--dark .mdc-text-field__input:hover {
    border-bottom: 1px solid white;
}

.mdc-text-field__input--theme-dark::placeholder,
.mdc-theme--dark .mdc-text-field__input::placeholder {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-hint-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-text-field__input--theme-dark:focus::placeholder,
.mdc-theme--dark .mdc-text-field__input:focus::placeholder {
    color: rgba(0, 0, 0, 0.38);
}

.mdc-text-field__label {
    position: absolute;
    bottom: 8px;
    left: 0;
    transform-origin: left top;
    transition: transform 180ms cubic-bezier(0.4, 0, 0.2, 1), color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    color: rgba(0, 0, 0, 0.5);
    cursor: text;
}

[dir="rtl"] .mdc-text-field .mdc-text-field__label,
.mdc-text-field[dir="rtl"] .mdc-text-field__label {
    right: 0;
    left: auto;
    transform-origin: right top;
}

.mdc-text-field--theme-dark .mdc-text-field__label,
.mdc-theme--dark .mdc-text-field__label {
    color: rgba(255, 255, 255, 0.6);
}

.mdc-text-field__label--float-above {
    transform: translateY(-100%) scale(0.75, 0.75);
    cursor: auto;
}

.mdc-text-field__input:-webkit-autofill+.mdc-text-field__label {
    transform: translateY(-100%) scale(0.75, 0.75);
    cursor: auto;
}

.mdc-text-field--box {
    --mdc-ripple-fg-size: 0;
    --mdc-ripple-left: 0;
    --mdc-ripple-top: 0;
    --mdc-ripple-fg-scale: 1;
    --mdc-ripple-fg-translate-end: 0;
    --mdc-ripple-fg-translate-start: 0;
    -webkit-tap-highlight-color: transparent;
    border-radius: 4px 4px 0 0;
    display: inline-flex;
    position: relative;
    height: 56px;
    background-color: rgba(0, 0, 0, 0.04);
    overflow: hidden;
}

.mdc-text-field--box::before,
.mdc-text-field--box::after {
    position: absolute;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
    content: "";
    will-change: transform, opacity;
}

.mdc-text-field--box::before {
    transition: opacity 15ms linear;
}

.mdc-text-field--box.mdc-ripple-upgraded::after {
    top: 0;
    left: 0;
    transform: scale(0);
    transform-origin: center center;
}

.mdc-text-field--box.mdc-ripple-upgraded--unbounded::after {
    top: var(--mdc-ripple-top, 0);
    left: var(--mdc-ripple-left, 0);
}

.mdc-text-field--box.mdc-ripple-upgraded--foreground-activation::after {
    animation: 225ms mdc-ripple-fg-radius-in forwards, 75ms mdc-ripple-fg-opacity-in forwards;
}

.mdc-text-field--box.mdc-ripple-upgraded--foreground-deactivation::after {
    animation: 150ms mdc-ripple-fg-opacity-out;
    transform: translate(var(--mdc-ripple-fg-translate-end, 0)) scale(var(--mdc-ripple-fg-scale, 1));
}

.mdc-text-field--box::before,
.mdc-text-field--box::after {
    /* @alternate */
    background-color: rgba(0, 0, 0, 0.87);
}

@supports not (-ms-ime-align: auto) {
    .mdc-text-field--box::before,
    .mdc-text-field--box::after {
        background-color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87));
    }
}

.mdc-text-field--box:hover::before {
    opacity: 0.04;
}

.mdc-text-field--box:not(.mdc-ripple-upgraded):focus::before,
.mdc-text-field--box:not(.mdc-ripple-upgraded):focus-within::before,
.mdc-text-field--box.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-text-field--box:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-text-field--box:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-text-field--box.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-text-field--box::before,
.mdc-text-field--box::after {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
}

.mdc-text-field--box.mdc-ripple-upgraded::before {
    top: calc(50% - 100%);
    left: calc(50% - 100%);
    width: 200%;
    height: 200%;
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-text-field--box.mdc-ripple-upgraded--unbounded::before {
    top: var(--mdc-ripple-top, calc(50% - 50%));
    left: var(--mdc-ripple-left, calc(50% - 50%));
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
    transform: scale(var(--mdc-ripple-fg-scale, 0));
}

.mdc-text-field--box.mdc-ripple-upgraded::after {
    width: var(--mdc-ripple-fg-size, 100%);
    height: var(--mdc-ripple-fg-size, 100%);
}

.mdc-text-field--theme-dark.mdc-text-field--box,
.mdc-theme--dark .mdc-text-field--box {
    background-color: rgba(255, 255, 255, 0.1);
}

.mdc-text-field--theme-dark.mdc-text-field--box::before,
.mdc-text-field--theme-dark.mdc-text-field--box::after,
.mdc-theme--dark .mdc-text-field--box::before,
.mdc-theme--dark .mdc-text-field--box::after {
    /* @alternate */
    background-color: white;
}

@supports not (-ms-ime-align: auto) {
    .mdc-text-field--theme-dark.mdc-text-field--box::before,
    .mdc-text-field--theme-dark.mdc-text-field--box::after,
    .mdc-theme--dark .mdc-text-field--box::before,
    .mdc-theme--dark .mdc-text-field--box::after {
        background-color: var(--mdc-theme-text-primary-on-dark, white);
    }
}

.mdc-text-field--theme-dark.mdc-text-field--box:hover::before,
.mdc-theme--dark .mdc-text-field--box:hover::before {
    opacity: 0.08;
}

.mdc-text-field--theme-dark.mdc-text-field--box:not(.mdc-ripple-upgraded):focus::before,
.mdc-text-field--theme-dark.mdc-text-field--box:not(.mdc-ripple-upgraded):focus-within::before,
.mdc-text-field--theme-dark.mdc-text-field--box.mdc-ripple-upgraded--background-focused::before,
.mdc-theme--dark .mdc-text-field--box:not(.mdc-ripple-upgraded):focus::before,
.mdc-theme--dark .mdc-text-field--box:not(.mdc-ripple-upgraded):focus-within::before,
.mdc-theme--dark .mdc-text-field--box.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.24;
}

.mdc-text-field--theme-dark.mdc-text-field--box:not(.mdc-ripple-upgraded)::after,
.mdc-theme--dark .mdc-text-field--box:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-text-field--theme-dark.mdc-text-field--box:not(.mdc-ripple-upgraded):active::after,
.mdc-theme--dark .mdc-text-field--box:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.32;
}

.mdc-text-field--theme-dark.mdc-text-field--box.mdc-ripple-upgraded,
.mdc-theme--dark .mdc-text-field--box.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32;
}

.mdc-text-field--box .mdc-text-field__input {
    align-self: flex-end;
    box-sizing: border-box;
    height: 100%;
    padding: 20px 16px 0;
}

.mdc-text-field--box .mdc-text-field__label {
    left: 16px;
    right: initial;
    position: absolute;
    bottom: 20px;
    width: calc(100% - 48px);
    color: rgba(0, 0, 0, 0.6);
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    overflow: hidden;
    will-change: transform;
}

[dir="rtl"] .mdc-text-field--box .mdc-text-field__label,
.mdc-text-field--box .mdc-text-field__label[dir="rtl"] {
    left: initial;
    right: 16px;
}

.mdc-text-field--theme-dark .mdc-text-field--box .mdc-text-field__label,
.mdc-theme--dark .mdc-text-field--box .mdc-text-field__label {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7);
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

.mdc-text-field--box .mdc-text-field__label--float-above {
    transform: translateY(-50%) scale(0.75, 0.75);
}

.mdc-text-field--box .mdc-text-field__label--float-above.mdc-text-field__label--shake {
    animation: invalid-shake-float-above-box 250ms 1;
}

.mdc-text-field--box.mdc-text-field--disabled {
    color: rgba(255, 255, 255, 0.3);
    border-bottom: none;
    background-color: rgba(0, 0, 0, 0.02);
}

.mdc-text-field--theme-dark.mdc-text-field--box.mdc-text-field--disabled,
.mdc-theme--dark .mdc-text-field--box.mdc-text-field--disabled {
    background-color: #303030;
    color: rgba(0, 0, 0, 0.38);
    border-bottom: none;
}

.mdc-text-field--box.mdc-text-field--disabled .mdc-text-field__label {
    bottom: 20px;
}

.mdc-text-field--box.mdc-text-field--disabled .mdc-text-field__icon {
    color: rgba(0, 0, 0, 0.3);
}

.mdc-text-field--box.mdc-text-field--disabled .mdc-text-field__icon--theme-dark,
.mdc-theme--dark .mdc-text-field--box.mdc-text-field--disabled .mdc-text-field__icon {
    color: rgba(255, 255, 255, 0.3);
}

.mdc-text-field--box.mdc-text-field--dense .mdc-text-field__input {
    padding: 12px 12px 0;
}

.mdc-text-field--box.mdc-text-field--dense .mdc-text-field__label {
    left: 12px;
    right: initial;
    bottom: 20px;
}

[dir="rtl"] .mdc-text-field--box.mdc-text-field--dense .mdc-text-field__label,
.mdc-text-field--box.mdc-text-field--dense .mdc-text-field__label[dir="rtl"] {
    left: initial;
    right: 12px;
}

.mdc-text-field--box.mdc-text-field--dense .mdc-text-field__label--float-above {
    transform: translateY(calc(-75% - 2px)) scale(0.923, 0.923);
}

.mdc-text-field--with-leading-icon .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon .mdc-text-field__icon {
    position: absolute;
    bottom: 16px;
    cursor: pointer;
}

.mdc-text-field--theme-dark .mdc-text-field--with-leading-icon .mdc-text-field__icon,
.mdc-theme--dark .mdc-text-field--with-leading-icon .mdc-text-field__icon,
.mdc-text-field--theme-dark .mdc-text-field--with-trailing-icon .mdc-text-field__icon,
.mdc-theme--dark .mdc-text-field--with-trailing-icon .mdc-text-field__icon {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7);
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7));
}

.mdc-text-field--with-leading-icon .mdc-text-field__input {
    padding-left: 48px;
    padding-right: 15px;
}

[dir="rtl"] .mdc-text-field--with-leading-icon .mdc-text-field__input,
.mdc-text-field--with-leading-icon .mdc-text-field__input[dir="rtl"] {
    padding-left: 15px;
    padding-right: 48px;
}

.mdc-text-field--with-leading-icon .mdc-text-field__icon {
    left: 15px;
    right: initial;
}

[dir="rtl"] .mdc-text-field--with-leading-icon .mdc-text-field__icon,
.mdc-text-field--with-leading-icon .mdc-text-field__icon[dir="rtl"] {
    left: initial;
    right: 15px;
}

.mdc-text-field--with-leading-icon .mdc-text-field__label {
    left: 48px;
    right: initial;
}

[dir="rtl"] .mdc-text-field--with-leading-icon .mdc-text-field__label,
.mdc-text-field--with-leading-icon .mdc-text-field__label[dir="rtl"] {
    left: initial;
    right: 48px;
}

.mdc-text-field--with-trailing-icon .mdc-text-field__input {
    padding-left: 15px;
    padding-right: 48px;
}

[dir="rtl"] .mdc-text-field--with-trailing-icon .mdc-text-field__input,
.mdc-text-field--with-trailing-icon .mdc-text-field__input[dir="rtl"] {
    padding-left: 48px;
    padding-right: 15px;
}

.mdc-text-field--with-trailing-icon .mdc-text-field__icon {
    left: initial;
    right: 15px;
}

[dir="rtl"] .mdc-text-field--with-trailing-icon .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon .mdc-text-field__icon[dir="rtl"] {
    left: 15px;
    right: initial;
}

.mdc-text-field__icon:not([tabindex]),
.mdc-text-field__icon[tabindex="-1"] {
    cursor: default;
    pointer-events: none;
}

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
    bottom: 16px;
    transform: scale(0.8);
}

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input {
    padding-left: 38px;
    padding-right: 12px;
}

[dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input,
.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__input[dir="rtl"] {
    padding-left: 12px;
    padding-right: 38px;
}

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon {
    left: 12px;
    right: initial;
}

[dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon,
.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__icon[dir="rtl"] {
    left: initial;
    right: 12px;
}

.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__label {
    left: 38px;
    right: initial;
}

[dir="rtl"] .mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__label,
.mdc-text-field--with-leading-icon.mdc-text-field--dense .mdc-text-field__label[dir="rtl"] {
    left: initial;
    right: 38px;
}

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input {
    padding-left: 12px;
    padding-right: 38px;
}

[dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input,
.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__input[dir="rtl"] {
    padding-left: 38px;
    padding-right: 12px;
}

.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon {
    left: initial;
    right: 12px;
}

[dir="rtl"] .mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon,
.mdc-text-field--with-trailing-icon.mdc-text-field--dense .mdc-text-field__icon[dir="rtl"] {
    left: 12px;
    right: initial;
}

.mdc-text-field--upgraded:not(.mdc-text-field--fullwidth):not(.mdc-text-field--box) {
    display: inline-flex;
    position: relative;
    align-items: flex-end;
    box-sizing: border-box;
    margin-top: 16px;
}

.mdc-text-field--upgraded:not(.mdc-text-field--fullwidth):not(.mdc-text-field--box):not(.mdc-text-field--textarea) {
    height: 48px;
}

.mdc-text-field--upgraded:not(.mdc-text-field--fullwidth):not(.mdc-text-field--box) .mdc-text-field__label {
    pointer-events: none;
}

.mdc-text-field--invalid .mdc-text-field__label {
    color: #d50000;
}

.mdc-text-field--invalid .mdc-text-field__input {
    border-color: #d50000;
}

.mdc-text-field--invalid .mdc-text-field__bottom-line {
    background-color: #d50000;
}

.mdc-text-field--invalid.mdc-text-field--textarea {
    border-color: #d50000;
}

.mdc-text-field__label--float-above.mdc-text-field__label--shake {
    animation: invalid-shake-float-above-standard 250ms 1;
}

.mdc-text-field--dense {
    margin-top: 12px;
    margin-bottom: 4px;
    font-size: .813rem;
}

.mdc-text-field--dense .mdc-text-field__label--float-above {
    transform: translateY(calc(-100% - 2px)) scale(0.923, 0.923);
}

.mdc-text-field--disabled {
    pointer-events: none;
}

.mdc-text-field--disabled .mdc-text-field__input {
    border-bottom: 1px dotted rgba(35, 31, 32, 0.26);
}

.mdc-text-field--theme-dark.mdc-text-field--disabled .mdc-text-field__input,
.mdc-theme--dark .mdc-text-field--disabled .mdc-text-field__input {
    border-bottom: 1px dotted rgba(255, 255, 255, 0.3);
}

.mdc-text-field--disabled .mdc-text-field__input,
.mdc-text-field--disabled .mdc-text-field__label,
.mdc-text-field--disabled+.mdc-text-field-helper-text {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38);
    color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));
}

.mdc-text-field--theme-dark .mdc-text-field--disabled .mdc-text-field__input,
.mdc-theme--dark .mdc-text-field--disabled .mdc-text-field__input,
.mdc-text-field--theme-dark .mdc-text-field--disabled .mdc-text-field__label,
.mdc-theme--dark .mdc-text-field--disabled .mdc-text-field__label {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-disabled-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-text-field--theme-dark.mdc-text-field--disabled+.mdc-text-field-helper-text,
.mdc-theme--dark .mdc-text-field--disabled+.mdc-text-field-helper-text {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5);
    color: var(--mdc-theme-text-disabled-on-dark, rgba(255, 255, 255, 0.5));
}

.mdc-text-field--disabled .mdc-text-field__label {
    bottom: 8px;
    cursor: default;
}

.mdc-text-field__input:required+.mdc-text-field__label::after {
    margin-left: 1px;
    content: "*";
}

.mdc-text-field--focused .mdc-text-field__input:required+.mdc-text-field__label::after {
    color: #d50000;
}

.mdc-text-field--theme-dark.mdc-text-field--focused .mdc-text-field__input:required+.mdc-text-field__label::after,
.mdc-theme--dark .mdc-text-field--focused .mdc-text-field__input:required+.mdc-text-field__label::after {
    color: #ff6e6e;
}

.mdc-text-field--textarea {
    border-radius: 4px;
    display: flex;
    height: initial;
    transition: none;
    border: 1px solid rgba(0, 0, 0, 0.73);
    overflow: hidden;
}

.mdc-text-field--textarea .mdc-text-field__label {
    border-radius: 4px 4px 0 0;
}

.mdc-text-field--textarea .mdc-text-field__input {
    border-radius: 2px;
}

.mdc-text-field--theme-dark .mdc-text-field--textarea,
.mdc-theme--dark .mdc-text-field--textarea {
    border-color: white;
}

.mdc-text-field--textarea .mdc-text-field__input {
    padding: 16px;
    padding-top: 32px;
    border: 1px solid transparent;
}

.mdc-text-field--textarea .mdc-text-field__input:focus {
    /* @alternate */
    border-color: #00a9f4;
    border-color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-text-field--textarea .mdc-text-field__input:invalid:not(:focus) {
    border-color: #d50000;
}

.mdc-text-field--theme-dark .mdc-text-field--textarea .mdc-text-field__input:hover,
.mdc-theme--dark .mdc-text-field--textarea .mdc-text-field__input:hover {
    border-bottom-color: transparent;
}

.mdc-text-field--theme-dark .mdc-text-field--textarea .mdc-text-field__input:focus,
.mdc-theme--dark .mdc-text-field--textarea .mdc-text-field__input:focus {
    /* @alternate */
    border-color: #e52d27;
    border-color: var(--mdc-theme-secondary, #e52d27);
}

.mdc-text-field--theme-dark .mdc-text-field--textarea .mdc-text-field__input:invalid:not(:focus),
.mdc-theme--dark .mdc-text-field--textarea .mdc-text-field__input:invalid:not(:focus) {
    border-color: #ff6e6e;
}

.mdc-text-field--textarea .mdc-text-field__label {
    left: 1px;
    right: initial;
    top: 18px;
    bottom: auto;
    padding: 8px 16px;
    background-color: white;
}

[dir="rtl"] .mdc-text-field--textarea .mdc-text-field__label,
.mdc-text-field--textarea .mdc-text-field__label[dir="rtl"] {
    left: initial;
    right: 1px;
}

.mdc-text-field--theme-dark .mdc-text-field--textarea .mdc-text-field__label,
.mdc-theme--dark .mdc-text-field--textarea .mdc-text-field__label {
    background-color: #303030;
}

.mdc-text-field--textarea .mdc-text-field__label--float-above {
    transform: translateY(-50%) scale(0.923, 0.923);
}

.mdc-text-field--textarea.mdc-text-field--disabled {
    border-style: solid;
    border-color: rgba(35, 31, 32, 0.26);
    background-color: #f9f9f9;
}

.mdc-text-field--theme-dark .mdc-text-field--textarea.mdc-text-field--disabled,
.mdc-theme--dark .mdc-text-field--textarea.mdc-text-field--disabled {
    border-color: rgba(255, 255, 255, 0.3);
    background-color: #2f2f2f;
}

.mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__label {
    background-color: #f9f9f9;
}

.mdc-text-field--theme-dark .mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__label,
.mdc-theme--dark .mdc-text-field--textarea.mdc-text-field--disabled .mdc-text-field__label {
    background-color: #2f2f2f;
}

.mdc-text-field--textarea:not(.mdc-text-field--upgraded) .mdc-text-field__input {
    padding-top: 16px;
}

.mdc-text-field--textarea.mdc-text-field--focused {
    /* @alternate */
    border-color: #00a9f4;
    border-color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-text-field--fullwidth {
    width: 100%;
}

.mdc-text-field--fullwidth:not(.mdc-text-field--textarea) {
    display: block;
    box-sizing: border-box;
    height: 56px;
    margin: 0;
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    outline: none;
}

.mdc-text-field--fullwidth:not(.mdc-text-field--textarea) .mdc-text-field__input {
    width: 100%;
    height: 100%;
    padding: 0;
    resize: none;
    border: none !important;
}

.mdc-text-field--fullwidth--theme-dark,
.mdc-theme--dark .mdc-text-field--fullwidth {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.mdc-text-field:not(.mdc-text-field--upgraded):not(.mdc-text-field--textarea) .mdc-text-field__input {
    transition: border-bottom-color 180ms cubic-bezier(0.4, 0, 0.2, 1);
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

.mdc-text-field:not(.mdc-text-field--upgraded) .mdc-text-field__input:focus {
    /* @alternate */
    border-color: #00a9f4;
    border-color: var(--mdc-theme-primary, #00a9f4);
}

.mdc-text-field:not(.mdc-text-field--upgraded) .mdc-text-field__input:disabled {
    color: rgba(0, 0, 0, 0.38);
    border-bottom-style: dotted;
}

.mdc-text-field:not(.mdc-text-field--upgraded) .mdc-text-field__input:invalid:not(:focus) {
    border-color: #d50000;
}

.mdc-text-field--theme-dark:not(.mdc-text-field--upgraded) .mdc-text-field__input:not(:focus),
.mdc-theme--dark .mdc-text-field:not(.mdc-text-field--upgraded) .mdc-text-field__input:not(:focus) {
    border-color: rgba(255, 255, 255, 0.12);
}

.mdc-text-field--theme-dark:not(.mdc-text-field--upgraded) .mdc-text-field__input:disabled,
.mdc-theme--dark .mdc-text-field:not(.mdc-text-field--upgraded) .mdc-text-field__input:disabled {
    color: rgba(0, 0, 0, 0.38);
    border-color: rgba(255, 255, 255, 0.3);
    background-color: #2f2f2f;
}

.mdc-text-field--theme-dark:not(.mdc-text-field--upgraded) .mdc-text-field__input:invalid:not(:focus),
.mdc-theme--dark .mdc-text-field:not(.mdc-text-field--upgraded) .mdc-text-field__input:invalid:not(:focus) {
    border-color: #ff6e6e;
}

.mdc-text-field--box:not(.mdc-text-field--upgraded) {
    height: 56px;
}

.mdc-text-field--box:not(.mdc-text-field--upgraded)::before,
.mdc-text-field--box:not(.mdc-text-field--upgraded)::after {
    border-radius: 0;
}

.mdc-text-field--box:not(.mdc-text-field--upgraded) .mdc-text-field__input {
    padding-top: 0;
}

.mdc-text-field--dense+.mdc-text-field-helper-text {
    margin-bottom: 4px;
}

.mdc-text-field--focused+.mdc-text-field-helper-text:not(.mdc-text-field-helper-text--validation-msg) {
    opacity: 1;
}

.mdc-text-field--box+.mdc-text-field-helper-text {
    margin-right: 16px;
    margin-left: 16px;
}

.mdc-text-field--invalid+.mdc-text-field-helper-text--validation-msg {
    opacity: 1;
    color: #d50000;
}

.mdc-text-field--theme-dark.mdc-text-field--invalid+.mdc-text-field-helper-text--validation-msg,
.mdc-theme--dark .mdc-text-field--invalid+.mdc-text-field-helper-text--validation-msg {
    color: #ff6e6e;
}

.mdc-form-field>.mdc-text-field+label {
    align-self: flex-start;
}

:root {
    --mdc-theme-primary: #00a9f4;
    --mdc-theme-primary-light: #3cc3ff;
    --mdc-theme-primary-dark: #0078ad;
    --mdc-theme-secondary: #e52d27;
    --mdc-theme-secondary-light: #ed6b67;
    --mdc-theme-secondary-dark: #af1a15;
    --mdc-theme-background: #fff;
    --mdc-theme-text-primary-on-primary: rgba(0, 0, 0, 0.87);
    --mdc-theme-text-secondary-on-primary: rgba(0, 0, 0, 0.54);
    --mdc-theme-text-hint-on-primary: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-disabled-on-primary: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-icon-on-primary: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-primary-on-primary-light: rgba(0, 0, 0, 0.87);
    --mdc-theme-text-secondary-on-primary-light: rgba(0, 0, 0, 0.54);
    --mdc-theme-text-hint-on-primary-light: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-disabled-on-primary-light: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-icon-on-primary-light: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-primary-on-primary-dark: white;
    --mdc-theme-text-secondary-on-primary-dark: rgba(255, 255, 255, 0.7);
    --mdc-theme-text-hint-on-primary-dark: rgba(255, 255, 255, 0.5);
    --mdc-theme-text-disabled-on-primary-dark: rgba(255, 255, 255, 0.5);
    --mdc-theme-text-icon-on-primary-dark: rgba(255, 255, 255, 0.5);
    --mdc-theme-text-primary-on-secondary: white;
    --mdc-theme-text-secondary-on-secondary: rgba(255, 255, 255, 0.7);
    --mdc-theme-text-hint-on-secondary: rgba(255, 255, 255, 0.5);
    --mdc-theme-text-disabled-on-secondary: rgba(255, 255, 255, 0.5);
    --mdc-theme-text-icon-on-secondary: rgba(255, 255, 255, 0.5);
    --mdc-theme-text-primary-on-secondary-light: rgba(0, 0, 0, 0.87);
    --mdc-theme-text-secondary-on-secondary-light: rgba(0, 0, 0, 0.54);
    --mdc-theme-text-hint-on-secondary-light: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-disabled-on-secondary-light: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-icon-on-secondary-light: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-primary-on-secondary-dark: white;
    --mdc-theme-text-secondary-on-secondary-dark: rgba(255, 255, 255, 0.7);
    --mdc-theme-text-hint-on-secondary-dark: rgba(255, 255, 255, 0.5);
    --mdc-theme-text-disabled-on-secondary-dark: rgba(255, 255, 255, 0.5);
    --mdc-theme-text-icon-on-secondary-dark: rgba(255, 255, 255, 0.5);
    --mdc-theme-text-primary-on-background: rgba(0, 0, 0, 0.87);
    --mdc-theme-text-secondary-on-background: rgba(0, 0, 0, 0.54);
    --mdc-theme-text-hint-on-background: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-disabled-on-background: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-icon-on-background: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-primary-on-light: rgba(0, 0, 0, 0.87);
    --mdc-theme-text-secondary-on-light: rgba(0, 0, 0, 0.54);
    --mdc-theme-text-hint-on-light: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-disabled-on-light: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-icon-on-light: rgba(0, 0, 0, 0.38);
    --mdc-theme-text-primary-on-dark: white;
    --mdc-theme-text-secondary-on-dark: rgba(255, 255, 255, 0.7);
    --mdc-theme-text-hint-on-dark: rgba(255, 255, 255, 0.5);
    --mdc-theme-text-disabled-on-dark: rgba(255, 255, 255, 0.5);
    --mdc-theme-text-icon-on-dark: rgba(255, 255, 255, 0.5);
}

.mdc-theme--background {
    /* @alternate */
    background-color: #fff;
    background-color: var(--mdc-theme-background, #fff);
}

.mdc-theme--primary {
    /* @alternate */
    color: #00a9f4 !important;
    color: var(--mdc-theme-primary, #00a9f4) !important;
}

.mdc-theme--primary-light {
    /* @alternate */
    color: #3cc3ff !important;
    color: var(--mdc-theme-primary-light, #3cc3ff) !important;
}

.mdc-theme--primary-dark {
    /* @alternate */
    color: #0078ad !important;
    color: var(--mdc-theme-primary-dark, #0078ad) !important;
}

.mdc-theme--secondary {
    /* @alternate */
    color: #e52d27 !important;
    color: var(--mdc-theme-secondary, #e52d27) !important;
}

.mdc-theme--secondary-light {
    /* @alternate */
    color: #ed6b67 !important;
    color: var(--mdc-theme-secondary-light, #ed6b67) !important;
}

.mdc-theme--secondary-dark {
    /* @alternate */
    color: #af1a15 !important;
    color: var(--mdc-theme-secondary-dark, #af1a15) !important;
}

.mdc-theme--text-primary-on-primary {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87) !important;
    color: var(--mdc-theme-text-primary-on-primary, rgba(0, 0, 0, 0.87)) !important;
}

.mdc-theme--text-secondary-on-primary {
    /* @alternate */
    color: rgba(0, 0, 0, 0.54) !important;
    color: var(--mdc-theme-text-secondary-on-primary, rgba(0, 0, 0, 0.54)) !important;
}

.mdc-theme--text-hint-on-primary {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-hint-on-primary, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-disabled-on-primary {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-disabled-on-primary, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-icon-on-primary {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-icon-on-primary, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-primary-on-primary-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87) !important;
    color: var(--mdc-theme-text-primary-on-primary-light, rgba(0, 0, 0, 0.87)) !important;
}

.mdc-theme--text-secondary-on-primary-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.54) !important;
    color: var(--mdc-theme-text-secondary-on-primary-light, rgba(0, 0, 0, 0.54)) !important;
}

.mdc-theme--text-hint-on-primary-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-hint-on-primary-light, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-disabled-on-primary-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-disabled-on-primary-light, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-icon-on-primary-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-icon-on-primary-light, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-primary-on-primary-dark {
    /* @alternate */
    color: white !important;
    color: var(--mdc-theme-text-primary-on-primary-dark, white) !important;
}

.mdc-theme--text-secondary-on-primary-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7) !important;
    color: var(--mdc-theme-text-secondary-on-primary-dark, rgba(255, 255, 255, 0.7)) !important;
}

.mdc-theme--text-hint-on-primary-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-hint-on-primary-dark, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--text-disabled-on-primary-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-disabled-on-primary-dark, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--text-icon-on-primary-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-icon-on-primary-dark, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--text-primary-on-secondary {
    /* @alternate */
    color: white !important;
    color: var(--mdc-theme-text-primary-on-secondary, white) !important;
}

.mdc-theme--text-secondary-on-secondary {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7) !important;
    color: var(--mdc-theme-text-secondary-on-secondary, rgba(255, 255, 255, 0.7)) !important;
}

.mdc-theme--text-hint-on-secondary {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-hint-on-secondary, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--text-disabled-on-secondary {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-disabled-on-secondary, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--text-icon-on-secondary {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-icon-on-secondary, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--text-primary-on-secondary-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87) !important;
    color: var(--mdc-theme-text-primary-on-secondary-light, rgba(0, 0, 0, 0.87)) !important;
}

.mdc-theme--text-secondary-on-secondary-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.54) !important;
    color: var(--mdc-theme-text-secondary-on-secondary-light, rgba(0, 0, 0, 0.54)) !important;
}

.mdc-theme--text-hint-on-secondary-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-hint-on-secondary-light, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-disabled-on-secondary-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-disabled-on-secondary-light, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-icon-on-secondary-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-icon-on-secondary-light, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-primary-on-secondary-dark {
    /* @alternate */
    color: white !important;
    color: var(--mdc-theme-text-primary-on-secondary-dark, white) !important;
}

.mdc-theme--text-secondary-on-secondary-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7) !important;
    color: var(--mdc-theme-text-secondary-on-secondary-dark, rgba(255, 255, 255, 0.7)) !important;
}

.mdc-theme--text-hint-on-secondary-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-hint-on-secondary-dark, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--text-disabled-on-secondary-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-disabled-on-secondary-dark, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--text-icon-on-secondary-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-icon-on-secondary-dark, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--text-primary-on-background {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87) !important;
    color: var(--mdc-theme-text-primary-on-background, rgba(0, 0, 0, 0.87)) !important;
}

.mdc-theme--text-secondary-on-background {
    /* @alternate */
    color: rgba(0, 0, 0, 0.54) !important;
    color: var(--mdc-theme-text-secondary-on-background, rgba(0, 0, 0, 0.54)) !important;
}

.mdc-theme--text-hint-on-background {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-hint-on-background, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-disabled-on-background {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-disabled-on-background, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-icon-on-background {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-icon-on-background, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-primary-on-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.87) !important;
    color: var(--mdc-theme-text-primary-on-light, rgba(0, 0, 0, 0.87)) !important;
}

.mdc-theme--text-secondary-on-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.54) !important;
    color: var(--mdc-theme-text-secondary-on-light, rgba(0, 0, 0, 0.54)) !important;
}

.mdc-theme--text-hint-on-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-hint-on-light, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-disabled-on-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-icon-on-light {
    /* @alternate */
    color: rgba(0, 0, 0, 0.38) !important;
    color: var(--mdc-theme-text-icon-on-light, rgba(0, 0, 0, 0.38)) !important;
}

.mdc-theme--text-primary-on-dark {
    /* @alternate */
    color: white !important;
    color: var(--mdc-theme-text-primary-on-dark, white) !important;
}

.mdc-theme--text-secondary-on-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.7) !important;
    color: var(--mdc-theme-text-secondary-on-dark, rgba(255, 255, 255, 0.7)) !important;
}

.mdc-theme--text-hint-on-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-hint-on-dark, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--text-disabled-on-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-disabled-on-dark, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--text-icon-on-dark {
    /* @alternate */
    color: rgba(255, 255, 255, 0.5) !important;
    color: var(--mdc-theme-text-icon-on-dark, rgba(255, 255, 255, 0.5)) !important;
}

.mdc-theme--primary-bg,
.error-page .error-header {
    /* @alternate */
    background-color: #00a9f4 !important;
    background-color: var(--mdc-theme-primary, #00a9f4) !important;
}

.mdc-theme--primary-light-bg {
    /* @alternate */
    background-color: #3cc3ff !important;
    background-color: var(--mdc-theme-primary-light, #3cc3ff) !important;
}

.mdc-theme--primary-dark-bg {
    /* @alternate */
    background-color: #0078ad !important;
    background-color: var(--mdc-theme-primary-dark, #0078ad) !important;
}

.mdc-theme--secondary-bg {
    /* @alternate */
    background-color: #e52d27 !important;
    background-color: var(--mdc-theme-secondary, #e52d27) !important;
}

.mdc-theme--secondary-light-bg {
    /* @alternate */
    background-color: #ed6b67 !important;
    background-color: var(--mdc-theme-secondary-light, #ed6b67) !important;
}

.mdc-theme--secondary-dark-bg {
    /* @alternate */
    background-color: #af1a15 !important;
    background-color: var(--mdc-theme-secondary-dark, #af1a15) !important;
}


/**
 * The css property used for elevation. In most cases this should not be changed. It is exposed
 * as a variable for abstraction / easy use when needing to reference the property directly, for
 * example in a `will-change` rule.
 */


/**
 * The default duration value for elevation transitions.
 */


/**
 * The default easing value for elevation transitions.
 */


/**
 * Applies the correct CSS rules to an element to give it the elevation specified by $z-value.
 * The $z-value must be between 0 and 24.
 * If $color has an alpha channel, it will be ignored and overridden. To increase the opacity of the shadow, use
 * $opacity-boost.
 */


/**
 * Returns a string that can be used as the value for a `transition` property for elevation.
 * Calling this function directly is useful in situations where a component needs to transition
 * more than one property.
 *
 * ```scss
 * .foo {
 *   transition: mdc-elevation-transition-rule(), opacity 100ms ease;
 *   will-change: $mdc-elevation-property, opacity;
 * }
 * ```
 */


/**
 * Applies the correct css rules needed to have an element transition between elevations.
 * This mixin should be applied to elements whose elevation values will change depending on their
 * context (e.g. when active or disabled).
 */


/**
 * Creates a rule that will be applied when an MDC-Web component is within the context of an RTL layout.
 *
 * Usage Example:
 * ```scss
 * .mdc-foo {
 *   position: absolute;
 *   left: 0;
 *
 *   @include mdc-rtl {
 *     left: auto;
 *     right: 0;
 *   }
 *
 *   &__bar {
 *     margin-left: 4px;
 *     @include mdc-rtl(".mdc-foo") {
 *       margin-left: auto;
 *       margin-right: 4px;
 *     }
 *   }
 * }
 *
 * .mdc-foo--mod {
 *   padding-left: 4px;
 *
 *   @include mdc-rtl {
 *     padding-left: auto;
 *     padding-right: 4px;
 *   }
 * }
 * ```
 *
 * Note that this works by checking for [dir="rtl"] on an ancestor element. While this will work
 * in most cases, it will in some cases lead to false negatives, e.g.
 *
 * ```html
 * <html dir="rtl">
 *   <!-- ... -->
 *   <div dir="ltr">
 *     <div class="mdc-foo">Styled incorrectly as RTL!</div>
 *   </div>
 * </html>
 * ```
 *
 * In the future, selectors such as :dir (http://mdn.io/:dir) will help us mitigate this.
 */


/**
 * Takes a base box-model property - e.g. margin / border / padding - along with a default
 * direction and value, and emits rules which apply the value to the
 * "<base-property>-<default-direction>" property by default, but flips the direction
 * when within an RTL context.
 *
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, left, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 8px;
 *     margin-left: 0;
 *   }
 * }
 * ```
 * whereas:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-box(margin, right, 8px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-right: 8px;
 *
 *   @include mdc-rtl {
 *     margin-right: 0;
 *     margin-left: 8px;
 *   }
 * }
 * ```
 *
 * You can also pass a 4th optional $root-selector argument which will be forwarded to `mdc-rtl`,
 * e.g. `@include mdc-rtl-reflexive-box(margin, left, 8px, ".mdc-component")`.
 *
 * Note that this function will always zero out the original value in an RTL context. If you're
 * trying to flip the values, use mdc-rtl-reflexive-property().
 */


/**
 * Takes a base property and emits rules that assign <base-property>-left to <left-value> and
 * <base-property>-right to <right-value> in a LTR context, and vice versa in a RTL context.
 * For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-property(margin, auto, 12px);
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 * .mdc-foo {
 *   margin-left: auto;
 *   margin-right: 12px;
 *
 *   @include mdc-rtl {
 *     margin-left: 12px;
 *     margin-right: auto;
 *   }
 * }
 * ```
 *
 * A 4th optional $root-selector argument can be given, which will be passed to `mdc-rtl`.
 */


/**
 * Takes an argument specifying a horizontal position property (either "left" or "right") as well
 * as a value, and applies that value to the specified position in a LTR context, and flips it in a
 * RTL context. For example:
 *
 * ```scss
 * .mdc-foo {
 *   @include mdc-rtl-reflexive-position(left, 0);
 *   position: absolute;
 * }
 * ```
 * is equivalent to:
 *
 * ```scss
 *  .mdc-foo {
 *    position: absolute;
 *    left: 0;
 *    right: initial;
 *
 *    @include mdc-rtl {
 *      right: 0;
 *      left: initial;
 *    }
 *  }
 * ```
 * An optional third $root-selector argument may also be given, which is passed to `mdc-rtl`.
 */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/**
 * Applies styles to the different types of icons that can exist in toolbars.
 * Both .mdc-toolbar__icon and .mdc-toolbar__menu-icon share all styles except for
 * horizontal padding.
 */

.mdc-toolbar {
    /* @alternate */
    background-color: #00a9f4;
    background-color: var(--mdc-theme-primary, #00a9f4);
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-primary, rgba(0, 0, 0, 0.87));
    display: flex;
    position: relative;
    flex-direction: column;
    justify-content: space-between;
    box-sizing: border-box;
    width: 100%;
}

.mdc-toolbar__row {
    display: flex;
    position: relative;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    min-height: 64px;
}

@media (max-width: 959px) and (orientation: landscape) {
    .mdc-toolbar__row {
        min-height: 48px;
    }
}

@media (max-width: 599px) {
    .mdc-toolbar__row {
        min-height: 56px;
    }
}

.mdc-toolbar__section {
    display: inline-flex;
    flex: 1;
    align-items: flex-start;
    justify-content: center;
    min-width: 0;
    height: 100%;
    z-index: 1;
}

.mdc-toolbar__section--align-start {
    justify-content: flex-start;
    order: -1;
}

.mdc-toolbar__section--align-end {
    justify-content: flex-end;
    order: 1;
}

.mdc-toolbar__title {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1.25rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 2rem;
    text-decoration: inherit;
    text-transform: inherit;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    margin-left: 24px;
    margin-right: 0;
    align-self: center;
    padding: 16px 0;
    line-height: 1.5rem;
    z-index: 1;
}

[dir="rtl"] .mdc-toolbar__title,
.mdc-toolbar__title[dir="rtl"] {
    margin-left: 0;
    margin-right: 24px;
}

.mdc-toolbar__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    border: none;
    background-color: inherit;
    color: inherit;
    text-decoration: none;
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-primary, rgba(0, 0, 0, 0.87));
    padding-right: 12px;
    padding-left: 12px;
    cursor: pointer;
}

.mdc-toolbar__icon:last-of-type {
    padding-left: 12px;
    padding-right: 24px;
}

[dir="rtl"] .mdc-toolbar__icon:last-of-type,
.mdc-toolbar__icon:last-of-type[dir="rtl"] {
    padding-left: 24px;
    padding-right: 12px;
}

.mdc-toolbar__menu-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    border: none;
    background-color: inherit;
    color: inherit;
    text-decoration: none;
    /* @alternate */
    color: rgba(0, 0, 0, 0.87);
    color: var(--mdc-theme-text-primary-on-primary, rgba(0, 0, 0, 0.87));
    padding-right: 24px;
    padding-left: 24px;
    cursor: pointer;
}

.mdc-toolbar__menu-icon+.mdc-toolbar__title {
    margin-left: 8px;
    margin-right: 0;
}

[dir="rtl"] .mdc-toolbar__menu-icon+.mdc-toolbar__title,
.mdc-toolbar__menu-icon+.mdc-toolbar__title[dir="rtl"] {
    margin-left: 0;
    margin-right: 8px;
}

@media (max-width: 599px) {
    .mdc-toolbar__title {
        margin-left: 16px;
        margin-right: 0;
    }
    [dir="rtl"] .mdc-toolbar__title,
    .mdc-toolbar__title[dir="rtl"] {
        margin-left: 0;
        margin-right: 16px;
    }
    .mdc-toolbar__icon {
        padding-right: 8px;
        padding-left: 8px;
    }
    .mdc-toolbar__icon:last-of-type {
        padding-left: 8px;
        padding-right: 16px;
    }
    [dir="rtl"] .mdc-toolbar__icon:last-of-type,
    .mdc-toolbar__icon:last-of-type[dir="rtl"] {
        padding-left: 16px;
        padding-right: 8px;
    }
    .mdc-toolbar__menu-icon {
        padding-right: 16px;
        padding-left: 16px;
    }
    .mdc-toolbar__menu-icon+.mdc-toolbar__title {
        margin-left: 16px;
        margin-right: 0;
    }
    [dir="rtl"] .mdc-toolbar__menu-icon+.mdc-toolbar__title,
    .mdc-toolbar__menu-icon+.mdc-toolbar__title[dir="rtl"] {
        margin-left: 0;
        margin-right: 16px;
    }
}

.mdc-toolbar--fixed {
    box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 4;
}

.mdc-toolbar--flexible {
    --mdc-toolbar-ratio-to-extend-flexible: 4;
}

.mdc-toolbar--flexible .mdc-toolbar__row:first-child {
    height: 256px;
    height: calc(64px * var(--mdc-toolbar-ratio-to-extend-flexible, 4));
}

@media (max-width: 599px) {
    .mdc-toolbar--flexible .mdc-toolbar__row:first-child {
        height: 224px;
        height: calc(56px * var(--mdc-toolbar-ratio-to-extend-flexible, 4));
    }
}

.mdc-toolbar--flexible .mdc-toolbar__row:first-child::after {
    position: absolute;
    content: "";
}

.mdc-toolbar--flexible-default-behavior .mdc-toolbar__title {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 2.125rem;
    font-weight: 400;
    letter-spacing: normal;
    line-height: 2.5rem;
    text-decoration: inherit;
    text-transform: inherit;
    align-self: flex-end;
    line-height: 1.5rem;
}

.mdc-toolbar--flexible-default-behavior .mdc-toolbar__row:first-child::after {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity .2s ease;
    opacity: 1;
}

.mdc-toolbar--flexible-default-behavior.mdc-toolbar--flexible-space-minimized .mdc-toolbar__row:first-child::after {
    opacity: 0;
}

.mdc-toolbar--flexible-default-behavior.mdc-toolbar--flexible-space-minimized .mdc-toolbar__title {
    font-weight: 500;
}

.mdc-toolbar--waterfall.mdc-toolbar--fixed {
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
    transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
    will-change: box-shadow;
}

.mdc-toolbar--waterfall.mdc-toolbar--fixed.mdc-toolbar--flexible-space-minimized {
    box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}

.mdc-toolbar--waterfall.mdc-toolbar--fixed.mdc-toolbar--fixed-lastrow-only.mdc-toolbar--flexible-space-minimized {
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}

.mdc-toolbar--waterfall.mdc-toolbar--fixed.mdc-toolbar--fixed-lastrow-only.mdc-toolbar--fixed-at-last-row {
    box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}

.mdc-toolbar-fixed-adjust {
    margin-top: 5px;
}

@media (max-width: 959px) and (max-height: 599px) {
    .mdc-toolbar-fixed-adjust {
        margin-top: 5px;
    }
}

@media (max-width: 599px) {
    .mdc-toolbar-fixed-adjust {
        margin-top: 5px;
    }
}

.mdc-toolbar__section--shrink-to-fit {
    flex: none;
}


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */


/* TODO(sgomes): Figure out what to do about desktop font sizes. */


/* TODO(sgomes): Figure out what to do about i18n and i18n font sizes. */

.mdc-typography {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
}

.mdc-typography--display4 {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 7rem;
    font-weight: 300;
    letter-spacing: -0.04em;
    line-height: 7rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-typography--adjust-margin.mdc-typography--display4 {
    margin: -1rem 0 3.5rem -0.085em;
}

.mdc-typography--display3 {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 3.5rem;
    font-weight: 400;
    letter-spacing: -0.02em;
    line-height: 3.5rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-typography--adjust-margin.mdc-typography--display3 {
    margin: -8px 0 64px -0.07em;
}

.mdc-typography--display2 {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 2.813rem;
    font-weight: 400;
    letter-spacing: normal;
    line-height: 3rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-typography--adjust-margin.mdc-typography--display2 {
    margin: -0.5rem 0 4rem -0.07em;
}

.mdc-typography--display1 {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 2.125rem;
    font-weight: 400;
    letter-spacing: normal;
    line-height: 2.5rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-typography--adjust-margin.mdc-typography--display1 {
    margin: -0.5rem 0 4rem -0.07em;
}

.mdc-typography--headline {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: normal;
    line-height: 2rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-typography--adjust-margin.mdc-typography--headline {
    margin: -0.5rem 0 1rem -0.06em;
}

.mdc-typography--title {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1.25rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 2rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-typography--adjust-margin.mdc-typography--title {
    margin: -0.5rem 0 1rem -0.05em;
}

.mdc-typography--subheading2 {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.75rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-typography--adjust-margin.mdc-typography--subheading2 {
    margin: -0.5rem 0 1rem -0.06em;
}

.mdc-typography--subheading1 {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.938rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.5rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-typography--adjust-margin.mdc-typography--subheading1 {
    margin: -0.313rem 0 0.813rem -0.06em;
}

.mdc-typography--body2 {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-typography--adjust-margin.mdc-typography--body2 {
    margin: -0.25rem 0 0.75rem 0;
}

.mdc-typography--body1 {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.25rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-typography--adjust-margin.mdc-typography--body1 {
    margin: -0.25rem 0 0.75rem 0;
}

.mdc-typography--caption {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.25rem;
    text-decoration: inherit;
    text-transform: inherit;
}

.mdc-typography--adjust-margin.mdc-typography--caption {
    margin: -0.5rem 0 1rem -0.04em;
}

.mdc-typography--button {
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 2.25rem;
    text-decoration: none;
    text-transform: uppercase;
}

.mdc-typography--adjust-margin.mdc-typography--button {
    margin: inherit;
}


/*-------------------------------------------------------------------*/


/* === SCSS Compass Functions === */

@-moz-keyframes flash {
    0% {
        opacity: 1;
    }
    25% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    75% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-webkit-keyframes flash {
    0% {
        opacity: 1;
    }
    25% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    75% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-o-keyframes flash {
    0% {
        opacity: 1;
    }
    25% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    75% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-ms-keyframes flash {
    0% {
        opacity: 1;
    }
    25% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    75% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes flash {
    0% {
        opacity: 1;
    }
    25% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    75% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-moz-keyframes bounce {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -o-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    50% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    60% {
        -webkit-transform: translateY(-15px);
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        -o-transform: translateY(-15px);
        transform: translateY(-15px);
    }
    80% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes bounce {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -o-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    50% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    60% {
        -webkit-transform: translateY(-15px);
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        -o-transform: translateY(-15px);
        transform: translateY(-15px);
    }
    80% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-o-keyframes bounce {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -o-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    50% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    60% {
        -webkit-transform: translateY(-15px);
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        -o-transform: translateY(-15px);
        transform: translateY(-15px);
    }
    80% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-ms-keyframes bounce {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -o-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    50% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    60% {
        -webkit-transform: translateY(-15px);
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        -o-transform: translateY(-15px);
        transform: translateY(-15px);
    }
    80% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes bounce {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -o-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    50% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    60% {
        -webkit-transform: translateY(-15px);
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        -o-transform: translateY(-15px);
        transform: translateY(-15px);
    }
    80% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-moz-keyframes shake {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    10% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    20% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    30% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    40% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    50% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    60% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    70% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    80% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    90% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes shake {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    10% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    20% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    30% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    40% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    50% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    60% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    70% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    80% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    90% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-o-keyframes shake {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    10% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    20% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    30% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    40% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    50% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    60% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    70% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    80% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    90% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-ms-keyframes shake {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    10% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    20% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    30% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    40% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    50% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    60% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    70% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    80% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    90% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes shake {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    10% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    20% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    30% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    40% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    50% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    60% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    70% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    80% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    90% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-moz-keyframes tada {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    10% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -moz-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        -o-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    20% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -moz-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        -o-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    30% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    40% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    50% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    60% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    70% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    100% {
        -webkit-transform: scale(1) rotate(0);
        -moz-transform: scale(1) rotate(0);
        -ms-transform: scale(1) rotate(0);
        -o-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
    }
}

@-webkit-keyframes tada {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    10% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -moz-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        -o-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    20% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -moz-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        -o-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    30% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    40% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    50% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    60% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    70% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    100% {
        -webkit-transform: scale(1) rotate(0);
        -moz-transform: scale(1) rotate(0);
        -ms-transform: scale(1) rotate(0);
        -o-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
    }
}

@-o-keyframes tada {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    10% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -moz-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        -o-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    20% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -moz-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        -o-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    30% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    40% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    50% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    60% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    70% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    100% {
        -webkit-transform: scale(1) rotate(0);
        -moz-transform: scale(1) rotate(0);
        -ms-transform: scale(1) rotate(0);
        -o-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
    }
}

@-ms-keyframes tada {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    10% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -moz-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        -o-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    20% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -moz-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        -o-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    30% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    40% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    50% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    60% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    70% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    100% {
        -webkit-transform: scale(1) rotate(0);
        -moz-transform: scale(1) rotate(0);
        -ms-transform: scale(1) rotate(0);
        -o-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
    }
}

@keyframes tada {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    10% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -moz-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        -o-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    20% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -moz-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        -o-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }
    30% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    40% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    50% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    60% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    70% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -moz-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        -o-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }
    90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -moz-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        -o-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }
    100% {
        -webkit-transform: scale(1) rotate(0);
        -moz-transform: scale(1) rotate(0);
        -ms-transform: scale(1) rotate(0);
        -o-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
    }
}

@-moz-keyframes swing {
    20%,
    40%,
    60%,
    80%,
    100% {
        -webkit-transform-origin: top center 50%;
        -moz-transform-origin: top center 50%;
        -ms-transform-origin: top center 50%;
        -o-transform-origin: top center 50%;
        transform-origin: top center 50%;
    }
    20% {
        -webkit-transform: rotate(15deg);
        -moz-transform: rotate(15deg);
        -ms-transform: rotate(15deg);
        -o-transform: rotate(15deg);
        transform: rotate(15deg);
    }
    40% {
        -webkit-transform: rotate(-10deg);
        -moz-transform: rotate(-10deg);
        -ms-transform: rotate(-10deg);
        -o-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    60% {
        -webkit-transform: rotate(5deg);
        -moz-transform: rotate(5deg);
        -ms-transform: rotate(5deg);
        -o-transform: rotate(5deg);
        transform: rotate(5deg);
    }
    80% {
        -webkit-transform: rotate(-5deg);
        -moz-transform: rotate(-5deg);
        -ms-transform: rotate(-5deg);
        -o-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }
    100% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@-webkit-keyframes swing {
    20%,
    40%,
    60%,
    80%,
    100% {
        -webkit-transform-origin: top center 50%;
        -moz-transform-origin: top center 50%;
        -ms-transform-origin: top center 50%;
        -o-transform-origin: top center 50%;
        transform-origin: top center 50%;
    }
    20% {
        -webkit-transform: rotate(15deg);
        -moz-transform: rotate(15deg);
        -ms-transform: rotate(15deg);
        -o-transform: rotate(15deg);
        transform: rotate(15deg);
    }
    40% {
        -webkit-transform: rotate(-10deg);
        -moz-transform: rotate(-10deg);
        -ms-transform: rotate(-10deg);
        -o-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    60% {
        -webkit-transform: rotate(5deg);
        -moz-transform: rotate(5deg);
        -ms-transform: rotate(5deg);
        -o-transform: rotate(5deg);
        transform: rotate(5deg);
    }
    80% {
        -webkit-transform: rotate(-5deg);
        -moz-transform: rotate(-5deg);
        -ms-transform: rotate(-5deg);
        -o-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }
    100% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@-o-keyframes swing {
    20%,
    40%,
    60%,
    80%,
    100% {
        -webkit-transform-origin: top center 50%;
        -moz-transform-origin: top center 50%;
        -ms-transform-origin: top center 50%;
        -o-transform-origin: top center 50%;
        transform-origin: top center 50%;
    }
    20% {
        -webkit-transform: rotate(15deg);
        -moz-transform: rotate(15deg);
        -ms-transform: rotate(15deg);
        -o-transform: rotate(15deg);
        transform: rotate(15deg);
    }
    40% {
        -webkit-transform: rotate(-10deg);
        -moz-transform: rotate(-10deg);
        -ms-transform: rotate(-10deg);
        -o-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    60% {
        -webkit-transform: rotate(5deg);
        -moz-transform: rotate(5deg);
        -ms-transform: rotate(5deg);
        -o-transform: rotate(5deg);
        transform: rotate(5deg);
    }
    80% {
        -webkit-transform: rotate(-5deg);
        -moz-transform: rotate(-5deg);
        -ms-transform: rotate(-5deg);
        -o-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }
    100% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@-ms-keyframes swing {
    20%,
    40%,
    60%,
    80%,
    100% {
        -webkit-transform-origin: top center 50%;
        -moz-transform-origin: top center 50%;
        -ms-transform-origin: top center 50%;
        -o-transform-origin: top center 50%;
        transform-origin: top center 50%;
    }
    20% {
        -webkit-transform: rotate(15deg);
        -moz-transform: rotate(15deg);
        -ms-transform: rotate(15deg);
        -o-transform: rotate(15deg);
        transform: rotate(15deg);
    }
    40% {
        -webkit-transform: rotate(-10deg);
        -moz-transform: rotate(-10deg);
        -ms-transform: rotate(-10deg);
        -o-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    60% {
        -webkit-transform: rotate(5deg);
        -moz-transform: rotate(5deg);
        -ms-transform: rotate(5deg);
        -o-transform: rotate(5deg);
        transform: rotate(5deg);
    }
    80% {
        -webkit-transform: rotate(-5deg);
        -moz-transform: rotate(-5deg);
        -ms-transform: rotate(-5deg);
        -o-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }
    100% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@keyframes swing {
    20%,
    40%,
    60%,
    80%,
    100% {
        -webkit-transform-origin: top center 50%;
        -moz-transform-origin: top center 50%;
        -ms-transform-origin: top center 50%;
        -o-transform-origin: top center 50%;
        transform-origin: top center 50%;
    }
    20% {
        -webkit-transform: rotate(15deg);
        -moz-transform: rotate(15deg);
        -ms-transform: rotate(15deg);
        -o-transform: rotate(15deg);
        transform: rotate(15deg);
    }
    40% {
        -webkit-transform: rotate(-10deg);
        -moz-transform: rotate(-10deg);
        -ms-transform: rotate(-10deg);
        -o-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    60% {
        -webkit-transform: rotate(5deg);
        -moz-transform: rotate(5deg);
        -ms-transform: rotate(5deg);
        -o-transform: rotate(5deg);
        transform: rotate(5deg);
    }
    80% {
        -webkit-transform: rotate(-5deg);
        -moz-transform: rotate(-5deg);
        -ms-transform: rotate(-5deg);
        -o-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }
    100% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@-moz-keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%);
    }
    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        -moz-transform: translateX(-25%) rotate(-5deg);
        -ms-transform: translateX(-25%) rotate(-5deg);
        -o-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg);
    }
    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        -moz-transform: translateX(20%) rotate(3deg);
        -ms-transform: translateX(20%) rotate(3deg);
        -o-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg);
    }
    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        -moz-transform: translateX(-15%) rotate(-3deg);
        -ms-transform: translateX(-15%) rotate(-3deg);
        -o-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg);
    }
    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        -moz-transform: translateX(10%) rotate(2deg);
        -ms-transform: translateX(10%) rotate(2deg);
        -o-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg);
    }
    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        -moz-transform: translateX(-5%) rotate(-1deg);
        -ms-transform: translateX(-5%) rotate(-1deg);
        -o-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg);
    }
    100% {
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%);
    }
}

@-webkit-keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%);
    }
    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        -moz-transform: translateX(-25%) rotate(-5deg);
        -ms-transform: translateX(-25%) rotate(-5deg);
        -o-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg);
    }
    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        -moz-transform: translateX(20%) rotate(3deg);
        -ms-transform: translateX(20%) rotate(3deg);
        -o-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg);
    }
    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        -moz-transform: translateX(-15%) rotate(-3deg);
        -ms-transform: translateX(-15%) rotate(-3deg);
        -o-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg);
    }
    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        -moz-transform: translateX(10%) rotate(2deg);
        -ms-transform: translateX(10%) rotate(2deg);
        -o-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg);
    }
    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        -moz-transform: translateX(-5%) rotate(-1deg);
        -ms-transform: translateX(-5%) rotate(-1deg);
        -o-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg);
    }
    100% {
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%);
    }
}

@-o-keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%);
    }
    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        -moz-transform: translateX(-25%) rotate(-5deg);
        -ms-transform: translateX(-25%) rotate(-5deg);
        -o-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg);
    }
    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        -moz-transform: translateX(20%) rotate(3deg);
        -ms-transform: translateX(20%) rotate(3deg);
        -o-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg);
    }
    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        -moz-transform: translateX(-15%) rotate(-3deg);
        -ms-transform: translateX(-15%) rotate(-3deg);
        -o-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg);
    }
    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        -moz-transform: translateX(10%) rotate(2deg);
        -ms-transform: translateX(10%) rotate(2deg);
        -o-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg);
    }
    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        -moz-transform: translateX(-5%) rotate(-1deg);
        -ms-transform: translateX(-5%) rotate(-1deg);
        -o-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg);
    }
    100% {
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%);
    }
}

@-ms-keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%);
    }
    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        -moz-transform: translateX(-25%) rotate(-5deg);
        -ms-transform: translateX(-25%) rotate(-5deg);
        -o-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg);
    }
    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        -moz-transform: translateX(20%) rotate(3deg);
        -ms-transform: translateX(20%) rotate(3deg);
        -o-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg);
    }
    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        -moz-transform: translateX(-15%) rotate(-3deg);
        -ms-transform: translateX(-15%) rotate(-3deg);
        -o-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg);
    }
    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        -moz-transform: translateX(10%) rotate(2deg);
        -ms-transform: translateX(10%) rotate(2deg);
        -o-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg);
    }
    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        -moz-transform: translateX(-5%) rotate(-1deg);
        -ms-transform: translateX(-5%) rotate(-1deg);
        -o-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg);
    }
    100% {
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%);
    }
}

@keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%);
    }
    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        -moz-transform: translateX(-25%) rotate(-5deg);
        -ms-transform: translateX(-25%) rotate(-5deg);
        -o-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg);
    }
    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        -moz-transform: translateX(20%) rotate(3deg);
        -ms-transform: translateX(20%) rotate(3deg);
        -o-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg);
    }
    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        -moz-transform: translateX(-15%) rotate(-3deg);
        -ms-transform: translateX(-15%) rotate(-3deg);
        -o-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg);
    }
    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        -moz-transform: translateX(10%) rotate(2deg);
        -ms-transform: translateX(10%) rotate(2deg);
        -o-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg);
    }
    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        -moz-transform: translateX(-5%) rotate(-1deg);
        -ms-transform: translateX(-5%) rotate(-1deg);
        -o-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg);
    }
    100% {
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%);
    }
}

@-moz-keyframes pulse {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    50% {
        -webkit-transform: scale(1.1, 1.1);
        -moz-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
        -o-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1);
    }
    100% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    50% {
        -webkit-transform: scale(1.1, 1.1);
        -moz-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
        -o-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1);
    }
    100% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

@-o-keyframes pulse {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    50% {
        -webkit-transform: scale(1.1, 1.1);
        -moz-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
        -o-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1);
    }
    100% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

@-ms-keyframes pulse {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    50% {
        -webkit-transform: scale(1.1, 1.1);
        -moz-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
        -o-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1);
    }
    100% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    50% {
        -webkit-transform: scale(1.1, 1.1);
        -moz-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
        -o-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1);
    }
    100% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

@-moz-keyframes wiggle {
    0% {
        -webkit-transform: skewX(9deg);
        -moz-transform: skewX(9deg);
        -ms-transform: skewX(9deg);
        -o-transform: skewX(9deg);
        transform: skewX(9deg);
    }
    10% {
        -webkit-transform: skewX(-8deg);
        -moz-transform: skewX(-8deg);
        -ms-transform: skewX(-8deg);
        -o-transform: skewX(-8deg);
        transform: skewX(-8deg);
    }
    20% {
        -webkit-transform: skewX(7deg);
        -moz-transform: skewX(7deg);
        -ms-transform: skewX(7deg);
        -o-transform: skewX(7deg);
        transform: skewX(7deg);
    }
    30% {
        -webkit-transform: skewX(-6deg);
        -moz-transform: skewX(-6deg);
        -ms-transform: skewX(-6deg);
        -o-transform: skewX(-6deg);
        transform: skewX(-6deg);
    }
    40% {
        -webkit-transform: skewX(5deg);
        -moz-transform: skewX(5deg);
        -ms-transform: skewX(5deg);
        -o-transform: skewX(5deg);
        transform: skewX(5deg);
    }
    50% {
        -webkit-transform: skewX(-4deg);
        -moz-transform: skewX(-4deg);
        -ms-transform: skewX(-4deg);
        -o-transform: skewX(-4deg);
        transform: skewX(-4deg);
    }
    60% {
        -webkit-transform: skewX(3deg);
        -moz-transform: skewX(3deg);
        -ms-transform: skewX(3deg);
        -o-transform: skewX(3deg);
        transform: skewX(3deg);
    }
    70% {
        -webkit-transform: skewX(-2deg);
        -moz-transform: skewX(-2deg);
        -ms-transform: skewX(-2deg);
        -o-transform: skewX(-2deg);
        transform: skewX(-2deg);
    }
    80% {
        -webkit-transform: skewX(1deg);
        -moz-transform: skewX(1deg);
        -ms-transform: skewX(1deg);
        -o-transform: skewX(1deg);
        transform: skewX(1deg);
    }
    90% {
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
        transform: skewX(0deg);
    }
    100% {
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
        transform: skewX(0deg);
    }
}

@-webkit-keyframes wiggle {
    0% {
        -webkit-transform: skewX(9deg);
        -moz-transform: skewX(9deg);
        -ms-transform: skewX(9deg);
        -o-transform: skewX(9deg);
        transform: skewX(9deg);
    }
    10% {
        -webkit-transform: skewX(-8deg);
        -moz-transform: skewX(-8deg);
        -ms-transform: skewX(-8deg);
        -o-transform: skewX(-8deg);
        transform: skewX(-8deg);
    }
    20% {
        -webkit-transform: skewX(7deg);
        -moz-transform: skewX(7deg);
        -ms-transform: skewX(7deg);
        -o-transform: skewX(7deg);
        transform: skewX(7deg);
    }
    30% {
        -webkit-transform: skewX(-6deg);
        -moz-transform: skewX(-6deg);
        -ms-transform: skewX(-6deg);
        -o-transform: skewX(-6deg);
        transform: skewX(-6deg);
    }
    40% {
        -webkit-transform: skewX(5deg);
        -moz-transform: skewX(5deg);
        -ms-transform: skewX(5deg);
        -o-transform: skewX(5deg);
        transform: skewX(5deg);
    }
    50% {
        -webkit-transform: skewX(-4deg);
        -moz-transform: skewX(-4deg);
        -ms-transform: skewX(-4deg);
        -o-transform: skewX(-4deg);
        transform: skewX(-4deg);
    }
    60% {
        -webkit-transform: skewX(3deg);
        -moz-transform: skewX(3deg);
        -ms-transform: skewX(3deg);
        -o-transform: skewX(3deg);
        transform: skewX(3deg);
    }
    70% {
        -webkit-transform: skewX(-2deg);
        -moz-transform: skewX(-2deg);
        -ms-transform: skewX(-2deg);
        -o-transform: skewX(-2deg);
        transform: skewX(-2deg);
    }
    80% {
        -webkit-transform: skewX(1deg);
        -moz-transform: skewX(1deg);
        -ms-transform: skewX(1deg);
        -o-transform: skewX(1deg);
        transform: skewX(1deg);
    }
    90% {
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
        transform: skewX(0deg);
    }
    100% {
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
        transform: skewX(0deg);
    }
}

@-o-keyframes wiggle {
    0% {
        -webkit-transform: skewX(9deg);
        -moz-transform: skewX(9deg);
        -ms-transform: skewX(9deg);
        -o-transform: skewX(9deg);
        transform: skewX(9deg);
    }
    10% {
        -webkit-transform: skewX(-8deg);
        -moz-transform: skewX(-8deg);
        -ms-transform: skewX(-8deg);
        -o-transform: skewX(-8deg);
        transform: skewX(-8deg);
    }
    20% {
        -webkit-transform: skewX(7deg);
        -moz-transform: skewX(7deg);
        -ms-transform: skewX(7deg);
        -o-transform: skewX(7deg);
        transform: skewX(7deg);
    }
    30% {
        -webkit-transform: skewX(-6deg);
        -moz-transform: skewX(-6deg);
        -ms-transform: skewX(-6deg);
        -o-transform: skewX(-6deg);
        transform: skewX(-6deg);
    }
    40% {
        -webkit-transform: skewX(5deg);
        -moz-transform: skewX(5deg);
        -ms-transform: skewX(5deg);
        -o-transform: skewX(5deg);
        transform: skewX(5deg);
    }
    50% {
        -webkit-transform: skewX(-4deg);
        -moz-transform: skewX(-4deg);
        -ms-transform: skewX(-4deg);
        -o-transform: skewX(-4deg);
        transform: skewX(-4deg);
    }
    60% {
        -webkit-transform: skewX(3deg);
        -moz-transform: skewX(3deg);
        -ms-transform: skewX(3deg);
        -o-transform: skewX(3deg);
        transform: skewX(3deg);
    }
    70% {
        -webkit-transform: skewX(-2deg);
        -moz-transform: skewX(-2deg);
        -ms-transform: skewX(-2deg);
        -o-transform: skewX(-2deg);
        transform: skewX(-2deg);
    }
    80% {
        -webkit-transform: skewX(1deg);
        -moz-transform: skewX(1deg);
        -ms-transform: skewX(1deg);
        -o-transform: skewX(1deg);
        transform: skewX(1deg);
    }
    90% {
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
        transform: skewX(0deg);
    }
    100% {
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
        transform: skewX(0deg);
    }
}

@-ms-keyframes wiggle {
    0% {
        -webkit-transform: skewX(9deg);
        -moz-transform: skewX(9deg);
        -ms-transform: skewX(9deg);
        -o-transform: skewX(9deg);
        transform: skewX(9deg);
    }
    10% {
        -webkit-transform: skewX(-8deg);
        -moz-transform: skewX(-8deg);
        -ms-transform: skewX(-8deg);
        -o-transform: skewX(-8deg);
        transform: skewX(-8deg);
    }
    20% {
        -webkit-transform: skewX(7deg);
        -moz-transform: skewX(7deg);
        -ms-transform: skewX(7deg);
        -o-transform: skewX(7deg);
        transform: skewX(7deg);
    }
    30% {
        -webkit-transform: skewX(-6deg);
        -moz-transform: skewX(-6deg);
        -ms-transform: skewX(-6deg);
        -o-transform: skewX(-6deg);
        transform: skewX(-6deg);
    }
    40% {
        -webkit-transform: skewX(5deg);
        -moz-transform: skewX(5deg);
        -ms-transform: skewX(5deg);
        -o-transform: skewX(5deg);
        transform: skewX(5deg);
    }
    50% {
        -webkit-transform: skewX(-4deg);
        -moz-transform: skewX(-4deg);
        -ms-transform: skewX(-4deg);
        -o-transform: skewX(-4deg);
        transform: skewX(-4deg);
    }
    60% {
        -webkit-transform: skewX(3deg);
        -moz-transform: skewX(3deg);
        -ms-transform: skewX(3deg);
        -o-transform: skewX(3deg);
        transform: skewX(3deg);
    }
    70% {
        -webkit-transform: skewX(-2deg);
        -moz-transform: skewX(-2deg);
        -ms-transform: skewX(-2deg);
        -o-transform: skewX(-2deg);
        transform: skewX(-2deg);
    }
    80% {
        -webkit-transform: skewX(1deg);
        -moz-transform: skewX(1deg);
        -ms-transform: skewX(1deg);
        -o-transform: skewX(1deg);
        transform: skewX(1deg);
    }
    90% {
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
        transform: skewX(0deg);
    }
    100% {
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
        transform: skewX(0deg);
    }
}

@keyframes wiggle {
    0% {
        -webkit-transform: skewX(9deg);
        -moz-transform: skewX(9deg);
        -ms-transform: skewX(9deg);
        -o-transform: skewX(9deg);
        transform: skewX(9deg);
    }
    10% {
        -webkit-transform: skewX(-8deg);
        -moz-transform: skewX(-8deg);
        -ms-transform: skewX(-8deg);
        -o-transform: skewX(-8deg);
        transform: skewX(-8deg);
    }
    20% {
        -webkit-transform: skewX(7deg);
        -moz-transform: skewX(7deg);
        -ms-transform: skewX(7deg);
        -o-transform: skewX(7deg);
        transform: skewX(7deg);
    }
    30% {
        -webkit-transform: skewX(-6deg);
        -moz-transform: skewX(-6deg);
        -ms-transform: skewX(-6deg);
        -o-transform: skewX(-6deg);
        transform: skewX(-6deg);
    }
    40% {
        -webkit-transform: skewX(5deg);
        -moz-transform: skewX(5deg);
        -ms-transform: skewX(5deg);
        -o-transform: skewX(5deg);
        transform: skewX(5deg);
    }
    50% {
        -webkit-transform: skewX(-4deg);
        -moz-transform: skewX(-4deg);
        -ms-transform: skewX(-4deg);
        -o-transform: skewX(-4deg);
        transform: skewX(-4deg);
    }
    60% {
        -webkit-transform: skewX(3deg);
        -moz-transform: skewX(3deg);
        -ms-transform: skewX(3deg);
        -o-transform: skewX(3deg);
        transform: skewX(3deg);
    }
    70% {
        -webkit-transform: skewX(-2deg);
        -moz-transform: skewX(-2deg);
        -ms-transform: skewX(-2deg);
        -o-transform: skewX(-2deg);
        transform: skewX(-2deg);
    }
    80% {
        -webkit-transform: skewX(1deg);
        -moz-transform: skewX(1deg);
        -ms-transform: skewX(1deg);
        -o-transform: skewX(1deg);
        transform: skewX(1deg);
    }
    90% {
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
        transform: skewX(0deg);
    }
    100% {
        -webkit-transform: skewX(0deg);
        -moz-transform: skewX(0deg);
        -ms-transform: skewX(0deg);
        -o-transform: skewX(0deg);
        transform: skewX(0deg);
    }
}

@-moz-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    25% {
        -webkit-transform: scale(0.95, 0.95);
        -moz-transform: scale(0.95, 0.95);
        -ms-transform: scale(0.95, 0.95);
        -o-transform: scale(0.95, 0.95);
        transform: scale(0.95, 0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1, 1.1);
        -moz-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
        -o-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3, 0.3);
        -moz-transform: scale(0.3, 0.3);
        -ms-transform: scale(0.3, 0.3);
        -o-transform: scale(0.3, 0.3);
        transform: scale(0.3, 0.3);
    }
}

@-webkit-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    25% {
        -webkit-transform: scale(0.95, 0.95);
        -moz-transform: scale(0.95, 0.95);
        -ms-transform: scale(0.95, 0.95);
        -o-transform: scale(0.95, 0.95);
        transform: scale(0.95, 0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1, 1.1);
        -moz-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
        -o-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3, 0.3);
        -moz-transform: scale(0.3, 0.3);
        -ms-transform: scale(0.3, 0.3);
        -o-transform: scale(0.3, 0.3);
        transform: scale(0.3, 0.3);
    }
}

@-o-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    25% {
        -webkit-transform: scale(0.95, 0.95);
        -moz-transform: scale(0.95, 0.95);
        -ms-transform: scale(0.95, 0.95);
        -o-transform: scale(0.95, 0.95);
        transform: scale(0.95, 0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1, 1.1);
        -moz-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
        -o-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3, 0.3);
        -moz-transform: scale(0.3, 0.3);
        -ms-transform: scale(0.3, 0.3);
        -o-transform: scale(0.3, 0.3);
        transform: scale(0.3, 0.3);
    }
}

@-ms-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    25% {
        -webkit-transform: scale(0.95, 0.95);
        -moz-transform: scale(0.95, 0.95);
        -ms-transform: scale(0.95, 0.95);
        -o-transform: scale(0.95, 0.95);
        transform: scale(0.95, 0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1, 1.1);
        -moz-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
        -o-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3, 0.3);
        -moz-transform: scale(0.3, 0.3);
        -ms-transform: scale(0.3, 0.3);
        -o-transform: scale(0.3, 0.3);
        transform: scale(0.3, 0.3);
    }
}

@keyframes bounceOut {
    0% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
    25% {
        -webkit-transform: scale(0.95, 0.95);
        -moz-transform: scale(0.95, 0.95);
        -ms-transform: scale(0.95, 0.95);
        -o-transform: scale(0.95, 0.95);
        transform: scale(0.95, 0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1, 1.1);
        -moz-transform: scale(1.1, 1.1);
        -ms-transform: scale(1.1, 1.1);
        -o-transform: scale(1.1, 1.1);
        transform: scale(1.1, 1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3, 0.3);
        -moz-transform: scale(0.3, 0.3);
        -ms-transform: scale(0.3, 0.3);
        -o-transform: scale(0.3, 0.3);
        transform: scale(0.3, 0.3);
    }
}

@-moz-keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}

@-webkit-keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}

@-o-keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}

@-ms-keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}

@keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}

@-moz-keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@-webkit-keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@-o-keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@-ms-keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@-moz-keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@-webkit-keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@-o-keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@-ms-keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@-moz-keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@-webkit-keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@-o-keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@-ms-keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@-moz-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3, 0.3);
        -moz-transform: scale(0.3, 0.3);
        -ms-transform: scale(0.3, 0.3);
        -o-transform: scale(0.3, 0.3);
        transform: scale(0.3, 0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05, 1.05);
        -moz-transform: scale(1.05, 1.05);
        -ms-transform: scale(1.05, 1.05);
        -o-transform: scale(1.05, 1.05);
        transform: scale(1.05, 1.05);
    }
    70% {
        -webkit-transform: scale(0.9, 0.9);
        -moz-transform: scale(0.9, 0.9);
        -ms-transform: scale(0.9, 0.9);
        -o-transform: scale(0.9, 0.9);
        transform: scale(0.9, 0.9);
    }
    100% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

@-webkit-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3, 0.3);
        -moz-transform: scale(0.3, 0.3);
        -ms-transform: scale(0.3, 0.3);
        -o-transform: scale(0.3, 0.3);
        transform: scale(0.3, 0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05, 1.05);
        -moz-transform: scale(1.05, 1.05);
        -ms-transform: scale(1.05, 1.05);
        -o-transform: scale(1.05, 1.05);
        transform: scale(1.05, 1.05);
    }
    70% {
        -webkit-transform: scale(0.9, 0.9);
        -moz-transform: scale(0.9, 0.9);
        -ms-transform: scale(0.9, 0.9);
        -o-transform: scale(0.9, 0.9);
        transform: scale(0.9, 0.9);
    }
    100% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

@-o-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3, 0.3);
        -moz-transform: scale(0.3, 0.3);
        -ms-transform: scale(0.3, 0.3);
        -o-transform: scale(0.3, 0.3);
        transform: scale(0.3, 0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05, 1.05);
        -moz-transform: scale(1.05, 1.05);
        -ms-transform: scale(1.05, 1.05);
        -o-transform: scale(1.05, 1.05);
        transform: scale(1.05, 1.05);
    }
    70% {
        -webkit-transform: scale(0.9, 0.9);
        -moz-transform: scale(0.9, 0.9);
        -ms-transform: scale(0.9, 0.9);
        -o-transform: scale(0.9, 0.9);
        transform: scale(0.9, 0.9);
    }
    100% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

@-ms-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3, 0.3);
        -moz-transform: scale(0.3, 0.3);
        -ms-transform: scale(0.3, 0.3);
        -o-transform: scale(0.3, 0.3);
        transform: scale(0.3, 0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05, 1.05);
        -moz-transform: scale(1.05, 1.05);
        -ms-transform: scale(1.05, 1.05);
        -o-transform: scale(1.05, 1.05);
        transform: scale(1.05, 1.05);
    }
    70% {
        -webkit-transform: scale(0.9, 0.9);
        -moz-transform: scale(0.9, 0.9);
        -ms-transform: scale(0.9, 0.9);
        -o-transform: scale(0.9, 0.9);
        transform: scale(0.9, 0.9);
    }
    100% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

@keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3, 0.3);
        -moz-transform: scale(0.3, 0.3);
        -ms-transform: scale(0.3, 0.3);
        -o-transform: scale(0.3, 0.3);
        transform: scale(0.3, 0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05, 1.05);
        -moz-transform: scale(1.05, 1.05);
        -ms-transform: scale(1.05, 1.05);
        -o-transform: scale(1.05, 1.05);
        transform: scale(1.05, 1.05);
    }
    70% {
        -webkit-transform: scale(0.9, 0.9);
        -moz-transform: scale(0.9, 0.9);
        -ms-transform: scale(0.9, 0.9);
        -o-transform: scale(0.9, 0.9);
        transform: scale(0.9, 0.9);
    }
    100% {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }
}

@-moz-keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        -moz-transform: translateY(30px);
        -ms-transform: translateY(30px);
        -o-transform: translateY(30px);
        transform: translateY(30px);
    }
    80% {
        -webkit-transform: translateY(-10px);
        -moz-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
        -o-transform: translateY(-10px);
        transform: translateY(-10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        -moz-transform: translateY(30px);
        -ms-transform: translateY(30px);
        -o-transform: translateY(30px);
        transform: translateY(30px);
    }
    80% {
        -webkit-transform: translateY(-10px);
        -moz-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
        -o-transform: translateY(-10px);
        transform: translateY(-10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-o-keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        -moz-transform: translateY(30px);
        -ms-transform: translateY(30px);
        -o-transform: translateY(30px);
        transform: translateY(30px);
    }
    80% {
        -webkit-transform: translateY(-10px);
        -moz-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
        -o-transform: translateY(-10px);
        transform: translateY(-10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-ms-keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        -moz-transform: translateY(30px);
        -ms-transform: translateY(30px);
        -o-transform: translateY(30px);
        transform: translateY(30px);
    }
    80% {
        -webkit-transform: translateY(-10px);
        -moz-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
        -o-transform: translateY(-10px);
        transform: translateY(-10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        -moz-transform: translateY(30px);
        -ms-transform: translateY(30px);
        -o-transform: translateY(30px);
        transform: translateY(30px);
    }
    80% {
        -webkit-transform: translateY(-10px);
        -moz-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
        -o-transform: translateY(-10px);
        transform: translateY(-10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-moz-keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -o-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    80% {
        -webkit-transform: translateY(10px);
        -moz-transform: translateY(10px);
        -ms-transform: translateY(10px);
        -o-transform: translateY(10px);
        transform: translateY(10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -o-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    80% {
        -webkit-transform: translateY(10px);
        -moz-transform: translateY(10px);
        -ms-transform: translateY(10px);
        -o-transform: translateY(10px);
        transform: translateY(10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-o-keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -o-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    80% {
        -webkit-transform: translateY(10px);
        -moz-transform: translateY(10px);
        -ms-transform: translateY(10px);
        -o-transform: translateY(10px);
        transform: translateY(10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-ms-keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -o-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    80% {
        -webkit-transform: translateY(10px);
        -moz-transform: translateY(10px);
        -ms-transform: translateY(10px);
        -o-transform: translateY(10px);
        transform: translateY(10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -o-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    80% {
        -webkit-transform: translateY(10px);
        -moz-transform: translateY(10px);
        -ms-transform: translateY(10px);
        -o-transform: translateY(10px);
        transform: translateY(10px);
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-moz-keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        -moz-transform: translateX(-30px);
        -ms-transform: translateX(-30px);
        -o-transform: translateX(-30px);
        transform: translateX(-30px);
    }
    80% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        -moz-transform: translateX(-30px);
        -ms-transform: translateX(-30px);
        -o-transform: translateX(-30px);
        transform: translateX(-30px);
    }
    80% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-o-keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        -moz-transform: translateX(-30px);
        -ms-transform: translateX(-30px);
        -o-transform: translateX(-30px);
        transform: translateX(-30px);
    }
    80% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-ms-keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        -moz-transform: translateX(-30px);
        -ms-transform: translateX(-30px);
        -o-transform: translateX(-30px);
        transform: translateX(-30px);
    }
    80% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        -moz-transform: translateX(-30px);
        -ms-transform: translateX(-30px);
        -o-transform: translateX(-30px);
        transform: translateX(-30px);
    }
    80% {
        -webkit-transform: translateX(10px);
        -moz-transform: translateX(10px);
        -ms-transform: translateX(10px);
        -o-transform: translateX(10px);
        transform: translateX(10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-moz-keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        -moz-transform: translateX(30px);
        -ms-transform: translateX(30px);
        -o-transform: translateX(30px);
        transform: translateX(30px);
    }
    80% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        -moz-transform: translateX(30px);
        -ms-transform: translateX(30px);
        -o-transform: translateX(30px);
        transform: translateX(30px);
    }
    80% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-o-keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        -moz-transform: translateX(30px);
        -ms-transform: translateX(30px);
        -o-transform: translateX(30px);
        transform: translateX(30px);
    }
    80% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-ms-keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        -moz-transform: translateX(30px);
        -ms-transform: translateX(30px);
        -o-transform: translateX(30px);
        transform: translateX(30px);
    }
    80% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        -moz-transform: translateX(30px);
        -ms-transform: translateX(30px);
        -o-transform: translateX(30px);
        transform: translateX(30px);
    }
    80% {
        -webkit-transform: translateX(-10px);
        -moz-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        -o-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-moz-keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@-o-keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@-ms-keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@-moz-keyframes fadeOutUp {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
}

@-webkit-keyframes fadeOutUp {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
}

@-o-keyframes fadeOutUp {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
}

@-ms-keyframes fadeOutUp {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
}

@keyframes fadeOutUp {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
}

@-moz-keyframes fadeOutDown {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
        opacity: 0;
    }
}

@-webkit-keyframes fadeOutDown {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
        opacity: 0;
    }
}

@-o-keyframes fadeOutDown {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
        opacity: 0;
    }
}

@-ms-keyframes fadeOutDown {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
        opacity: 0;
    }
}

@keyframes fadeOutDown {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
        opacity: 0;
    }
}

@-moz-keyframes fadeOutRight {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
        opacity: 0;
    }
}

@-webkit-keyframes fadeOutRight {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
        opacity: 0;
    }
}

@-o-keyframes fadeOutRight {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
        opacity: 0;
    }
}

@-ms-keyframes fadeOutRight {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
        opacity: 0;
    }
}

@keyframes fadeOutRight {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
        opacity: 0;
    }
}

@-moz-keyframes fadeOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
        opacity: 0;
    }
}

@-webkit-keyframes fadeOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
        opacity: 0;
    }
}

@-o-keyframes fadeOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
        opacity: 0;
    }
}

@-ms-keyframes fadeOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
        opacity: 0;
    }
}

@keyframes fadeOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
        opacity: 0;
    }
}

@-moz-keyframes fadeOutUpBig {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
        opacity: 0;
    }
}

@-webkit-keyframes fadeOutUpBig {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
        opacity: 0;
    }
}

@-o-keyframes fadeOutUpBig {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
        opacity: 0;
    }
}

@-ms-keyframes fadeOutUpBig {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
        opacity: 0;
    }
}

@keyframes fadeOutUpBig {
    0% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
        opacity: 0;
    }
}

@-moz-keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@-webkit-keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@-o-keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@-ms-keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@-moz-keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@-webkit-keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@-o-keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@-ms-keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@-moz-keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@-webkit-keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@-o-keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@-ms-keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@-moz-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-o-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-ms-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-moz-keyframes fadeInUp {
    0% {
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-webkit-keyframes fadeInUp {
    0% {
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-o-keyframes fadeInUp {
    0% {
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-ms-keyframes fadeInUp {
    0% {
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes fadeInUp {
    0% {
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-moz-keyframes fadeInDown {
    0% {
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-webkit-keyframes fadeInDown {
    0% {
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-o-keyframes fadeInDown {
    0% {
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-ms-keyframes fadeInDown {
    0% {
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes fadeInDown {
    0% {
        -webkit-transform: translateY(-20px);
        -moz-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        -o-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-moz-keyframes fadeInRight {
    0% {
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@-webkit-keyframes fadeInRight {
    0% {
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@-o-keyframes fadeInRight {
    0% {
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@-ms-keyframes fadeInRight {
    0% {
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes fadeInRight {
    0% {
        -webkit-transform: translateX(20px);
        -moz-transform: translateX(20px);
        -ms-transform: translateX(20px);
        -o-transform: translateX(20px);
        transform: translateX(20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@-moz-keyframes fadeInLeft {
    0% {
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@-webkit-keyframes fadeInLeft {
    0% {
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@-o-keyframes fadeInLeft {
    0% {
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@-ms-keyframes fadeInLeft {
    0% {
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes fadeInLeft {
    0% {
        -webkit-transform: translateX(-20px);
        -moz-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        -o-transform: translateX(-20px);
        transform: translateX(-20px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@-moz-keyframes fadeInUpBig {
    0% {
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-webkit-keyframes fadeInUpBig {
    0% {
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-o-keyframes fadeInUpBig {
    0% {
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-ms-keyframes fadeInUpBig {
    0% {
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes fadeInUpBig {
    0% {
        -webkit-transform: translateY(2000px);
        -moz-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        -o-transform: translateY(2000px);
        transform: translateY(2000px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

@-moz-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-o-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-ms-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -moz-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        -o-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
}

@-moz-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-o-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-ms-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -moz-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        -o-transform: translateX(2000px);
        transform: translateX(2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-moz-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-o-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-ms-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -moz-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        -o-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
    }
}

@-moz-keyframes flip {
    0% {
        -webkit-transform: perspective(400px) rotateY(0);
        -moz-transform: perspective(400px) rotateY(0);
        -ms-transform: perspective(400px) rotateY(0);
        -o-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        -webkit-animation-timing-function: ease-out;
        -moz-animation-timing-function: ease-out;
        -ms-animation-timing-function: ease-out;
        -o-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -webkit-animation-timing-function: ease-out;
        -moz-animation-timing-function: ease-out;
        -ms-animation-timing-function: ease-out;
        -o-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    80% {
        -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -moz-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -ms-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -o-transform: perspective(400px) rotateY(360deg) scale(0.95);
        transform: perspective(400px) rotateY(360deg) scale(0.95);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    100% {
        -webkit-transform: perspective(400px) scale(1);
        -moz-transform: perspective(400px) scale(1);
        -ms-transform: perspective(400px) scale(1);
        -o-transform: perspective(400px) scale(1);
        transform: perspective(400px) scale(1);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

@-webkit-keyframes flip {
    0% {
        -webkit-transform: perspective(400px) rotateY(0);
        -moz-transform: perspective(400px) rotateY(0);
        -ms-transform: perspective(400px) rotateY(0);
        -o-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        -webkit-animation-timing-function: ease-out;
        -moz-animation-timing-function: ease-out;
        -ms-animation-timing-function: ease-out;
        -o-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -webkit-animation-timing-function: ease-out;
        -moz-animation-timing-function: ease-out;
        -ms-animation-timing-function: ease-out;
        -o-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    80% {
        -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -moz-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -ms-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -o-transform: perspective(400px) rotateY(360deg) scale(0.95);
        transform: perspective(400px) rotateY(360deg) scale(0.95);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    100% {
        -webkit-transform: perspective(400px) scale(1);
        -moz-transform: perspective(400px) scale(1);
        -ms-transform: perspective(400px) scale(1);
        -o-transform: perspective(400px) scale(1);
        transform: perspective(400px) scale(1);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

@-o-keyframes flip {
    0% {
        -webkit-transform: perspective(400px) rotateY(0);
        -moz-transform: perspective(400px) rotateY(0);
        -ms-transform: perspective(400px) rotateY(0);
        -o-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        -webkit-animation-timing-function: ease-out;
        -moz-animation-timing-function: ease-out;
        -ms-animation-timing-function: ease-out;
        -o-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -webkit-animation-timing-function: ease-out;
        -moz-animation-timing-function: ease-out;
        -ms-animation-timing-function: ease-out;
        -o-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    80% {
        -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -moz-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -ms-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -o-transform: perspective(400px) rotateY(360deg) scale(0.95);
        transform: perspective(400px) rotateY(360deg) scale(0.95);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    100% {
        -webkit-transform: perspective(400px) scale(1);
        -moz-transform: perspective(400px) scale(1);
        -ms-transform: perspective(400px) scale(1);
        -o-transform: perspective(400px) scale(1);
        transform: perspective(400px) scale(1);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

@-ms-keyframes flip {
    0% {
        -webkit-transform: perspective(400px) rotateY(0);
        -moz-transform: perspective(400px) rotateY(0);
        -ms-transform: perspective(400px) rotateY(0);
        -o-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        -webkit-animation-timing-function: ease-out;
        -moz-animation-timing-function: ease-out;
        -ms-animation-timing-function: ease-out;
        -o-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -webkit-animation-timing-function: ease-out;
        -moz-animation-timing-function: ease-out;
        -ms-animation-timing-function: ease-out;
        -o-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    80% {
        -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -moz-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -ms-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -o-transform: perspective(400px) rotateY(360deg) scale(0.95);
        transform: perspective(400px) rotateY(360deg) scale(0.95);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    100% {
        -webkit-transform: perspective(400px) scale(1);
        -moz-transform: perspective(400px) scale(1);
        -ms-transform: perspective(400px) scale(1);
        -o-transform: perspective(400px) scale(1);
        transform: perspective(400px) scale(1);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

@keyframes flip {
    0% {
        -webkit-transform: perspective(400px) rotateY(0);
        -moz-transform: perspective(400px) rotateY(0);
        -ms-transform: perspective(400px) rotateY(0);
        -o-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        -webkit-animation-timing-function: ease-out;
        -moz-animation-timing-function: ease-out;
        -ms-animation-timing-function: ease-out;
        -o-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
        transform: perspective(400px) translateZ(150px) rotateY(170deg);
        -webkit-animation-timing-function: ease-out;
        -moz-animation-timing-function: ease-out;
        -ms-animation-timing-function: ease-out;
        -o-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    80% {
        -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -moz-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -ms-transform: perspective(400px) rotateY(360deg) scale(0.95);
        -o-transform: perspective(400px) rotateY(360deg) scale(0.95);
        transform: perspective(400px) rotateY(360deg) scale(0.95);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    100% {
        -webkit-transform: perspective(400px) scale(1);
        -moz-transform: perspective(400px) scale(1);
        -ms-transform: perspective(400px) scale(1);
        -o-transform: perspective(400px) scale(1);
        transform: perspective(400px) scale(1);
        -webkit-animation-timing-function: ease-in;
        -moz-animation-timing-function: ease-in;
        -ms-animation-timing-function: ease-in;
        -o-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

@-moz-keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -moz-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        -o-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        -moz-transform: perspective(400px) rotateX(-10deg);
        -ms-transform: perspective(400px) rotateX(-10deg);
        -o-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        -moz-transform: perspective(400px) rotateX(10deg);
        -ms-transform: perspective(400px) rotateX(10deg);
        -o-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -moz-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        -o-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-webkit-keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -moz-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        -o-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        -moz-transform: perspective(400px) rotateX(-10deg);
        -ms-transform: perspective(400px) rotateX(-10deg);
        -o-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        -moz-transform: perspective(400px) rotateX(10deg);
        -ms-transform: perspective(400px) rotateX(10deg);
        -o-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -moz-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        -o-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-o-keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -moz-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        -o-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        -moz-transform: perspective(400px) rotateX(-10deg);
        -ms-transform: perspective(400px) rotateX(-10deg);
        -o-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        -moz-transform: perspective(400px) rotateX(10deg);
        -ms-transform: perspective(400px) rotateX(10deg);
        -o-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -moz-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        -o-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-ms-keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -moz-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        -o-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        -moz-transform: perspective(400px) rotateX(-10deg);
        -ms-transform: perspective(400px) rotateX(-10deg);
        -o-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        -moz-transform: perspective(400px) rotateX(10deg);
        -ms-transform: perspective(400px) rotateX(10deg);
        -o-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -moz-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        -o-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -moz-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        -o-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        -moz-transform: perspective(400px) rotateX(-10deg);
        -ms-transform: perspective(400px) rotateX(-10deg);
        -o-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        -moz-transform: perspective(400px) rotateX(10deg);
        -ms-transform: perspective(400px) rotateX(10deg);
        -o-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -moz-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        -o-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-moz-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -moz-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        -o-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -moz-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        -o-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-webkit-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -moz-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        -o-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -moz-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        -o-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-o-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -moz-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        -o-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -moz-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        -o-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-ms-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -moz-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        -o-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -moz-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        -o-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -moz-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        -o-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -moz-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        -o-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-moz-keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -moz-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        -o-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        -moz-transform: perspective(400px) rotateY(-10deg);
        -ms-transform: perspective(400px) rotateY(-10deg);
        -o-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        -moz-transform: perspective(400px) rotateY(10deg);
        -ms-transform: perspective(400px) rotateY(10deg);
        -o-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -moz-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        -o-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-webkit-keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -moz-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        -o-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        -moz-transform: perspective(400px) rotateY(-10deg);
        -ms-transform: perspective(400px) rotateY(-10deg);
        -o-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        -moz-transform: perspective(400px) rotateY(10deg);
        -ms-transform: perspective(400px) rotateY(10deg);
        -o-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -moz-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        -o-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-o-keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -moz-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        -o-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        -moz-transform: perspective(400px) rotateY(-10deg);
        -ms-transform: perspective(400px) rotateY(-10deg);
        -o-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        -moz-transform: perspective(400px) rotateY(10deg);
        -ms-transform: perspective(400px) rotateY(10deg);
        -o-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -moz-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        -o-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-ms-keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -moz-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        -o-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        -moz-transform: perspective(400px) rotateY(-10deg);
        -ms-transform: perspective(400px) rotateY(-10deg);
        -o-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        -moz-transform: perspective(400px) rotateY(10deg);
        -ms-transform: perspective(400px) rotateY(10deg);
        -o-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -moz-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        -o-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -moz-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        -o-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        -moz-transform: perspective(400px) rotateY(-10deg);
        -ms-transform: perspective(400px) rotateY(-10deg);
        -o-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg);
    }
    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        -moz-transform: perspective(400px) rotateY(10deg);
        -ms-transform: perspective(400px) rotateY(10deg);
        -o-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg);
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -moz-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        -o-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-moz-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -moz-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        -o-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -moz-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        -o-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-webkit-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -moz-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        -o-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -moz-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        -o-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-o-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -moz-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        -o-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -moz-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        -o-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-ms-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -moz-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        -o-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -moz-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        -o-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -moz-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        -o-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -moz-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        -o-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-moz-keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -moz-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        -o-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        -moz-transform: translateX(-20%) skewX(30deg);
        -ms-transform: translateX(-20%) skewX(30deg);
        -o-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        -moz-transform: translateX(0%) skewX(-15deg);
        -ms-transform: translateX(0%) skewX(-15deg);
        -o-transform: translateX(0%) skewX(-15deg);
        transform: translateX(0%) skewX(-15deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -moz-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        -o-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-webkit-keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -moz-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        -o-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        -moz-transform: translateX(-20%) skewX(30deg);
        -ms-transform: translateX(-20%) skewX(30deg);
        -o-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        -moz-transform: translateX(0%) skewX(-15deg);
        -ms-transform: translateX(0%) skewX(-15deg);
        -o-transform: translateX(0%) skewX(-15deg);
        transform: translateX(0%) skewX(-15deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -moz-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        -o-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-o-keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -moz-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        -o-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        -moz-transform: translateX(-20%) skewX(30deg);
        -ms-transform: translateX(-20%) skewX(30deg);
        -o-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        -moz-transform: translateX(0%) skewX(-15deg);
        -ms-transform: translateX(0%) skewX(-15deg);
        -o-transform: translateX(0%) skewX(-15deg);
        transform: translateX(0%) skewX(-15deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -moz-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        -o-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-ms-keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -moz-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        -o-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        -moz-transform: translateX(-20%) skewX(30deg);
        -ms-transform: translateX(-20%) skewX(30deg);
        -o-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        -moz-transform: translateX(0%) skewX(-15deg);
        -ms-transform: translateX(0%) skewX(-15deg);
        -o-transform: translateX(0%) skewX(-15deg);
        transform: translateX(0%) skewX(-15deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -moz-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        -o-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -moz-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        -o-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        -moz-transform: translateX(-20%) skewX(30deg);
        -ms-transform: translateX(-20%) skewX(30deg);
        -o-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        -moz-transform: translateX(0%) skewX(-15deg);
        -ms-transform: translateX(0%) skewX(-15deg);
        -o-transform: translateX(0%) skewX(-15deg);
        transform: translateX(0%) skewX(-15deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -moz-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        -o-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
}

@-moz-keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -moz-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        -o-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -moz-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        -o-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-webkit-keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -moz-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        -o-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -moz-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        -o-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-o-keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -moz-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        -o-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -moz-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        -o-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-ms-keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -moz-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        -o-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -moz-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        -o-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -moz-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        -o-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -moz-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        -o-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-moz-keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(200deg);
        -moz-transform: rotate(200deg);
        -ms-transform: rotate(200deg);
        -o-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0;
    }
}

@-webkit-keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(200deg);
        -moz-transform: rotate(200deg);
        -ms-transform: rotate(200deg);
        -o-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0;
    }
}

@-o-keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(200deg);
        -moz-transform: rotate(200deg);
        -ms-transform: rotate(200deg);
        -o-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0;
    }
}

@-ms-keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(200deg);
        -moz-transform: rotate(200deg);
        -ms-transform: rotate(200deg);
        -o-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0;
    }
}

@keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(200deg);
        -moz-transform: rotate(200deg);
        -ms-transform: rotate(200deg);
        -o-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0;
    }
}

@-moz-keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@-webkit-keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@-o-keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@-ms-keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@-moz-keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@-webkit-keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@-o-keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@-ms-keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@-moz-keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@-webkit-keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@-o-keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@-ms-keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@-moz-keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@-webkit-keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@-o-keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@-ms-keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@-moz-keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(-200deg);
        -moz-transform: rotate(-200deg);
        -ms-transform: rotate(-200deg);
        -o-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-webkit-keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(-200deg);
        -moz-transform: rotate(-200deg);
        -ms-transform: rotate(-200deg);
        -o-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-o-keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(-200deg);
        -moz-transform: rotate(-200deg);
        -ms-transform: rotate(-200deg);
        -o-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-ms-keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(-200deg);
        -moz-transform: rotate(-200deg);
        -ms-transform: rotate(-200deg);
        -o-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(-200deg);
        -moz-transform: rotate(-200deg);
        -ms-transform: rotate(-200deg);
        -o-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: center center 50%;
        -moz-transform-origin: center center 50%;
        -ms-transform-origin: center center 50%;
        -o-transform-origin: center center 50%;
        transform-origin: center center 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-moz-keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-webkit-keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-o-keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-ms-keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-moz-keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-webkit-keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-o-keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-ms-keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: left bottom 50%;
        -moz-transform-origin: left bottom 50%;
        -ms-transform-origin: left bottom 50%;
        -o-transform-origin: left bottom 50%;
        transform-origin: left bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-moz-keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-webkit-keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-o-keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-ms-keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-moz-keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-webkit-keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-o-keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-ms-keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
    100% {
        -webkit-transform-origin: right bottom 50%;
        -moz-transform-origin: right bottom 50%;
        -ms-transform-origin: right bottom 50%;
        -o-transform-origin: right bottom 50%;
        transform-origin: right bottom 50%;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@-moz-keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    20%,
    60% {
        -webkit-transform: rotate(80deg);
        -moz-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        -o-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    40% {
        -webkit-transform: rotate(60deg);
        -moz-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        -o-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        -moz-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        -o-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    100% {
        -webkit-transform: translateY(700px);
        -moz-transform: translateY(700px);
        -ms-transform: translateY(700px);
        -o-transform: translateY(700px);
        transform: translateY(700px);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-webkit-keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    20%,
    60% {
        -webkit-transform: rotate(80deg);
        -moz-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        -o-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    40% {
        -webkit-transform: rotate(60deg);
        -moz-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        -o-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        -moz-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        -o-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    100% {
        -webkit-transform: translateY(700px);
        -moz-transform: translateY(700px);
        -ms-transform: translateY(700px);
        -o-transform: translateY(700px);
        transform: translateY(700px);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-o-keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    20%,
    60% {
        -webkit-transform: rotate(80deg);
        -moz-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        -o-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    40% {
        -webkit-transform: rotate(60deg);
        -moz-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        -o-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        -moz-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        -o-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    100% {
        -webkit-transform: translateY(700px);
        -moz-transform: translateY(700px);
        -ms-transform: translateY(700px);
        -o-transform: translateY(700px);
        transform: translateY(700px);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-ms-keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    20%,
    60% {
        -webkit-transform: rotate(80deg);
        -moz-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        -o-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    40% {
        -webkit-transform: rotate(60deg);
        -moz-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        -o-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        -moz-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        -o-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    100% {
        -webkit-transform: translateY(700px);
        -moz-transform: translateY(700px);
        -ms-transform: translateY(700px);
        -o-transform: translateY(700px);
        transform: translateY(700px);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    20%,
    60% {
        -webkit-transform: rotate(80deg);
        -moz-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        -o-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    40% {
        -webkit-transform: rotate(60deg);
        -moz-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        -o-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        -moz-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        -o-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform-origin: top left 50%;
        -moz-transform-origin: top left 50%;
        -ms-transform-origin: top left 50%;
        -o-transform-origin: top left 50%;
        transform-origin: top left 50%;
        -webkit-animation-timing-function: ease-in-out;
        -moz-animation-timing-function: ease-in-out;
        -ms-animation-timing-function: ease-in-out;
        -o-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    100% {
        -webkit-transform: translateY(700px);
        -moz-transform: translateY(700px);
        -ms-transform: translateY(700px);
        -o-transform: translateY(700px);
        transform: translateY(700px);
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
    }
}

@-moz-keyframes rollIn {
    0% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -moz-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        -o-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
    100% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -moz-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        -o-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
}

@-webkit-keyframes rollIn {
    0% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -moz-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        -o-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
    100% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -moz-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        -o-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
}

@-o-keyframes rollIn {
    0% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -moz-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        -o-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
    100% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -moz-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        -o-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
}

@-ms-keyframes rollIn {
    0% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -moz-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        -o-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
    100% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -moz-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        -o-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
}

@keyframes rollIn {
    0% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -moz-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        -o-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
    100% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -moz-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        -o-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
}

@-moz-keyframes rollOut {
    0% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -moz-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        -o-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
    100% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -moz-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        -o-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
}

@-webkit-keyframes rollOut {
    0% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -moz-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        -o-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
    100% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -moz-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        -o-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
}

@-o-keyframes rollOut {
    0% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -moz-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        -o-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
    100% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -moz-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        -o-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
}

@-ms-keyframes rollOut {
    0% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -moz-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        -o-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
    100% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -moz-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        -o-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
}

@keyframes rollOut {
    0% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -moz-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        -o-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
    100% {
        filter: progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -moz-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        -o-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }
}


/*-------------------------------------------------------------------*/


/* === Core Styles === */


/* Demo Styles */

.template-demo>.mdc-button {
    margin-top: 10px;
    margin-right: 10px;
}

.template-demo>.mdc-linear-progres {
    margin-top: 10px;
}

.template-demo>.mdc-switch {
    margin-top: 30px;
    margin-right: 40px;
}

.template-demo>.mdc-snackbar {
    position: relative;
    left: auto;
    transform: none;
}

.template-demo>.mdc-menu-anchor {
    margin-top: 1rem;
}

.icon-demo i {
    margin: 1rem;
}

.dialog-demo {
    position: relative;
    width: 320px;
    z-index: auto;
    margin: auto;
}

.demo-card {
    width: 100%;
    height: auto;
    background-color: white;
}

.hero {
    min-height: 480px;
}

.demo-card {
    max-width: 21.875rem;
    margin-bottom: 48px;
}

@media (min-width: 768px) {
    .demo-card {
        margin-bottom: 24px;
    }
}

.demo-card__16-9-media {
    background-image: url("../images/cover/16-9.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    height: 12.313rem;
}

.demo-card--small .mdc-card__media {
    background-image: url("../images/cover/1-1.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    height: 10.938rem;
}

.demo-card--bg-demo {
    height: 21.875rem;
    background-image: url("../images/cover/1-1.jpg");
    background-size: cover;
    background-repeat: no-repeat;
}

.demo-card--bg-demo .mdc-card__actions,
.demo-card--bg-demo .mdc-card__primary {
    background: rgba(0, 0, 0, 0.4);
}

.mdc-text-field--invalid .mdc-text-field__input {
    border-color: #ec3432;
}

.CodeMirror {
    font-size: 1rem;
    height: auto;
    text-align: left;
}

@font-face {
    font-family: 'Material Icons';
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/material-icons/MaterialIcons-Regular.eot");
    /* For IE6-8 */
    src: local("Material Icons"), local("MaterialIcons-Regular"), url("../fonts/material-icons/MaterialIcons-Regular.woff2") format("woff2"), url("../fonts/material-icons/MaterialIcons-Regular.woff") format("woff"), url("../fonts/material-icons/MaterialIcons-Regular.ttf") format("truetype");
}

@font-face {
    font-family: 'Roboto';
    src: url("../fonts/roboto/Roboto-Light.eot");
    src: url("../fonts/roboto/Roboto-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto/Roboto-Light.woff2") format("woff2"), url("../fonts/roboto/Roboto-Light.woff") format("woff"), url("../fonts/roboto/Roboto-Light.ttf") format("truetype"), url("../fonts/roboto/Roboto-Light.svg#Roboto-Light") format("svg");
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Roboto';
    src: url("../fonts/roboto/Roboto-Regular.eot");
    src: url("../fonts/roboto/Roboto-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto/Roboto-Regular.woff2") format("woff2"), url("../fonts/roboto/Roboto-Regular.woff") format("woff"), url("../fonts/roboto/Roboto-Regular.ttf") format("truetype"), url("../fonts/roboto/Roboto-Regular.svg#Roboto-Regular") format("svg");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Roboto';
    src: url("../fonts/roboto/Roboto-Bold.eot");
    src: url("../fonts/roboto/Roboto-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto/Roboto-Bold.woff2") format("woff2"), url("../fonts/roboto/Roboto-Bold.woff") format("woff"), url("../fonts/roboto/Roboto-Bold.ttf") format("truetype"), url("../fonts/roboto/Roboto-Bold.svg#Roboto-Bold") format("svg");
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Roboto';
    src: url("../fonts/roboto/Roboto-Medium.eot");
    src: url("../fonts/roboto/Roboto-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto/Roboto-Medium.woff2") format("woff2"), url("../fonts/roboto/Roboto-Medium.woff") format("woff"), url("../fonts/roboto/Roboto-Medium.ttf") format("truetype"), url("../fonts/roboto/Roboto-Medium.svg#Roboto-Medium") format("svg");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Roboto';
    src: url("../fonts/roboto/Roboto-Thin.eot");
    src: url("../fonts/roboto/Roboto-Thin.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto/Roboto-Thin.woff2") format("woff2"), url("../fonts/roboto/Roboto-Thin.woff") format("woff"), url("../fonts/roboto/Roboto-Thin.ttf") format("truetype"), url("../fonts/roboto/Roboto-Thin.svg#Roboto-Thin") format("svg");
    font-weight: 100;
    font-style: normal;
}

.material-icons {
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    /* Preferred icon size */
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    /* Support for all WebKit browsers. */
    -webkit-font-smoothing: antialiased;
    /* Support for Safari and Chrome. */
    text-rendering: optimizeLegibility;
    /* Support for Firefox. */
    -moz-osx-font-smoothing: grayscale;
    /* Support for IE. */
    font-feature-settings: 'liga';
}


/* Footer */

footer {
    margin-left: 255px;
}


/* Navbar */

.mdc-toolbar.mdc-toolbar--fixed {
    left: auto;
    right: 0;
    -webkit-transition-duration: 0.2s;
    -moz-transition-duration: 0.2s;
    -o-transition-duration: 0.2s;
    transition-duration: 0.2s;
    transition-property: width;
}

.mdc-toolbar .material-icons {
    color: #fff;
}

.mdc-persistent-drawer--open+.mdc-toolbar {
    width: calc(100% - 255px);
    -webkit-transition-duration: 0.3s;
    -moz-transition-duration: 0.3s;
    -o-transition-duration: 0.3s;
    transition-duration: 0.3s;
    transition-property: width, transform;
}

.mdc-persistent-drawer--open+.mdc-toolbar.mdc-toolbar--fixed {
    -webkit-box-shadow: 6px 6px 13px 0px rgba(0, 0, 0, 0.19);
    -moz-box-shadow: 6px 6px 13px 0px rgba(0, 0, 0, 0.19);
    box-shadow: 6px 6px 13px 0px rgba(0, 0, 0, 0.19);
}

.mdc-toolbar__section {
    -webkit-align-items: center;
    align-items: center;
}

.mdc-toolbar__section .mdc-toolbar__input {
    margin-left: 2rem;
    padding: 0;
    width: 100%;
}

.mdc-toolbar__section .mdc-toolbar__input .mdc-text-field {
    margin-bottom: 0;
    width: 100%;
}

.mdc-toolbar__section .mdc-toolbar__input .mdc-text-field__input {
    padding-bottom: 0;
    font-size: .875rem;
}

.mdc-toolbar__section .mdc-toolbar__input .mdc-text-field__input:-ms-input-placeholder {
    color: #fff;
}

.mdc-toolbar__section .mdc-toolbar__input .mdc-text-field__input:-moz-placeholder {
    color: #fff;
}

.mdc-toolbar__section .mdc-toolbar__input .mdc-text-field__input::-moz-placeholder {
    color: #fff;
}

.mdc-toolbar__section .mdc-toolbar__input .mdc-text-field__input::-webkit-input-placeholder {
    color: #fff;
}

.mdc-toolbar__section .mdc-toolbar__input .mdc-text-field:not(.mdc-text-field--upgraded):not(.mdc-text-field--textarea) .mdc-text-field__input {
    border-bottom: 0;
    height: 30px;
    background: #0097db;
    padding: 5px 20px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    font-weight: 400;
    font-size: 13px;
    color: #fff;
}

.mdc-toolbar__section .mdc-toolbar__icon:last-of-type {
    padding-left: .75rem;
    padding-right: .75rem;
}

.mdc-toolbar__section .mdc-toolbar__icon .dropdown-count {
    position: absolute;
    width: 1rem;
    height: 1rem;
    line-height: 1rem;
    right: 9px;
    top: 12px;
    font-size: 10px;
    text-align: center;
    background: #e52d27;
    font-weight: 500;
    color: #fff;
}

.mdc-toolbar__section .mdc-simple-menu__items .mdc-list-item {
    font-size: .875rem;
}

.mdc-toolbar__section .mdc-simple-menu__items .mdc-list-item i {
    font-size: 1rem;
}


/* Sidebar */

.mdc-persistent-drawer {
    position: fixed;
    top: 0;
    left: 0;
}

.mdc-persistent-drawer--open,
.mdc-persistent-drawer__drawer {
    width: 255px;
    -webkit-box-shadow: 5px 0px 9px 0px rgba(0, 0, 0, 0.06);
    -moz-box-shadow: 5px 0px 9px 0px rgba(0, 0, 0, 0.06);
    box-shadow: 5px 0px 9px 0px rgba(0, 0, 0, 0.06);
}

.mdc-persistent-drawer--open .mdc-list-group .mdc-drawer-menu,
.mdc-persistent-drawer__drawer .mdc-list-group .mdc-drawer-menu {
    padding: 25px 0 200px 0;
    position: relative;
    overflow: hidden;
    max-height: 500px;
}

.mdc-persistent-drawer__drawer {
    border-right: 0;
}

.mdc-persistent-drawer__toolbar-spacer {
    background: #fff;
    padding: 0 0 0 1.75rem;
}

.mdc-persistent-drawer .brand-logo {
    width: 100%;
    text-align: left;
}

.mdc-persistent-drawer .brand-logo img {
    width: 160px;
}

.mdc-persistent-drawer .mdc-drawer-item {
    cursor: pointer;
    display: block;
    height: auto;
    padding: 0.2rem 1rem;
}

.mdc-persistent-drawer .mdc-drawer-item:before {
    z-index: -1;
}

.mdc-persistent-drawer .mdc-drawer-item:active:before {
    opacity: 0;
}

.mdc-persistent-drawer .mdc-drawer-item .mdc-drawer-link {
    height: 48px;
    line-height: 48px;
    padding: 0 0.75rem;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    font-size: 0.8125rem;
    font-weight: 400;
    text-decoration: none;
    color: #212121;
}

.mdc-persistent-drawer .mdc-drawer-item .mdc-drawer-link i {
    color: inherit;
}

.mdc-persistent-drawer .mdc-drawer-item .mdc-drawer-link i.mdc-drawer-item-icon {
    font-size: 1.25rem;
    margin-right: 1rem;
}

.mdc-persistent-drawer .mdc-drawer-item .mdc-drawer-link .mdc-drawer-arrow {
    margin-left: auto;
}

.mdc-persistent-drawer .mdc-drawer-item .mdc-drawer-link.active {
    background: rgba(0, 0, 0, 0.06);
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
}

.mdc-persistent-drawer .mdc-drawer-item .mdc-expansion-panel {
    display: none;
    height: 0;
    transition: height 0.3s ease;
}

.mdc-persistent-drawer .mdc-drawer-item .mdc-expansion-panel.expanded {
    display: block;
    height: auto;
}

.mdc-persistent-drawer .mdc-drawer-item.purchase-link .mdc-drawer-link {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
    color: #fff;
    text-align: center;
    display: block;
    background: url(../images/cover/bg_profile.jpg);
    background-size: cover;
}

body {
    padding: 0;
    margin: 0;
}

.body-wrapper {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
}

.body-wrapper .page-wrapper {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.body-wrapper .page-wrapper .content-wrapper {
    padding: 30px 0px 0px 255px;
    min-height: calc(100vh - 64px - 40px);
    background: #f6f6f6;
    -webkit-flex-grow: 1;
    flex-grow: 1;
}

.body-wrapper .page-wrapper .content-wrapper.drawer-minimized {
    padding-left: 0px;
}

.body-wrapper .page-wrapper .footer {
    padding: 30px 0px 0px 255px;
}


/* Typography */

body {
    font-size: 1rem;
    font-family: 'Roboto', sans-serif;
    font-weight: initial;
}

p {
    font-size: 0.875rem;
}

.h1,
h1 {
    font-size: 2.19rem;
}

.h2,
h2 {
    font-size: 1.88rem;
}

.h3,
h3 {
    font-size: 1.56rem;
}

.h4,
h4 {
    font-size: 1.13rem;
}

.h5,
h5 {
    font-size: 1rem;
}

.h6,
h6 {
    font-size: 0.9375rem;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
}

p {
    font-size: 0.88rem;
}

.blockquote {
    padding: 1.25rem;
    border: 1px solid #cccccc;
}

address p {
    margin-bottom: 0;
}


/* Utilities */

.font-weight-normal {
    font-weight: normal !important;
}

.font-weight-light {
    font-weight: 300 !important;
}

.font-weight-medium {
    font-weight: 500 !important;
}

.font-weight-bold {
    font-weight: bold !important;
}

.text-left {
    text-align: left !important;
}

.text-right {
    text-align: right !important;
}

.text-small {
    font-size: 0.875rem;
}

.icon-lg {
    font-size: 2.5rem;
}

.icon-md {
    font-size: 1.875rem;
}

.icon-sm {
    font-size: 1rem;
}

.stretch-card {
    display: -webkit-flex;
    display: flex;
}

.stretch-card .mdc-card {
    width: 100%;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}

.d-flex {
    display: -webkit-flex;
    display: flex;
}

.align-item-start {
    -webkit-align-items: flex-start;
    align-items: flex-start;
}

.align-item-center {
    -webkit-align-items: center;
    align-items: center;
}

.align-item-end {
    -webkit-align-items: flex-end;
    align-items: flex-end;
}

.justify-content-start {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}

.justify-content-center {
    -webkit-justify-content: center;
    justify-content: center;
}

.justify-content-end {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
}

.justify-content-between {
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.flex-grow-1 {
    -webkit-flex-grow: 1;
    flex-grow: 1;
}

.flex-row {
    -webkit-flex-direction: row;
    flex-direction: row;
}

.flex-column {
    -webkit-flex-direction: column;
    flex-direction: column;
}

.w-100 {
    width: 100%;
    min-width: 100%;
}

.w-75 {
    width: 75%;
    min-width: 75%;
}

.w-50 {
    width: 50%;
    min-width: 50%;
}

.text-left {
    text-align: left;
}

.text-center {
    text-align: center !important;
}

.bg-white {
    background: #fff;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.ml-auto {
    margin-left: auto;
}

.mr-auto {
    margin-right: auto;
}

.text-white {
    color: #fff !important;
}

.text-muted {
    color: #494949 !important;
}

.text-green {
    color: green !important;
}

.my-auto {
    margin-top: auto;
    margin-bottom: auto;
}

.mt-auto {
    margin-top: auto;
}

.mb-auto {
    margin-bottom: auto;
}

.p-0 {
    padding: 0 !important;
}

.px-1 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}

.mb-0 {
    margin-bottom: 0;
}

.mb-1 {
    margin-bottom: 1rem;
}

.mb-2 {
    margin-bottom: 2rem;
}

.mb-3 {
    margin-bottom: 3rem;
}

.mb-4 {
    margin-bottom: 4rem;
}

.mb-5 {
    margin-bottom: 5rem;
}

.mt-0 {
    margin-top: 0;
}

.mt-1 {
    margin-top: 1rem;
}

.mt-2 {
    margin-top: 2rem;
}

.mt-3 {
    margin-top: 3rem;
}

.mt-4 {
    margin-top: 4rem;
}

.mr-1 {
    margin-right: 1rem;
}

.py-2 {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.py-3 {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.py-4 {
    padding-top: 4rem;
    padding-bottom: 4rem;
}

.px-4 {
    padding-left: 4rem;
    padding-right: 4rem;
}

.pl-1 {
    padding-left: 1rem;
}

.pl-2 {
    padding-left: 1rem;
}

.pl-3 {
    padding-left: 3rem;
}

.pl-4 {
    padding-left: 4rem;
}

.pl-5 {
    padding-left: 5rem;
}

.pr-1 {
    padding-right: 1rem;
}

.pl-2 {
    padding-right: 1rem;
}

.pr-3 {
    padding-right: 3rem;
}

.pr-4 {
    padding-right: 4rem;
}

.pr-5 {
    padding-right: 5rem !important;
}

.pt-1 {
    padding-top: 1rem !important;
}

.pt-2 {
    padding-top: 2rem !important;
}

.pt-3 {
    padding-top: 3rem !important;
}

.pt-4 {
    padding-top: 4rem !important;
}

.pt-5 {
    padding-top: 5rem !important;
}

.px-3 {
    padding-left: 3rem;
    padding-right: 3rem;
}

.px-2 {
    padding-left: 2rem;
    padding-right: 2rem;
}

.pb-1 {
    padding-bottom: 1rem !important;
}

.pb-2 {
    padding-bottom: 2rem !important;
}

.overflow-visible {
    overflow: visible;
}

.bg-blue {
    background: #0057ff;
}

.bg-red {
    background: #ec3432;
}

.text-red {
    color: #ec3432;
}

.text-blue {
    color: #0057ff;
}

.text-yellow {
    color: #feab00;
}

.border-bottom {
    border-bottom: 1px solid #cccccc;
}

.purchase__card_section {
    padding: 20px;
}

.purchase__card_section .mdc-button {
    margin-right: 10px;
}

.purchase__card_section .mdc-button:not(.mdc-button--stroked) {
    color: #fff;
}

.rounded {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
}


/* Dashboard */

.mdc--tile {
    width: 50px;
    height: 50px;
    background: url(image/icons8-coronavirus-64.png) no-repeat;
    background-size: 95% 95%;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.mdc--tile.mdc--tile-danger {
    background-color: #e53a36;
    margin-left: 10px;
    -webkit-box-shadow: 0px 9px 19px -9px rgba(229, 58, 54, 0.65);
    -moz-box-shadow: 0px 9px 19px -9px rgba(229, 58, 54, 0.65);
    box-shadow: 0px 9px 19px -9px rgba(229, 58, 54, 0.65);
}

.mdc--tile.mdc--tile-success {
    background: #4ca74f;
    -webkit-box-shadow: 0px 9px 19px -9px rgba(76, 167, 79, 0.65);
    -moz-box-shadow: 0px 9px 19px -9px rgba(76, 167, 79, 0.65);
    box-shadow: 0px 9px 19px -9px rgba(76, 167, 79, 0.65);
}

.mdc--tile.mdc--tile-warning {
    background: #fea11d;
    -webkit-box-shadow: 0px 9px 19px -9px rgba(254, 161, 29, 0.65);
    -moz-box-shadow: 0px 9px 19px -9px rgba(254, 161, 29, 0.65);
    box-shadow: 0px 9px 19px -9px rgba(254, 161, 29, 0.65);
}

.mdc--tile.mdc--tile-primary {
    background: #11b2c6;
    -webkit-box-shadow: 0px 9px 19px -9px rgba(17, 178, 198, 0.65);
    -moz-box-shadow: 0px 9px 19px -9px rgba(17, 178, 198, 0.65);
    box-shadow: 0px 9px 19px -9px rgba(17, 178, 198, 0.65);
}


/*-------------------------------------------------------------------*/


/* === Components === */


/* Buttons */

.mdc-button--raised:not(:disabled),
.mdc-button--unelevated:not(:disabled),
.mdc-button {
    color: #fff;
}

.mdc-button.secondary-text-button:not(:disabled) {
    color: #e52d27;
}

.mdc-button.secondary-text-button::before,
.mdc-button.secondary-text-button::after {
    /* @alternate */
    background-color: #e52d27;
}

@supports not (-ms-ime-align: auto) {
    .mdc-button.secondary-text-button::before,
    .mdc-button.secondary-text-button::after {
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

.mdc-button.secondary-text-button:hover::before {
    opacity: 0.04;
}

.mdc-button.secondary-text-button:not(.mdc-ripple-upgraded):focus::before,
.mdc-button.secondary-text-button.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-button.secondary-text-button:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-button.secondary-text-button:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-button.secondary-text-button.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-button--theme-dark .mdc-button.secondary-text-button:not(:disabled),
.mdc-theme--dark .mdc-button.secondary-text-button:not(:disabled) {
    color: #e52d27;
}

.mdc-button--theme-dark .mdc-button.secondary-text-button::before,
.mdc-button--theme-dark .mdc-button.secondary-text-button::after,
.mdc-theme--dark .mdc-button.secondary-text-button::before,
.mdc-theme--dark .mdc-button.secondary-text-button::after {
    /* @alternate */
    background-color: #e52d27;
}

@supports not (-ms-ime-align: auto) {
    .mdc-button--theme-dark .mdc-button.secondary-text-button::before,
    .mdc-button--theme-dark .mdc-button.secondary-text-button::after,
    .mdc-theme--dark .mdc-button.secondary-text-button::before,
    .mdc-theme--dark .mdc-button.secondary-text-button::after {
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

.mdc-button--theme-dark .mdc-button.secondary-text-button:hover::before,
.mdc-theme--dark .mdc-button.secondary-text-button:hover::before {
    opacity: 0.04;
}

.mdc-button--theme-dark .mdc-button.secondary-text-button:not(.mdc-ripple-upgraded):focus::before,
.mdc-button--theme-dark .mdc-button.secondary-text-button.mdc-ripple-upgraded--background-focused::before,
.mdc-theme--dark .mdc-button.secondary-text-button:not(.mdc-ripple-upgraded):focus::before,
.mdc-theme--dark .mdc-button.secondary-text-button.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-button--theme-dark .mdc-button.secondary-text-button:not(.mdc-ripple-upgraded)::after,
.mdc-theme--dark .mdc-button.secondary-text-button:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-button--theme-dark .mdc-button.secondary-text-button:not(.mdc-ripple-upgraded):active::after,
.mdc-theme--dark .mdc-button.secondary-text-button:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-button--theme-dark .mdc-button.secondary-text-button.mdc-ripple-upgraded,
.mdc-theme--dark .mdc-button.secondary-text-button.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-button.secondary-filled-button:not(:disabled) {
    background-color: #e52d27;
}

.mdc-button.secondary-filled-button:not(:disabled) {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-button.secondary-filled-button::before,
.mdc-button.secondary-filled-button::after {
    /* @alternate */
    background-color: white;
}

@supports not (-ms-ime-align: auto) {
    .mdc-button.secondary-filled-button::before,
    .mdc-button.secondary-filled-button::after {
        background-color: var(--mdc-theme-text-primary-on-dark, white);
    }
}

.mdc-button.secondary-filled-button:hover::before {
    opacity: 0.08;
}

.mdc-button.secondary-filled-button:not(.mdc-ripple-upgraded):focus::before,
.mdc-button.secondary-filled-button.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.24;
}

.mdc-button.secondary-filled-button:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-button.secondary-filled-button:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.32;
}

.mdc-button.secondary-filled-button.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32;
}

.mdc-button--theme-dark .mdc-button.secondary-filled-button:not(:disabled),
.mdc-theme--dark .mdc-button.secondary-filled-button:not(:disabled) {
    background-color: #e52d27;
}

.mdc-button--theme-dark .mdc-button.secondary-filled-button:not(:disabled),
.mdc-theme--dark .mdc-button.secondary-filled-button:not(:disabled) {
    /* @alternate */
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
}

.mdc-button--theme-dark .mdc-button.secondary-filled-button::before,
.mdc-button--theme-dark .mdc-button.secondary-filled-button::after,
.mdc-theme--dark .mdc-button.secondary-filled-button::before,
.mdc-theme--dark .mdc-button.secondary-filled-button::after {
    /* @alternate */
    background-color: white;
}

@supports not (-ms-ime-align: auto) {
    .mdc-button--theme-dark .mdc-button.secondary-filled-button::before,
    .mdc-button--theme-dark .mdc-button.secondary-filled-button::after,
    .mdc-theme--dark .mdc-button.secondary-filled-button::before,
    .mdc-theme--dark .mdc-button.secondary-filled-button::after {
        background-color: var(--mdc-theme-text-primary-on-dark, white);
    }
}

.mdc-button--theme-dark .mdc-button.secondary-filled-button:hover::before,
.mdc-theme--dark .mdc-button.secondary-filled-button:hover::before {
    opacity: 0.08;
}

.mdc-button--theme-dark .mdc-button.secondary-filled-button:not(.mdc-ripple-upgraded):focus::before,
.mdc-button--theme-dark .mdc-button.secondary-filled-button.mdc-ripple-upgraded--background-focused::before,
.mdc-theme--dark .mdc-button.secondary-filled-button:not(.mdc-ripple-upgraded):focus::before,
.mdc-theme--dark .mdc-button.secondary-filled-button.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.24;
}

.mdc-button--theme-dark .mdc-button.secondary-filled-button:not(.mdc-ripple-upgraded)::after,
.mdc-theme--dark .mdc-button.secondary-filled-button:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-button--theme-dark .mdc-button.secondary-filled-button:not(.mdc-ripple-upgraded):active::after,
.mdc-theme--dark .mdc-button.secondary-filled-button:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.32;
}

.mdc-button--theme-dark .mdc-button.secondary-filled-button.mdc-ripple-upgraded,
.mdc-theme--dark .mdc-button.secondary-filled-button.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.32;
}

.mdc-button.secondary-stroked-button:not(:disabled) {
    color: #e52d27;
}

.mdc-button.secondary-stroked-button:not(:disabled) {
    border-color: #e52d27;
}

.mdc-button.secondary-stroked-button::before,
.mdc-button.secondary-stroked-button::after {
    /* @alternate */
    background-color: #e52d27;
}

@supports not (-ms-ime-align: auto) {
    .mdc-button.secondary-stroked-button::before,
    .mdc-button.secondary-stroked-button::after {
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

.mdc-button.secondary-stroked-button:hover::before {
    opacity: 0.04;
}

.mdc-button.secondary-stroked-button:not(.mdc-ripple-upgraded):focus::before,
.mdc-button.secondary-stroked-button.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-button.secondary-stroked-button:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-button.secondary-stroked-button:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-button.secondary-stroked-button.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-button--theme-dark .mdc-button.secondary-stroked-button:not(:disabled),
.mdc-theme--dark .mdc-button.secondary-stroked-button:not(:disabled) {
    color: #e52d27;
}

.mdc-button--theme-dark .mdc-button.secondary-stroked-button:not(:disabled),
.mdc-theme--dark .mdc-button.secondary-stroked-button:not(:disabled) {
    border-color: #e52d27;
}

.mdc-button--theme-dark .mdc-button.secondary-stroked-button::before,
.mdc-button--theme-dark .mdc-button.secondary-stroked-button::after,
.mdc-theme--dark .mdc-button.secondary-stroked-button::before,
.mdc-theme--dark .mdc-button.secondary-stroked-button::after {
    /* @alternate */
    background-color: #e52d27;
}

@supports not (-ms-ime-align: auto) {
    .mdc-button--theme-dark .mdc-button.secondary-stroked-button::before,
    .mdc-button--theme-dark .mdc-button.secondary-stroked-button::after,
    .mdc-theme--dark .mdc-button.secondary-stroked-button::before,
    .mdc-theme--dark .mdc-button.secondary-stroked-button::after {
        background-color: var(--mdc-theme-secondary, #e52d27);
    }
}

.mdc-button--theme-dark .mdc-button.secondary-stroked-button:hover::before,
.mdc-theme--dark .mdc-button.secondary-stroked-button:hover::before {
    opacity: 0.04;
}

.mdc-button--theme-dark .mdc-button.secondary-stroked-button:not(.mdc-ripple-upgraded):focus::before,
.mdc-button--theme-dark .mdc-button.secondary-stroked-button.mdc-ripple-upgraded--background-focused::before,
.mdc-theme--dark .mdc-button.secondary-stroked-button:not(.mdc-ripple-upgraded):focus::before,
.mdc-theme--dark .mdc-button.secondary-stroked-button.mdc-ripple-upgraded--background-focused::before {
    transition-duration: 75ms;
    opacity: 0.12;
}

.mdc-button--theme-dark .mdc-button.secondary-stroked-button:not(.mdc-ripple-upgraded)::after,
.mdc-theme--dark .mdc-button.secondary-stroked-button:not(.mdc-ripple-upgraded)::after {
    transition: opacity 150ms linear;
}

.mdc-button--theme-dark .mdc-button.secondary-stroked-button:not(.mdc-ripple-upgraded):active::after,
.mdc-theme--dark .mdc-button.secondary-stroked-button:not(.mdc-ripple-upgraded):active::after {
    transition-duration: 75ms;
    opacity: 0.16;
}

.mdc-button--theme-dark .mdc-button.secondary-stroked-button.mdc-ripple-upgraded,
.mdc-theme--dark .mdc-button.secondary-stroked-button.mdc-ripple-upgraded {
    --mdc-ripple-fg-opacity: 0.16;
}

.mdc-button .mdc-button__icon {
    line-height: 33px;
}


/* Cards */

.mdc-card {
    background: #fff;
    -webkit-box-shadow: 0 1px 6px -1px rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0 1px 6px -1px rgba(0, 0, 0, 0.15);
    box-shadow: 0 1px 6px -1px rgba(0, 0, 0, 0.15);
}

.card--with-avatar .mdc-card__primary {
    position: relative;
}

.card--with-avatar .card__avatar {
    position: absolute;
    background: #bdbdbd;
    height: 2.5rem;
    width: 2.5rem;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%;
    overflow: hidden;
}

.card--with-avatar .card__avatar img {
    max-width: 100%;
    max-height: 100%;
    height: 100%;
    width: 100%;
}


/*
.card--with-avatar .mdc-card__subtitle,
.card--with-avatar .mdc-card__title {
  margin-left: 56px; }
*/

.mdc-card__title {
    font-size: 14px;
    font-weight: 600;
}

.mdc-card__subtitle {
    font-size: 13px;
    color: rgba(0, 0, 0, 0.8);
}

.mdc-card__title--large {
    font-size: 16px;
    font-weight: 600;
    width: 100%;
}

.social__icon-badge {
    position: absolute;
    right: 15px;
    top: 20px;
    font-size: 20px;
}

.social__icon-badge.mdc-twitter {
    color: #0057ff;
}

.mdc-card__social-footer {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    padding: 10px 0;
}

.mdc-card__social-footer .col {
    color: #fff;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    text-align: center;
}

.mdc-card__social-footer .col small {
    font-size: 12px;
}

.mdc-card__social-footer .col p {
    font-size: 17px;
    font-weight: 600;
    margin-top: 6px;
    margin-bottom: 0;
}

.mdc-card__action-footer {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}

.mdc-card__action-footer .col {
    color: #fff;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    text-align: center;
    padding: 10px 0;
}

.mdc-card__action-footer .col i {
    font-size: 18px;
}

.mdc-card__action-footer .col.mdc-button {
    height: auto;
}

.table {
    width: 100%;
    max-width: 100%;
    border-collapse: collapse;
}

.table thead tr th {
    padding: 6px 10px;
    color: #757575;
    font-size: 13px;
    text-align: right;
    border-bottom: 1px solid #cccccc;
    font-weight: 500;
}


/*
    .table thead tr th:first-child {
      padding-left: 30px; }
    
    .table thead tr th:last-child {
      padding-right: 30px; }
      */

.table tbody tr {
    -webkit-transition-duration: 0.3s;
    -moz-transition-duration: 0.3s;
    -o-transition-duration: 0.3s;
    transition-duration: 0.3s;
}

.table tbody tr td {
    padding: 6px 10px;
    font-size: 13px;
    color: #212121;
    text-align: right;
    height: 24px;
    border-bottom: 1px solid #cccccc;
    font-weight: 400;
}


/*
      .table tbody tr td:first-child {
        padding-left: 30px; }
      .table tbody tr td:last-child {
        padding-right: 30px; }
        */

.table tbody tr td .mdc-button {
    min-width: 0;
    height: 24px;
    line-height: 24px;
}

.table tbody tr:last-child td {
    border-bottom: none;
}

.table.table-hoverable tr:hover {
    background: #EEEEEE;
}

.table.table-striped tbody tr:nth-child(odd) {
    background: #EEEEEE;
}


/* Dropdown */

.mdc-simple-menu--right {
    top: 100% !important;
    right: 0;
    left: auto !important;
}


/* Checkbox */

.mdc-checkbox.demo-checkbox--custom-all::after,
.mdc-checkbox.demo-checkbox--custom-all::before {
    background: red;
}

.mdc-checkbox.demo-checkbox--custom-all .mdc-checkbox__native-control:enabled:not(:checked):not(:indeterminate)~.mdc-checkbox__background {
    border-color: red;
    background-color: rgba(244, 67, 54, 0.25);
}

.mdc-checkbox.demo-checkbox--custom-all .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background {
    border-color: red;
    background-color: red;
}

.mdc-checkbox.demo-checkbox--custom-all .mdc-checkbox__background:before {
    background: red;
}

.mdc-radio.demo-radio--custom:after,
.mdc-radio.demo-radio--custom:after {
    background-color: red;
}

.mdc-radio.demo-radio--custom .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle {
    border-color: red;
}

.mdc-radio.demo-radio--custom .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle {
    border-color: red;
}

.mdc-radio.demo-radio--custom .mdc-radio__native-control:enabled+.mdc-radio__background .mdc-radio__inner-circle {
    background-color: orange;
}

.chartjs-legend ul {
    list-style: none;
    padding-left: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.chartjs-legend ul li {
    margin-right: 6%;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    color: #3c4858;
}

.chartjs-legend ul li span {
    height: 10px;
    width: 10px;
    margin-right: 0.6rem;
    display: inline-block;
    font-size: 0.875rem;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    -o-border-radius: 50px;
    border-radius: 50px;
}

.rtl .chartjs-legend ul {
    padding-right: 0;
}

.rtl .chartjs-legend ul li {
    margin-right: 0;
    margin-left: 8%;
}

.rtl .chartjs-legend ul li span {
    margin-right: 0;
    margin-left: 1rem;
}


/*-------------------------------------------------------------------*/


/* === Sample page styles === */


/* Authentication */

.auth-screen {
    background: url("../images/cover/Login_bg.jpg") no-repeat center;
    background-size: cover;
    min-height: 100vh;
}

.error-page {
    min-height: 100vh;
}

.error-page .error-header {
    padding: 100px 30px 20px 30px;
    color: #fff;
    font-size: 30px;
}


/*-------------------------------------------------------------------*/

#table_oA {
    width: 100%;
}


/*-------------------------------------------------------------------*/

.button_corona {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}


/*-------------------------------------------------------------------*/

#container {
    width: 460px;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    padding-left: 24px;
    padding-right: 1em;
    /* margin-left: 88px; */
    /* top: 350px; */
    /* left: 250px; */
}

#container .ui-progress-bar {
    margin-top: 0.5em;
    margin-bottom: 0.25em;
}

#container .ui-progress span.ui-label {
    font-size: 0.7em;
    position: absolute;
    right: 0;
    /*line-height: 33px;*/
    padding-right: 12px;
    color: rgba(0, 0, 0, 0.6);
    text-shadow: rgba(255, 255, 255, 0.45) 0 1px 0px;
    white-space: nowrap;
}

#container @-webkit-keyframes animate-stripes {
    from {
        background-position: 0 0;
    }
    to {
        background-position: 44px 0;
    }
}

#container .ui-progress-bar {
    position: relative;
    height: 20px;
    /*Change from 35px*/
    padding-right: 2px;
    background-color: #abb2bc;
    border-radius: 20px;
    /*Change from 35px*/
    -moz-border-radius: 20px;
    /*Change from 35px*/
    -webkit-border-radius: 20px;
    /*Change from 35px*/
    background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #b6bcc6), color-stop(1, #9da5b0));
    background: -moz-linear-gradient(#9da5b0 0%, #b6bcc6 100%);
    -webkit-box-shadow: inset 0px 1px 2px 0px rgba(0, 0, 0, 0.5), 0px 1px 0px 0px #FFF;
    -moz-box-shadow: inset 0px 1px 2px 0px rgba(0, 0, 0, 0.5), 0px 1px 0px 0px #FFF;
    box-shadow: inset 0px 1px 2px 0px rgba(0, 0, 0, 0.5), 0px 1px 0px 0px #FFF;
}

#container .ui-progress {
    position: relative;
    display: block;
    overflow: hidden;
    height: 18px;
    /*Change from 33px*/
    -moz-border-radius: 20px;
    /*Change from 35px*/
    -webkit-border-radius: 20px;
    /*Change from 35px*/
    border-radius: 20px;
    /*Change from 35px*/
    -webkit-background-size: 44px 44px;
    background-color: #74d04c;
    background: -webkit-gradient(linear, 0 0, 44 44, color-stop(0.00, rgba(255, 255, 255, 0.17)), color-stop(0.25, rgba(255, 255, 255, 0.17)), color-stop(0.26, rgba(255, 255, 255, 0)), color-stop(0.50, rgba(255, 255, 255, 0)), color-stop(0.51, rgba(255, 255, 255, 0.17)), color-stop(0.75, rgba(255, 255, 255, 0.17)), color-stop(0.76, rgba(255, 255, 255, 0)), color-stop(1.00, rgba(255, 255, 255, 0))), -webkit-gradient(linear, left bottom, left top, color-stop(0, #74d04c), color-stop(1, #9bdd62));
    background: -moz-repeating-linear-gradient(top left -30deg, rgba(255, 255, 255, 0.17), rgba(255, 255, 255, 0.17) 15px, rgba(255, 255, 255, 0) 15px, rgba(255, 255, 255, 0) 30px), -moz-linear-gradient(#9bdd62 0%, #74d04c 100%);
    -webkit-box-shadow: inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a;
    -moz-box-shadow: inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a;
    box-shadow: inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a;
    border: 1px solid #4c8932;
    -webkit-animation: animate-stripes 2s linear infinite;
}


/*-------------------------------------------------------------------*/

li,
a {
    font-family: Roboto, sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: #000;
    text-decoration: none;
}

header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-left: 24px;
    padding-right: 24px;
}

@media screen and (max-width:1024px) {
    .main-background {
        background: #ffffff;
        background: -moz-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
        background: -webkit-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
        background: linear-gradient(to bottom, #ffffff 0%, #e5e5e5 100%);
        filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e5e5e5', GradientType=0);
    }
    .winter-header .dd-background,
    .fall-header .dd-background,
    .silvester-header .dd-background,
    .sommer-header .dd-background,
    .spring-header .dd-background {
        background-color: #fafafa;
    }
}

.main-header {
    background: #ffffff;
    background: -moz-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
    background: -webkit-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
    background: linear-gradient(to bottom, #ffffff 0%, #e5e5e5 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e5e5e5', GradientType=0);
}

.winter-header {
    background-image: url('image/winter.jpeg');
    background-size: cover;
}

.winter-header .navbar-nav .nav-link {
    background-color: white !important;
    padding: 4px;
    margin: 4px;
    border-radius: 6px;
}

.fall-header {
    background-image: url('image/fruehling.jpeg');
    background-size: cover;
    color: white;
}

.fall-header .navbar-nav .nav-link {
    background-color: white !important;
    padding: 4px;
    margin: 4px;
    border-radius: 6px;
}

.sommer-header {
    background-image: url('image/sommer.jpeg');
    background-size: cover;
}

.sommer-header .navbar-nav .nav-link {
    background-color: white !important;
    padding: 4px;
    margin: 4px;
    border-radius: 6px;
}

.winter-header .navbar-toggler,
.sommer-header .navbar-toggler,
.fall-header .navbar-toggler,
.silvester-header .navbar-toggler,
.fall-header .navbar-toggler,
.spring-header .navbar-toggler {
    border-color: black !important;
    background: #ffffff;
    background: -moz-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
    background: -webkit-linear-gradient(top, #ffffff 0%, #e5e5e5 100%);
    background: linear-gradient(to bottom, #ffffff 0%, #e5e5e5 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e5e5e5', GradientType=0);
    border-width: 1px;
}

.sommer-header .navbar-toggler-icon,
.silvester-header .navbar-toggler-icon,
.winter-header .navbar-toggler-icon,
.spring-header .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28 0, 0, 0, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.spring-header {
    background-image: url('image/herbst.jpeg');
    background-size: cover;
}

.spring-header .navbar-nav .nav-link {
    background-color: white !important;
    padding: 4px;
    margin: 4px;
    border-radius: 6px;
}

@media screen and (max-width:1024px) {
    .spring-header {
        color: white;
    }
}

@media screen and (min-width:1024px) {
    .spring-header {
        color: black;
    }
}

.silvester-header {
    background-image: url('image/silvester.jpeg');
    background-size: cover;
    color: white !important;
}

.silvester-header .navbar-nav .nav-link {
    background-color: white !important;
    padding: 4px;
    margin: 4px;
    border-radius: 6px;
}

nav {
    width: 100%;
}


/*-------------------------------------------------------------------*/

.nav_header {
    list-style: none;
    padding-left: 0px;
}

.nav_header li {
    display: inline-block;
    padding: 0px 5px;
}

.nav_header li a {
    transition: all 0.3s ease 0s;
    font-weight: 600;
}

.nav_header li a:hover {
    color: #0088a9;
}

.active {
    color: #0057ff;
}


/*-------------------------------------------------------------------*/

@media screen and (min-width:1024px) {
    /* Bordered form */
    .form_login {
        position: fixed;
        top: 50%;
        left: 50%;
        width: 30em;
        height: auto;
        margin-top: -9em;
        /*set to a negative number 1/2 of your height*/
        margin-left: -15em;
        /*set to a negative number 1/2 of your width*/
        box-shadow: 0 1px 6px -1px rgba(0, 0, 0, 0.15);
        padding: 10px;
    }
}

@media screen and (max-width:1024px) {
    /* Bordered form */
    .form_login {
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 1px 6px -1px rgba(0, 0, 0, 0.15);
        padding: 10px;
        margin: 5px;
        position: fixed;
        top: 20%;
    }
}


/* Full-width inputs */

.form_login input[type=text],
input[type=password] {
    width: 100%;
    padding: 12px 20px;
    margin: 8px 0;
    display: inline-block;
    border: 1px solid #ccc;
    box-sizing: border-box;
}


/* Set a style for all buttons */

.login_button {
    background: rgb(44, 83, 158);
    background: -moz-linear-gradient(top, rgba(44, 83, 158, 1) 0%, rgba(44, 83, 158, 1) 100%);
    background: -webkit-linear-gradient(top, rgba(44, 83, 158, 1) 0%, rgba(44, 83, 158, 1) 100%);
    background: linear-gradient(to bottom, rgba(44, 83, 158, 1) 0%, rgba(44, 83, 158, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#2c539e', endColorstr='#2c539e', GradientType=0);
    color: white;
    padding: 14px 20px;
    margin: 8px 0;
    border: none;
    cursor: pointer;
    width: 100%;
    font-weight: 600;
}

.login_button-success {
    background: rgb(34, 139, 34);
    background: -moz-linear-gradient(top, rgba(34, 139, 34, 1) 0%, rgba(34, 139, 34, 1) 100%);
    background: -webkit-linear-gradient(top, rgba(34, 139, 34, 1) 0%, rgba(34, 139, 34, 1) 100%);
    background: linear-gradient(to bottom, rgba(34, 139, 34, 1) 0%, rgba(34, 139, 34, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#228b22', endColorstr='#228b22', GradientType=0);
    color: white;
    padding: 14px 20px;
    margin: 8px 0;
    border: none;
    cursor: pointer;
    width: 100%;
    font-weight: 600;
}


/*-------------------------------------------------------------------*/

#error {
    color: #FF0000;
    width: 100%;
    text-align: center;
    font-weight: 600;
}

.CN_form {
    background: rgb(44, 83, 158);
    background: -moz-linear-gradient(top, rgba(44, 83, 158, 1) 0%, rgba(44, 83, 158, 1) 100%);
    background: -webkit-linear-gradient(top, rgba(44, 83, 158, 1) 0%, rgba(44, 83, 158, 1) 100%);
    background: linear-gradient(to bottom, rgba(44, 83, 158, 1) 0%, rgba(44, 83, 158, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#2c539e', endColorstr='#2c539e', GradientType=0);
    color: white;
    padding: 14px 20px;
    margin: 8px 0;
    border: none;
    cursor: pointer;
    width: 100%;
    font-weight: 600;
}

img {
    margin-right: 10px;
}

.btn {
    background: rgb(75, 133, 234);
    background: -moz-linear-gradient(top, rgb(75, 133, 234) 6%, rgb(33, 74, 239) 100%);
    background: -webkit-linear-gradient(top, rgb(75, 133, 234) 6%, rgb(33, 74, 239) 100%);
    background: linear-gradient(to bottom, rgb(75, 133, 234) 6%, rgb(33, 74, 239) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#4b85ea', endColorstr='#214aef', GradientType=0);
    border-radius: 2px;
    padding: 5px 10px;
    color: white;
    border: none;
    cursor: pointer;
    width: auto;
    font-weight: 500;
}

.btn-danger {
    background-color: #dc3545;
    /* Fallback solid color */
    background: -moz-linear-gradient(top, #e04b56 6%, #dc3545 100%);
    background: -webkit-linear-gradient(top, #e04b56 6%, #dc3545 100%);
    background: linear-gradient(to bottom, #e04b56 6%, #dc3545 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#e04b56', endColorstr='#dc3545', GradientType=0);
    border-radius: 2px;
    padding: 5px 10px;
    color: white;
    border: none;
    cursor: pointer;
    width: auto;
    font-weight: 500;
}

.download_button {
    color: white;
}

.download_button:hover {
    color: whitesmoke;
}

@media screen and (min-width:1024px) {
    .desktop {
        display: block;
    }
    .mobil {
        display: none;
    }
    .desktop_rev {
        display: revert;
    }
}

@media screen and (max-width:1024px) {
    .desktop {
        display: none;
    }
    .mobil {
        display: block;
    }
    .desktop_rev {
        display: none;
    }
}

a,
a:hover {
    color: #FFFFFF;
    text-decoration: none;
}

.display-block {
    display: block;
}

.display-none {
    display: none;
}

.table-scrollable-75 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 75vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable-70 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 70vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable-65 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 65vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable-60 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 60vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable-55 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 55vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable-50 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 50vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable-45 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 45vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable-40 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 40vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable-35 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 35vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable-30 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 30vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable-25 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 25vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable-20 tbody {
    display: block;
    /* to enable vertical scrolling */
    max-height: 20vh;
    /* e.g. */
    overflow-y: scroll;
    /* keeps the scrollbar even if it doesn't need it; display purpose */
}

.table-scrollable thead {
    display: table;
    /* to take the same width as tr */
    width: calc(100% - 3px);
    /* - 17px because of the scrollbar width */
}

.table-scrollable tr {
    display: table;
    /* display purpose; th's border */
    width: 100%;
    box-sizing: border-box;
    /* because of the border (Chrome needs this line, but not FF) */
}

.navbar .dropdown-menu {
    position: absolute;
    left: 0;
    top: 100%;
    /* unter dem Button */
    margin-top: 0.25rem;
}


/* Submenu – nach rechts */

.dropdown-submenu {
    position: relative;
}

.dropdown-submenu>.dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -1px;
    display: none;
    position: absolute;
}

@media screen and (min-width:1024px) {
    /* Submenu anzeigen bei Hover */
    .dropdown-submenu:hover>.dropdown-menu {
        display: block;
    }
}

@media screen and (max-width: 1023px) {
    /* Submenü ausblenden */
    .dropdown-submenu .dropdown-menu {
        display: none;
    }
    /* Klasse zum Anzeigen */
    .dropdown-submenu.show .dropdown-menu {
        display: block;
    }
}

.btn_green {
    background: rgb(26, 153, 21);
    /* Dark green background */
    background: -moz-linear-gradient(top, rgb(26, 153, 21) 6%, rgb(6, 104, 2) 100%);
    background: -webkit-linear-gradient(top, rgb(26, 153, 21) 6%, rgb(6, 104, 2) 100%);
    background: linear-gradient(to bottom, rgb(26, 153, 21) 6%, rgb(6, 104, 2) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#006400', endColorstr='#003200', GradientType=0);
    border-radius: 2px;
    padding: 5px 10px;
    color: white;
    border: none;
    cursor: pointer;
    width: auto;
    font-weight: 500;
}

.btn_red {
    background: #a90329;
    background: -moz-linear-gradient(top, #a90329 12%, #8f0222 51%, #6d0019 100%);
    background: -webkit-linear-gradient(top, #a90329 12%, #8f0222 51%, #6d0019 100%);
    background: linear-gradient(to bottom, #a90329 12%, #8f0222 51%, #6d0019 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#a90329', endColorstr='#6d0019', GradientType=0);
    border-radius: 2px;
    padding: 5px 10px;
    color: white;
    border: none;
    cursor: pointer;
    width: auto;
    font-weight: 500;
}

.btn_orange {
	background: rgb(255, 152, 0); /* Hell-Orange */
	background: -moz-linear-gradient(top, rgb(255, 152, 0) 6%, rgb(204, 102, 0) 100%);
	background: -webkit-linear-gradient(top, rgb(255, 152, 0) 6%, rgb(204, 102, 0) 100%);
	background: linear-gradient(to bottom, rgb(255, 152, 0) 6%, rgb(204, 102, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff9800', endColorstr='#cc6600', GradientType=0);
	
	border-radius: 2px;
	padding: 5px 10px;
	color: white;
	border: none;
	cursor: pointer;
	width: auto;
	font-weight: 500;
}

.gestreift {
    position: relative;
    width: 100%;
    height: 100px;
    margin: 20px auto;
    background: repeating-linear-gradient( 45deg, black 0 20px, orange 20px 40px);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: bold;
    font-family: sans-serif;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    text-shadow: 1px 1px 2px black;
    text-transform: uppercase;
}

.style_nav_red{
    background: linear-gradient(to bottom,  #a90329 0%,#8f0222 44%,#6d0019 100%);
    margin-bottom: 10px;
}

#dropzone {
    border: 3px dashed #999;
    padding: 40px;
    text-align: center;
    color: #777;
    border-radius: 10px;
    transition: 0.3s;
}

#dropzone.dragover {
    border-color: #333;
    color: #333;
    background: #f5f5f5;
}

.progress-container {
    margin-top: 20px;
}

.file-progress {
    margin-bottom: 10px;
}

.progressbar {
    width: 100%;
    height: 8px;
    background: #eee;
    border-radius: 4px;
    overflow: hidden;
}

.progress {
    height: 8px;
    /*width: 0;*/
    background: #4caf50;
    transition: width 0.3s;
}

.hr-text {
    line-height: 1em;
    position: relative;
    outline: 0;
    border: 0;
    color: black;
    text-align: center;
    height: 1.5em;
    opacity: .5;  
}
  
.hr-text:before {
    content: '';
    background: linear-gradient(to right, transparent, #818078, transparent);
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    height: 1px;
}
  
.hr-text:after {
    content: attr(data-content);
    position: relative;
    display: inline-block;
    color: black;  
    padding: 0 .5em;
    line-height: 1.5em;
    color: #818078;
    background-color: #fcfcfa;
}

.box-header{
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}