/**
 * (c) jTools Javascript Web Components
 * 
 * Author: Paul Hodel <paul.hodel@gmail.com>
 * Website: https://bossanova.uk/jtools/
 * Description: Create amazing web based applications.
 * 
 * MIT License
 * 
 */
:root {
    --active-color:#007aff;
}

@media only screen and (max-device-width : 800px)
{
    * {
        -webkit-tap-highlight-color: transparent;
        -webkit-touch-callout: none;
    }

    body {
        margin:0px;
        padding:0px;
        width:100%;
        height:100%;
        min-height:100%;
        line-height:1.4;
        font-family:-apple-system,SF UI Text,Helvetica Neue,Helvetica,Arial,sans-serif !important;
        background-color:#fafafa;
    }

    input, select, textarea, div {
        font-family:-apple-system,SF UI Text,Helvetica Neue,Helvetica,Arial,sans-serif !important;
    }
}

/** General **/

.dragging {
    opacity:0.2;
    filter: alpha(opacity=20);
}

.no-padding {
    padding:0px;
}

.jupload {
    background-image: url(data:image/png;base64,[encoded data, 22716 characters]);
    background-repeat: no-repeat;
    background-size: 100px;
    background-position: center;
    background-color: rgb(230, 230, 230, 0.1);
    border: 1px dotted #eee;
    cursor: pointer;
    box-sizing: border-box;
}

.jbackdrop {
    position:fixed;
    top:0px;
    left:0px;
    min-width:100%;
    min-height:100%;
    background-color:rgba(0,0,0,0.5);
    border:0px;
    padding:0px;
    z-index:8000;
    
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

.jremove {
    opacity: 0.2;
    filter: alpha(opacity=20);
}

/** Animations **/
.fade-in {
    animation: fade-in 2s forwards;
    -webkit-animation: fade-in 2s forwards;
}

.fade-out {
    animation: fade-out 1s forwards;
    -webkit-animation: fade-out 1s forwards;
}

.slide-left-in {
    animation: slide-left-in 0.4s forwards;
    -webkit-animation: slide-left-in 0.4s forwards;
}

.slide-left-out {
    animation: slide-left-out 0.4s forwards;
    -webkit-animation: slide-left-out 0.4s forwards;
}

.slide-right-in {
    animation: slide-right-in 0.4s forwards;
    -webkit-animation: slide-right-in 0.4s forwards;
}

.slide-right-out {
    animation: slide-right-out 0.4s forwards;
    -webkit-animation: slide-right-out 0.4s forwards;
}

.slide-top-in {
    animation: slide-top-in 0.4s forwards;
    -webkit-animation: slide-top-in 0.4s forwards;
}

.slide-top-out {
    animation: slide-top-out 0.2s forwards;
    -webkit-animation: slide-top-out 0.2s forwards;
}

.slide-bottom-in {
    animation: slide-bottom-in 0.4s forwards;
    -webkit-animation: slide-bottom-in 0.4s forwards;
}

.slide-bottom-out {
    animation: slide-bottom-out 0.2s forwards;
    -webkit-animation: slide-bottom-out 0.2s forwards;
}

/** Fadein and Fadeout **/
@keyframes fade-in {
    0% { opacity: 0; }
    100% { opacity: 100; }
}

@-webkit-keyframes fade-in {
    0% { opacity: 0; }
    100% { opacity: 100; }
}

@keyframes fade-out {
    0% { opacity: 100; }
    100% { opacity: 0; }
}

@-webkit-keyframes fade-out {
    0% { opacity: 100; }
    100% { opacity: 0; }
}

/** Keyframes Left to Right **/
@keyframes slide-left-in {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(0%); }
}

@-webkit-keyframes slide-left-in {
    0% { transform: translateX(-100%); }
    100% { -webkit-transform: translateX(0%); }
}
    
@keyframes slide-left-out {
    0% { transform: translateX(0%); }
    100% { transform: translateX(-100%); }
}

@-webkit-keyframes slide-left-out {
    0% { -webkit-transform: translateX(0%); }
    100% { -webkit-transform: translateX(-100%); }
}

/** Keyframes Right to Left **/
@keyframes slide-right-in {
    0% { transform: translateX(100%); }
    100% { transform: translateX(0%); }
}

@-webkit-keyframes slide-right-in
{
    0% { transform: translateX(100%); }
    100% { -webkit-transform: translateX(0%); }
}
    
@keyframes slide-right-out {
    0% { transform: translateX(0%); }
    100% { transform: translateX(100%); }
}

@-webkit-keyframes slide-right-out {
    0% { -webkit-transform: translateX(0%); }
    100% { -webkit-transform: translateX(100%); }
}

/** Keyframes Top to Bottom **/
@keyframes slide-top-in {
    0% { transform: translateY(-100%); }
    100% { transform: translateY(0%); }
}

@-webkit-keyframes slide-top-in {
    0% { transform: translateY(-100%); }
    100% { -webkit-transform: translateY(0%); }
}
    
@keyframes slide-top-out {
    0% { transform: translateY(0%); }
    100% { transform: translateY(-100%); }
}

@-webkit-keyframes slide-top-out {
    0% { -webkit-transform: translateY(0%); }
    100% { -webkit-transform: translateY(-100%); }
}

/** Keyframes Bottom to Top **/
@keyframes slide-bottom-in {
    0% { transform: translateY(100%); }
    100% { transform: translateY(0%); }
}

@-webkit-keyframes slide-bottom-in {
    0% { transform: translateY(100%); }
    100% { -webkit-transform: translateY(0%); }
}
    
@keyframes slide-bottom-out {
    0% { transform: translateY(0%); }
    100% { transform: translateY(100%); }
}

@-webkit-keyframes slide-bottom-out {
    0% { -webkit-transform: translateY(0%); }
    100% { -webkit-transform: translateY(100%); }
}

@supports (-webkit-overflow-scrolling: touch) {
    .app .options input:checked:before {
        top:-12px;
    }
}

@-webkit-keyframes spin {
    from {
        -webkit-transform:rotate(0deg);
    }
    to {
        -webkit-transform:rotate(360deg);
    }
}

@keyframes spin {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(360deg);
    }
}

::placeholder
{
    color: #cccccc;
    opacity: 1;
}

:-ms-input-placeholder
{
    color: #cccccc;
}

::-ms-input-placeholder
{
    color: #cccccc;
}

::-webkit-input-placeholder
{
    color: #cccccc;
}


/**
 * Date & Datetime picker v1.0.1
 * Author: paul.hodel@gmail.com
 * https://github.com/paulhodel/jtools
 */
 
.jcalendar {
    position:relative;
    z-index:9000;
    display:none;
    box-sizing:border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-tap-highlight-color: transparent;
    min-width:280px;
}

.jcalendar-focus {
    display:block;
}

.jcalendar-backdrop {
    position:fixed;
    top:0px;
    left:0px;
    z-index:9000;
    min-width:100%;
    min-height:100%;
    background-color:rgba(0,0,0,0.5);
    border:0px;
    padding:0px;
    display:none;
}

.jcalendar-container {
    position:relative;
    box-sizing:border-box;
}

.jcalendar-content {
    position:absolute;
    z-index:9001;
    -webkit-box-shadow: 1px 1px 5px 0px rgba(0,0,0,0.39);
    -moz-box-shadow: 1px 1px 5px 0px rgba(0,0,0,0.39);
    box-shadow: 1px 1px 5px 0px rgba(0,0,0,0.39);
    background-color:#fff;
}

.jcalendar-content > table {
    width:100%;
    background-color:#fff;
    border-top:1px solid #ddd;
}

.jcalendar-content > table > tbody td {
    box-sizing:border-box;
    cursor:pointer;
    padding:9px;
    font-size:0.9em;
}

.jcalendar-content > table > thead {
    cursor:pointer;
}

.jcalendar-header {
    text-align:center;
}

.jcalendar-header span {
    margin-right:4px;
    font-size:1.2em;
    font-weight:bold;
}

.jcalendar-prev {
    cursor:pointer;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M15.41 16.59L10.83 12l4.58-4.59L14 6l-6 6 6 6 1.41-1.41z' fill='%23000' /%3E%3Cpath fill='none' d='M0 0h24v24H0V0z'/%3E%3C/svg%3E");
    background-position:center;
    background-repeat:no-repeat;
}

.jcalendar-next {
    cursor:pointer;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z' fill='%23000' /%3E%3Cpath fill='none' d='M0 0h24v24H0V0z'/%3E%3C/svg%3E");
    background-position:center;
    background-repeat:no-repeat;
}

.jcalendar-weekday {
    font-weight:550;
    background-color:#fcfcfc;
    padding:14px;
}

.jcalendar thead td {
    padding:10px;
    height:40px;
}

.jcalendar tfoot td {
    padding:10px;
}

.jcalendar-months td, .jcalendar-years td {
    height:24px;
} 

.jcalendar-input {
    padding-right:18px;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath d='M20 3h-1V1h-2v2H7V1H5v2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 18H4V8h16v13z'/%3E%3Cpath fill='none' d='M0 0h24v24H0z'/%3E%3C/svg%3E");
    background-position:right;
    background-repeat:no-repeat;
    box-sizing: border-box;
}

.jcalendar-done {
    -webkit-box-shadow: 1px 1px 5px 0px rgba(0,0,0,0.39);
    -moz-box-shadow: 1px 1px 5px 0px rgba(0,0,0,0.39);
    box-shadow: 1px 1px 5px 0px rgba(0,0,0,0.39);
    background-color:#fff;
}

.jcalendar-update {
    border:1px solid #ccc;
    background-color:#fff;
    border-radius:4px;
    padding:5px;
    width:100%;
}

.jcalendar select {
    width:55px;
    display:inline-block;
    border:0px;
    padding:4px;
    text-align:center;
    font-size:1.1em;
    user-select:none;
    margin-right:10px;
}

.jcalendar select:first-child
{
    margin-right:2px;
}

.jcalendar-selected {
    background-color:#eee;
}

.jcalendar-reset, .jcalendar-confirm {
    text-transform:uppercase;
    cursor:pointer;
}

.jcalendar-controls {
    padding:15px;

    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align:middle;

    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-flex-flow: row wrap;
    justify-content: space-between;
    align-items:center;
}

.jcalendar-controls div {
    font-weight:bold;
}

.jcalendar-fullsize  {
    position:fixed;
    width:100%;
    top:0px;
    left:0px;
}

.jcalendar-fullsize .jcalendar-content
{
    position:fixed;
    width:100%;
    left:0px;
    bottom:0px;
}

.jcalendar-fullsize .jcalendar-backdrop {
    display:block;
}


/**
 * Color Picker v1.0.1
 * Author: paul.hodel@gmail.com
 * https://github.com/paulhodel/jtools
 */

.jcolor {
    position:relative;
    display:none;
    outline:none;
}

.jcolor-content {
    position:absolute;
    z-index:9000;
    user-select:none;
    -webkit-font-smoothing: antialiased;
    font-size: .875rem;
    letter-spacing: .2px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: 0 8px 10px 1px rgba(0,0,0,0.14), 0 3px 14px 2px rgba(0,0,0,0.12), 0 5px 5px -3px rgba(0,0,0,0.2);
    box-shadow: 0 8px 10px 1px rgba(0,0,0,0.14), 0 3px 14px 2px rgba(0,0,0,0.12), 0 5px 5px -3px rgba(0,0,0,0.2);
    padding:10px;
    background-color:#fff;
}

.jcolor-focus {
    display:block;
}

.jcolor td {
    border:2px solid #fff;
}

.jcolor-selected {
    border:2px solid #000 !important;
    background-repeat:no-repeat;
    background-size: cover;
    background-position:0 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z' fill='white'/%3E%3C/svg%3E");
}

/**
 * Contextmenu v1.0.1
 * Author: paul.hodel@gmail.com
 * https://github.com/paulhodel/jtools
 */
 
.jcontextmenu {
    position:fixed;
    z-index:10000;
    background:#fff;
    color: #555;
    font-family: sans-serif;
    font-size: 11px;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    -webkit-box-shadow: 2px 2px 2px 0px rgba(143, 144, 145, 1);
    -moz-box-shadow: 2px 2px 2px 0px rgba(143, 144, 145, 1);
    box-shadow: 2px 2px 2px 0px rgba(143, 144, 145, 1);
    border: 1px solid #C6C6C6;
    padding: 0px;
    padding-top:4px;
    padding-bottom:4px;
    margin:0px;
    outline:none;
    display:none;
}

.jcontextmenu.jcontextmenu-focus {
    display:inline-block;
}

.jcontextmenu li {
    box-sizing: border-box;
    display: block;
    padding: 8px 8px 8px 30px;
    width: 250px;
    position: relative;
    cursor: default;
}

.jcontextmenu li a {
    color: #555;
    text-decoration: none;
}

.jcontextmenu li span {
    float: right;
    margin-right:10px;
}

.jcontextmenu .contextmenu-disabled {
    color: #a1a192;
}

.jcontextmenu li:not(.contextmenu-line):hover {
    background: #ebebeb;
}

.jcontextmenu li.contextmenu-line {
    border-top: 1px solid #e9e9e9;
    margin-top:5px;
    padding:2px;
}

.jcontextmenu hr {
    border: 1px solid #e9e9e9;
    border-bottom: 0;
    margin-top:5px;
    margin-bottom:5px;
}

/**
 * Dialog v1.0.1
 * Author: paul.hodel@gmail.com
 * https://github.com/paulhodel/jtools
 */
 
.jdialog
{
    position:fixed;
    left: 0;
    top: 0;
    width: 100%;
    min-height:100%;
    z-index:10000;

    background-color:rgba(0,0,0,0.5);
    -webkit-transition-duration: .1s;
    transition-duration: .1s;
    display: flex;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -webkit-box-align: center;

    align-items: center;
}

.jdialog .jdialog-container
{
    width:100%;
    max-width:280px;
    box-sizing: border-box;
    margin:0 auto;
    vertical-align:middle;
    background-color:#fff;
    border-radius:10px;

    opacity: 0;
    transition: opacity .2s;
    -webkit-transition: opacity .2s;
}

.jdialog .jdialog-header
{
    padding:10px;
    text-align:center;
}

.jdialog .jdialog-header .jdialog-title
{
    font-size:1em;
    font-weight:bold;
    padding:8px;
}

.jdialog .jdialog-header .jdialog-message
{
    padding:4px;
}

.jdialog .jdialog-footer
{
    border-top:1px solid #ccc;
    display: flex;
    flex-wrap:row wrap;
    align-content: stretch;
    align-items:center;
    text-align:center;
}

.jdialog .jdialog-footer > div
{
    padding:4px;
    border-left:1px solid #ccc;
    text-align:center;
    width:100%;
}
.jdialog .jdialog-footer > div:first-child
{
    border-left:0px;
}

.jdialog .jdialog-footer input
{
    border:0px;
    margin:0px;
    background-color:transparent;
    color:var(--active-color);
    width:100%;
    outline:none;
}

/**
 * (c) 2013 jDropdown
 * http://www.github.com/paulhodel/jdropdown
 *
 * @author: Paul Hodel <paul.hodel@gmail.com>
 * @description: Custom dropdowns
 */

.jdropdown
{
    cursor:pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    box-sizing: border-box;
    background:#fff;
    -webkit-tap-highlight-color: transparent;
}

.jdropdown-header::placeholder
{
    color:#000;
}

.jdropdown-backdrop
{
    position:fixed;
    top:0px;
    left:0px;
    min-width:100%;
    min-height:100%;
    background-color:rgba(0,0,0,0.5);
    border:0px;
    padding:0px;
    z-index:8000;
    display:none;
}

.jdropdown-focus
{
    position:relative;
}

.jdropdown-focus .jdropdown-container
{
    display:block;
}

.jdropdown-focus .jdropdown-header
{
    outline:auto 5px -webkit-focus-ring-color;
}

.jdropdown-container-header
{
    padding:0px;
    margin:0px;
}

.jdropdown-header
{
    width:100%;
    appearance: none;
    background-repeat: no-repeat;
    background-position:top 50% right 5px;
    background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='none' d='M0 0h24v24H0V0z'/%3E%3Cpath d='M7 10l5 5 5-5H7z' fill='gray'/%3E%3C/svg%3E");
    text-overflow: ellipsis;
    cursor:pointer;
    box-sizing: border-box;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.jdropdown-container
{
    display:none;
}

.jdropdown-close
{
    display:none;
    font-size:1em;
    color:#1f93ff;
    text-transform:uppercase;
    text-align:right;
    padding:10px;
    padding-right:15px;
}

.jdropdown-content
{
    min-width:inherit;
    margin:0px;
    box-sizing:border-box;
}

.jdropdown-content:empty
{
}

.jdropdown-item
{
    white-space: nowrap;
    text-align:left;
    text-overflow: ellipsis;
    overflow-x:hidden;
    color:#000;
    display:flex;
    align-items:center;
}

.jdropdown-image
{
    margin-right:10px;
    width:40px;
    height:40px;
    border-radius:20px;
}

.jdropdown-image-small
{
    width:24px;
    height:24px;
}

.jdropdown-title
{
    font-size:0.7em;
    color:#aaa;
    text-overflow: ellipsis;
    overflow-x:hidden;
    display:block;
}

/** Default visual **/

.jdropdown-default .jdropdown-header
{
    border:1px solid #ccc;
    padding:5px;
    padding-left:10px;
    padding-right:16px;
}

.jdropdown-default .jdropdown-container
{
    position:absolute;
    z-index:9001;
    background-color:#fff;
}

.jdropdown-default .jdropdown-content
{
    min-width:inherit;
    border:1px solid #8fb1e3;
    margin:0px;
    background-color:#fff;
    box-sizing:border-box;
    min-height:10px;
    max-height:215px;
    overflow-y:auto;
}

.jdropdown-default .jdropdown-item
{
    padding:4px;
    padding-left:8px;
    padding-right:40px;
}

.jdropdown-default .jdropdown-item:hover
{
    background-color:#1f93ff;
    color:#fff;
}

.jdropdown-default .jdropdown-cursor
{
    background-color:#1f93ff;
    color:#fff;
}

.jdropdown-default .jdropdown-selected
{
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPjxwYXRoIGQ9Ik05IDE2LjE3TDQuODMgMTJsLTEuNDIgMS40MUw5IDE5IDIxIDdsLTEuNDEtMS40MXoiIGZpbGw9IndoaXRlIiAvPjwvc3ZnPgo=');
    background-repeat:no-repeat;
    background-position:top 50% right 5px;
    background-color:#1f93ff;
    color:#fff;
}

.jdropdown-default .jdropdown-group
{
    margin-top:5px;
}

.jdropdown-default .jdropdown-group .jdropdown-item
{
    padding-left:16px;
}

.jdropdown-default .jdropdown-group-name
{
    padding-left:8px;
    font-weight:bold;
}


/** Default render for mobile **/

.jdropdown-picker
{
    width:100% !important;
    border-top:1px solid #e6e6e8;
    border-bottom:1px solid #e6e6e8;
    padding-top:10px;
    padding-bottom:10px;
    box-sizing: border-box;
}

.jdropdown-picker.jdropdown-focus .jdropdown-backdrop
{
    display:block;
}

.jdropdown-picker .jdropdown-header
{
    border:0px;
    padding:0px;
    margin:0px;
    outline:none;
    text-transform:uppercase;
    font-size:1em;
    padding-right:24px;
    background-position:top 50% right 8px;
}

.jdropdown-picker .jdropdown-container
{
    position:fixed;
    bottom:0px;
    left:0px;
    border-bottom:1px solid #e6e6e8;
    width:100%;
    background-color:#fff;
    box-sizing: border-box;
    z-index:9000;
}

.jdropdown-picker .jdropdown-close
{
    -webkit-box-shadow: 0px -1px 5px 0px rgba(0,0,0,0.39);
    -moz-box-shadow: 0px -1px 5px 0px rgba(0,0,0,0.39);
    box-shadow: 0px -1px 5px 0px rgba(0,0,0,0.39);
    background-color:#fff;
    display:block;
}

.jdropdown-picker .jdropdown-content
{
    overflow-y:scroll;
    height:280px;
    background-color:#fafafa;
    border-top:1px solid #e6e6e8;
}

.jdropdown-picker .jdropdown-group-name
{
    font-size: 1em;
    text-transform: uppercase;
    padding-top:10px;
    padding-bottom:10px;
    display: block;
    border-bottom: 1px solid #e6e6e8;
    padding-left:20px;
    padding-right:20px;
    text-align:center;
    font-weight:bold;
}

.jdropdown-picker .jdropdown-item
{
    font-size: 1em;
    text-transform: uppercase;
    padding-top:10px;
    padding-bottom:10px;
    display: block;
    border-bottom: 1px solid #e6e6e8;
    padding-left:20px;
    padding-right:20px;
}

.jdropdown-picker .jdropdown-selected
{
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPjxwYXRoIGQ9Ik05IDE2LjE3TDQuODMgMTJsLTEuNDIgMS40MUw5IDE5IDIxIDdsLTEuNDEtMS40MXoiIGZpbGw9IndoaXRlIiAvPjwvc3ZnPgo=');
    background-repeat:no-repeat;
    background-position:top 50% right 15px;
    background-color:#1f93ff;
    color:#fff;
}

.jdropdown-picker .jdropdown-cursor
{
    background-color:#1f93ff;
    color:#fff;
}

/** Default render for mobile searchbar **/

.jdropdown-searchbar
{
    width:100% !important;
    border-top:1px solid #e6e6e8;
    border-bottom:1px solid #e6e6e8;
    padding-top:10px;
    padding-bottom:10px;
}

.jdropdown-searchbar.jdropdown-focus
{
    position:absolute;
    top:0px;
    left:0px;
    min-height:100%;
    background-color:#fafafa;
    padding:0px;
    padding-top:40px;
    z-index:9001;
}

.jdropdown-searchbar.jdropdown-focus .jdropdown-container-header
{
    padding:10px;
    background-color:#fff;
    box-shadow: 0 1px 2px rgba(0,0,0,.1);
    position:fixed;
    top:0px;
    left:0px;
    width:100%;
}

.jdropdown-searchbar.jdropdown-focus .jdropdown-header
{
    background-repeat: no-repeat;
    background-position-x: 0%;
    background-position-y: 40%;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHoiIGZpbGw9IiNlNmU2ZTgiLz48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PC9zdmc+);
    padding-left:30px !important;
}

.jdropdown-searchbar.jdropdown-focus .jdropdown-close
{
    display:block;
}

.jdropdown-searchbar .jdropdown-header
{
    border:0px;
    padding:0px;
    margin:0px;
    outline:none;
    text-transform:uppercase;
    font-size:1em;
    padding-right:30px;
}

.jdropdown-searchbar .jdropdown-close
{
    position:fixed;
    top:0px;
    right:0px;
}

.jdropdown-searchbar .jdropdown-content
{
    margin-top:10px;
}

.jdropdown-searchbar .jdropdown-group
{
    margin-top:10px;
    margin-bottom:15px;
    background-color:#fff;
}

.jdropdown-searchbar .jdropdown-group-name
{
    border-top: 1px solid #e6e6e8;
    border-bottom: 1px solid #e6e6e8;
    padding:10px;
    padding-left:12px;
    font-weight:bold;
}

.jdropdown-searchbar .jdropdown-group-arrow
{
    float:right;
    width:24px;
    height:24px;
    background-repeat:no-repeat;
}

.jdropdown-searchbar .jdropdown-group-arrow-down
{
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNy40MSA4LjU5TDEyIDEzLjE3bDQuNTktNC41OEwxOCAxMGwtNiA2LTYtNiAxLjQxLTEuNDF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgwVjB6Ii8+PC9zdmc+);
}

.jdropdown-searchbar .jdropdown-group-arrow-up
{
    background-image: url(data:image/svg+xml;base64,CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZD0iTTcuNDEgMTUuNDFMMTIgMTAuODNsNC41OSA0LjU4TDE4IDE0bC02LTYtNiA2eiIvPjxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48L3N2Zz4=);
}

.jdropdown-searchbar .jdropdown-item
{
    padding-top:10px;
    padding-bottom:10px;
    border-bottom: 1px solid #e6e6e8;
    padding-left:15px;
    padding-right:40px;
    background-color:#fff;
    font-size:0.9em;
}

.jdropdown-searchbar .jdropdown-description {
    text-overflow: ellipsis;
    overflow: hidden;
    max-width:calc(100%-20px);
}

.jdropdown-searchbar .jdropdown-content > .jdropdown-item:first-child
{
    border-top: 1px solid #e6e6e8;
}

.jdropdown-searchbar .jdropdown-selected
{
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PHBhdGggZD0iTTkgMTYuMTdMNC44MyAxMmwtMS40MiAxLjQxTDkgMTkgMjEgN2wtMS40MS0xLjQxeiIgZmlsbD0iIzAwN2FmZiIvPjwvc3ZnPg==');
    background-repeat:no-repeat;
    background-position:top 50% right 15px;
}

/** List render **/

.jdropdown-list
{
}

.jdropdown-list .jdropdown-container
{
    display:block;
}

.jdropdown-list .jdropdown-header
{
    display:none;
}

.jdropdown-list .jdropdown-group
{
    background-color:#fff;
}

.jdropdown-list .jdropdown-group-name
{
    border-bottom: 1px solid #e6e6e8;
    padding-top:10px;
    padding-bottom:10px;
    font-weight:bold;
}

.jdropdown-list .jdropdown-item
{
    padding-top:10px;
    padding-bottom:10px;
    border-bottom: 1px solid #e6e6e8;
    padding-left:10px;
    padding-right:40px;
    background-color:#fff;
}

.jdropdown-list .jdropdown-selected
{
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PHBhdGggZD0iTTkgMTYuMTdMNC44MyAxMmwtMS40MiAxLjQxTDkgMTkgMjEgN2wtMS40MS0xLjQxeiIgZmlsbD0iIzAwN2FmZiIvPjwvc3ZnPg==');
    background-repeat:no-repeat;
    background-position:top 50% right 10px;
}

@media only screen and (max-device-width : 800px)
{
    .jdropdown-list
    {
        width:100% !important;
        border:0px;
        padding:0px;
    }

    .jdropdown-list .jdropdown-container
    {
        min-width:100%;
    }
}

/**
 * (c) jLoading
 * https://github.com/paulhodel/jtools
 *
 * @author: Paul Hodel <paul.hodel@gmail.com>
 * @description: Page loading spin
 */

.jloading {
    position:fixed;
    z-index:10001;
    width:100%;
    left:0;
    right:0;
    top:0;
    bottom:0;
    background-color: rgba(0,0,0,0.7);
}

.jloading::after {
    content:'';
    display:block;
    margin:0 auto;
    margin-top:50vh;
    width:40px;
    height:40px;
    border-style:solid;
    border-color:white;
    border-top-color:transparent;
    border-width:4px;
    border-radius:50%;
    -webkit-animation: spin .8s linear infinite;
    animation: spin .8s linear infinite;
}

.jloading.spin {
    background-color:transparent;
}

.jloading.spin::after {
    margin:0 auto;
    margin-top:80px;
    border-color:#aaa;
    border-top-color:transparent;
}

/**
 * (c) jTools Modal page
 * https://github.com/paulhodel/jtools
 *
 * @author: Paul Hodel <paul.hodel@gmail.com>
 * @description: Modal page
 */

.jmodal {
    position:fixed;
    top:50%;
    left:50%;
    width:60%;
    height:60%;
    -webkit-box-shadow: 0 2px 10px rgba(0,0,0,.2);
    -moz-box-shadow: 0 2px 10px rgba(0,0,0,.2);
    border:1px solid #ccc;
    background-color:#fff;
    transform: translate(-50%, -50%);
    box-sizing: border-box;
    padding-top:50px;
    z-index:9002;
    display:none;
    border-radius:5px;
}

.jmodal:before {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    content:attr(title);
    padding:15px;
    box-sizing: border-box;
    background: #e3e3e3;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#e3e3e3');
    background: -webkit-gradient(linear, left top, left bottom, from(#ededed), to(#e3e3e3));
    background: -moz-linear-gradient(top,  #ededed,  #e3e3e3);
    font-size:1.2em;
}

.jmodal > div {
    padding:20px;
    overflow-y:auto;
    max-height:100%;
}
.jmodal.no-title {
    padding-top:0px;
}

.jmodal.no-title:before {
    display:none;
}

.jmodal:after {
    content:'';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E");
    position:absolute;
    top:0;
    right:0;
    margin:14px;
    font-size:24px;
    width:24px;
    height:24px;
    cursor:pointer;
    text-shadow: 0px 0px 5px #fff;
}

.jrating {
    display:flex;
}
.jrating > div {
    width:24px;
    height:24px;
    line-height:24px;
    background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M22 9.24l-7.19-.62L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21 12 17.27 18.18 21l-1.63-7.03L22 9.24zM12 15.4l-3.76 2.27 1-4.28-3.32-2.88 4.38-.38L12 6.1l1.71 4.04 4.38.38-3.32 2.88 1 4.28L12 15.4z' fill='gray'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E");
}

.jrating .jrating-over {
    background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='gray'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E");
}

.jrating .jrating-selected {
    background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='red'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E");
}


/**
 * (c) Image slider
 * https://github.com/paulhodel/jtools
 *
 * @author: Paul Hodel <paul.hodel@gmail.com>
 * @description: Image Slider
 */

.jslider {
    margin-top:10px;
    margin-bottom:10px;
}

.jslider-container img {
    width:60px;
    margin-right:5px;
    margin-bottom:5px;
}

.jslider-attach {
    cursor:pointer;
}

.jslider-left::before {
    content:'arrow_back_ios';
    color:#fff;
    position:absolute;
    left:15px;
    font-family:'Material Icons';
    font-size:30px;
    text-shadow: 0px 0px 0px #000;
}

.jslider-right::after {
    content:'arrow_forward_ios';
    color:#fff;
    position:absolute;
    right:10px;
    font-family:'Material Icons';
    font-size:30px;
    text-shadow: 0px 0px 0px #000;
    text-align:center;
}

.jslider-close {
    color:#fff;
    position:fixed;
    top:10px;
    right:15px;
    font-family:'Material Icons';
    font-size:30px;
    text-shadow: 0px 0px 5px #000;
    text-align:center;
    display:none;
    cursor:pointer;
    z-index:3000;
}

.jslider-preview {
    position:fixed;
    left:0;
    top:0;
    width: 100%;
    min-height:100%;
    z-index:2000;
    margin:0px;
    box-sizing:border-box;

    background-color:rgba(0,0,0,0.9);
    -webkit-transition-duration: .4s;
    transition-duration: .4s;
    display: flex;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -webkit-box-align: center;

    align-items: center;
}

.jslider-preview img {
    min-width:80%;
    max-width:100%;
    height:auto;
    box-sizing: border-box;
    margin:0 auto;
    vertical-align:middle;
    display:none;
}


.jtabs {
    position:relative;
}
.jtabs > .jtabs-headers {
    display:flex;
    padding:6px;
}

.jtabs > .jtabs-headers > div {
    padding:10px;
    padding-left:20px;
    padding-right:20px;
    margin-right:5px;
    margin-bottom:5px;
    background-color:#eee;
    cursor:pointer;
}

.jtabs > .jtabs-headers > div.jtabs-selected {
    background-color:#ddd;
}

.jtabs > .jtabs-content > div {
    display:none;
    padding:10px;
}

.jtabs > .jtabs-content > div.jtabs-selected {
    display:block;
}

